Remove the rcvstoreproc/rcvpackproc vars.
[mmh] / uip / slocal.c
index eecd760..f03d487 100644 (file)
@@ -1096,7 +1096,7 @@ usr_folder(int fd, char *string)
        vec[1] = folder;
        vec[2] = NULL;
 
-       return usr_pipe(fd, "rcvstore", rcvstoreproc, vec, 1);
+       return usr_pipe(fd, "rcvstore", "rcvstore", vec, 1);
 }
 
 /*
@@ -1108,6 +1108,7 @@ usr_pipe(int fd, char *cmd, char *pgm, char **vec, int suppress)
        pid_t child_id;
        int bytes, seconds, status;
        struct stat st;
+       char *path;
 
        if (verbose && !suppress) {
                verbose_printf("delivering to pipe \"%s\"", cmd);
@@ -1144,10 +1145,12 @@ usr_pipe(int fd, char *cmd, char *pgm, char **vec, int suppress)
                /* put in own process group */
                setpgid((pid_t) 0, getpid());
 
+               path = getenv("PATH");
                *environ = NULL;
                m_putenv("USER", pw->pw_name);
                m_putenv("HOME", pw->pw_dir);
                m_putenv("SHELL", pw->pw_shell);
+               m_putenv("PATH", path);
 
                execvp(pgm, vec);
                _exit(-1);
@@ -1258,7 +1261,7 @@ copy_message(int qd, char *tmpfil, int fold)
        FILE *qfp, *ffp;
        char *tfile = NULL;
 
-       tfile = m_mktemp2(NULL, invo_name, &fd1, NULL);
+       tfile = m_mktemp2("/tmp/", invo_name, &fd1, NULL);
        if (tfile == NULL) return -1;
        fchmod(fd1, 0600);
        strncpy(tmpfil, tfile, BUFSIZ);