X-Git-Url: http://git.marmaro.de/?a=blobdiff_plain;f=uip%2Fwhatnowsbr.c;h=d23d141d88f967a722a06284023ab68558127268;hb=a66c30d557c09799db7cd166ba5fa2a97dbafbb3;hp=85c50b3f56365122543a4090e2e44f35b0050dd9;hpb=4548981fb45fbc917cc2c26b7c96b31cfa14bc9b;p=mmh diff --git a/uip/whatnowsbr.c b/uip/whatnowsbr.c index 85c50b3..d23d141 100644 --- a/uip/whatnowsbr.c +++ b/uip/whatnowsbr.c @@ -63,6 +63,8 @@ static struct swit whatnowswitches[] = { { "help", 0 }, #define ATTACHSW 8 { "attach header-field-name", 0 }, +#define NOATTACHSW 9 + { "noattach", 0 }, { NULL, 0 } }; @@ -138,7 +140,7 @@ WhatNow (int argc, char **argv) char buf[BUFSIZ], prompt[BUFSIZ]; char **argp, **arguments; struct stat st; - char *attach = (char *)0; /* attachment header field name */ + char *attach = NMH_ATTACH_HEADER;/* attachment header field name */ char cwd[MAXPATHLEN + 1]; /* current working directory */ char file[MAXPATHLEN + 1]; /* file name buffer */ char shell[MAXPATHLEN + 1]; /* shell response buffer */ @@ -213,11 +215,13 @@ WhatNow (int argc, char **argv) continue; case ATTACHSW: - if (attach != (char *)0) - adios(NULL, "only one attachment header field name at a time!"); if (!(attach = *argp++) || *attach == '-') adios (NULL, "missing argument to %s", argp[-2]); continue; + + case NOATTACHSW: + attach = NULL; + continue; } } if (drft) @@ -696,7 +700,7 @@ editfile (char **ed, char **arg, char *file, int use, struct msgs *mp, context_save (); /* save the context file */ fflush (stdout); - switch (pid = m_vfork()) { + switch (pid = vfork()) { case NOTOK: advise ("fork", "unable to"); status = NOTOK; @@ -846,7 +850,7 @@ sendfile (char **arg, char *file, int pushsw) context_save (); /* save the context file */ fflush (stdout); - for (i = 0; (child_id = m_vfork()) == NOTOK && i < 5; i++) + for (i = 0; (child_id = vfork()) == NOTOK && i < 5; i++) sleep (5); switch (child_id) { case NOTOK: @@ -1054,18 +1058,26 @@ static struct swit sendswitches[] = { { "nodraftfolder", -3 }, #define SASLSW 36 { "sasl", SASLminc(-4) }, -#define SASLMECHSW 37 +#define NOSASLSW 37 + { "nosasl", SASLminc(-6) }, +#define SASLMXSSFSW 38 + { "saslmaxssf", SASLminc(-10) }, +#define SASLMECHSW 39 { "saslmech", SASLminc(-5) }, -#define USERSW 38 +#define USERSW 40 { "user", SASLminc(-4) }, -#define SNDATTACHSW 39 +#define SNDATTACHSW 41 { "attach file", 6 }, -#define SNDATTACHFORMAT 40 +#define SNDNOATTACHSW 42 + { "noattach", 0 }, +#define SNDATTACHFORMAT 43 { "attachformat", 7 }, -#define PORTSW 41 +#define PORTSW 44 { "port server-port-name/number", 4 }, -#define TLSSW 42 +#define TLSSW 45 { "tls", TLSminc(-3) }, +#define NTLSSW 46 + { "notls", TLSminc(-5) }, { NULL, 0 } }; @@ -1090,8 +1102,8 @@ sendit (char *sp, char **arg, char *file, int pushed) char *cp, buf[BUFSIZ], **argp; char **arguments, *vec[MAXARGS]; struct stat st; - char *attach = (char *)0; /* attachment header field name */ - int attachformat = 0; /* mhbuild format specifier for + char *attach = NMH_ATTACH_HEADER;/* attachment header field name */ + int attachformat = 1; /* mhbuild format specifier for attachments */ #ifndef lint @@ -1227,7 +1239,9 @@ sendit (char *sp, char **arg, char *file, int pushed) case SOMLSW: case SNOOPSW: case SASLSW: + case NOSASLSW: case TLSSW: + case NTLSSW: vec[vecp++] = --cp; continue; @@ -1236,6 +1250,7 @@ sendit (char *sp, char **arg, char *file, int pushed) case WIDTHSW: case CLIESW: case SERVSW: + case SASLMXSSFSW: case SASLMECHSW: case USERSW: case PORTSW: @@ -1262,6 +1277,9 @@ sendit (char *sp, char **arg, char *file, int pushed) return; } continue; + case SNDNOATTACHSW: + attach = NULL; + continue; case SNDATTACHFORMAT: if (! *argp || **argp == '-') @@ -1349,7 +1367,7 @@ whomfile (char **arg, char *file) context_save (); /* save the context file */ fflush (stdout); - switch (pid = m_vfork()) { + switch (pid = vfork()) { case NOTOK: advise ("fork", "unable to"); return 1;