X-Git-Url: http://git.marmaro.de/?a=blobdiff_plain;f=uip%2Fwhatnowsbr.c;h=121a79baa43b0333b493ecb82179ca0a7ecc0206;hb=75e27e3157b8023906ac68ea43b47555ddf5cd51;hp=a5dbb2b008e0db8cdd0d41932c5974843b88c8d6;hpb=374ece2e88368afd6e0a29c4ee4b75ffa9e28b39;p=mmh diff --git a/uip/whatnowsbr.c b/uip/whatnowsbr.c index a5dbb2b..121a79b 100644 --- a/uip/whatnowsbr.c +++ b/uip/whatnowsbr.c @@ -605,6 +605,11 @@ system_in_dir(const char *dir, const char *cmd) { char olddir[BUFSIZ]; int r; + + /* ensure that $SHELL exists, as the cmd was written relying on + a non-blank $SHELL... */ + setenv("SHELL","/bin/sh",0); /* don't overwrite */ + if (getcwd(olddir, sizeof(olddir)) == 0) adios("getcwd", "could not get working directory"); if (chdir(dir) != 0) @@ -621,6 +626,11 @@ popen_in_dir(const char *dir, const char *cmd, const char *type) { char olddir[BUFSIZ]; FILE *f; + + /* ensure that $SHELL exists, as the cmd was written relying on + a non-blank $SHELL... */ + setenv("SHELL","/bin/sh",0); /* don't overwrite */ + if (getcwd(olddir, sizeof(olddir)) == 0) adios("getcwd", "could not get working directory"); if (chdir(dir) != 0) @@ -1075,6 +1085,8 @@ static struct swit sendswitches[] = { { "notls", TLSminc(-5) }, #define MTSSW 47 { "mts smtp|sendmail/smtp|sendmail/pipe", 2 }, +#define MESSAGEIDSW 48 + { "messageid localname|random", 2 }, { NULL, 0 } }; @@ -1252,6 +1264,7 @@ sendit (char *sp, char **arg, char *file, int pushed) case USERSW: case PORTSW: case MTSSW: + case MESSAGEIDSW: vec[vecp++] = --cp; if (!(cp = *argp++) || *cp == '-') { advise (NULL, "missing argument to %s", argp[-2]);