]> diplodocus.org Git - nmh/blobdiff - uip/whatnowsbr.c
Removed temporary probes added in commit
[nmh] / uip / whatnowsbr.c
index eb6106a7fac75efba759490858453bcfaed98f12..13c7b0bb1f77687004e5d0838ef973053e6cd2e7 100644 (file)
@@ -40,7 +40,6 @@
 
 #include <h/mh.h>
 #include <fcntl.h>
-#include <signal.h>
 #include <h/mime.h>
 #include <h/utils.h>
 
@@ -417,7 +416,7 @@ WhatNow (int argc, char **argv)
             *  Build a command line that causes the user's shell to list the file name
             *  arguments.  This handles and wildcard expansion, tilde expansion, etc.
             */
-           writelscmd(buf, sizeof(buf), "-d", argp);
+           writelscmd(buf, sizeof(buf), "-d --", argp);
 
            /*
             *  Read back the response from the shell, which contains a number of lines
@@ -506,7 +505,7 @@ WhatNow (int argc, char **argv)
             * We feed all the file names to the shell at once, otherwise you can't
             * provide a file name with a space in it.
             */
-           writelscmd(buf, sizeof(buf), "-d", argp);
+           writelscmd(buf, sizeof(buf), "-d --", argp);
            if ((f = popen_in_dir(cwd, buf, "r")) != (FILE *)0) {
                while (fgets(shell, sizeof (shell), f) != (char *)0) {
                    *(strchr(shell, '\n')) = '\0';
@@ -580,7 +579,7 @@ writesomecmd(char *buf, int bufsz, char *cmd, char *trailcmd, char **argp)
 static void
 writelscmd(char *buf, int bufsz, char *lsoptions, char **argp)
 {
-  char *lscmd = concat ("ls ", lsoptions, " --", NULL);
+  char *lscmd = concat ("ls ", lsoptions, NULL);
   writesomecmd(buf, bufsz, lscmd, "", argp);
   free (lscmd);
 }
@@ -1122,13 +1121,19 @@ sendit (char *sp, char **arg, char *file, int pushed)
     vec[vecp++] = getcpy (m_maildir (""));
 
     if ((cp = context_find ("fileproc"))) {
-      vec[vecp++] = "-fileproc";
-      vec[vecp++] = cp;
+       vec[vecp++] = "-fileproc";
+       vec[vecp++] = cp;
     }
 
     if ((cp = context_find ("mhlproc"))) {
-      vec[vecp++] = "-mhlproc";
-      vec[vecp++] = cp;
+       vec[vecp++] = "-mhlproc";
+       vec[vecp++] = cp;
+    }
+
+    if ((cp = context_find ("credentials"))) {
+       /* post doesn't read context so need to pass credentials. */
+       vec[vecp++] = "-credentials";
+       vec[vecp++] = cp;
     }
 
     while ((cp = *argp++)) {