projects
/
mmh
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
whatnow: call external anno(1) instead of internal annotate().
[mmh]
/
uip
/
slocal.c
diff --git
a/uip/slocal.c
b/uip/slocal.c
index
d97af90
..
f03d487
100644
(file)
--- a/
uip/slocal.c
+++ b/
uip/slocal.c
@@
-86,10
+86,6
@@
static struct swit switches[] = {
};
};
-/* global maildelivery file */
-char *maildelivery = NMHETCDIR"/maildelivery";
-
-
static int globbed = 0; /* have we built "vars" table yet? */
static int parsed = 0; /* have we built header field table yet */
static int utmped = 0; /* have we scanned umtp(x) file yet */
static int globbed = 0; /* have we built "vars" table yet? */
static int parsed = 0; /* have we built header field table yet */
static int utmped = 0; /* have we scanned umtp(x) file yet */
@@
-437,12
+433,15
@@
main(int argc, char **argv)
static int
localmail(int fd, char *mdlvr)
{
static int
localmail(int fd, char *mdlvr)
{
+ char buf[BUFSIZ];
+
/* delivery according to personal Maildelivery file */
if (usr_delivery(fd, mdlvr ? mdlvr : ".maildelivery", 0) != -1) {
return 0;
}
/* delivery according to global Maildelivery file */
/* delivery according to personal Maildelivery file */
if (usr_delivery(fd, mdlvr ? mdlvr : ".maildelivery", 0) != -1) {
return 0;
}
/* delivery according to global Maildelivery file */
- if (usr_delivery(fd, maildelivery, 1) != -1) {
+ snprintf(buf, sizeof buf, "%s/%s", mhetcdir, "maildelivery");
+ if (usr_delivery(fd, buf, 1) != -1) {
return 0;
}
if (verbose) {
return 0;
}
if (verbose) {
@@
-1097,7
+1096,7
@@
usr_folder(int fd, char *string)
vec[1] = folder;
vec[2] = NULL;
vec[1] = folder;
vec[2] = NULL;
- return usr_pipe(fd, "rcvstore", rcvstoreproc, vec, 1);
+ return usr_pipe(fd, "rcvstore", "rcvstore", vec, 1);
}
/*
}
/*
@@
-1109,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;
pid_t child_id;
int bytes, seconds, status;
struct stat st;
+ char *path;
if (verbose && !suppress) {
verbose_printf("delivering to pipe \"%s\"", cmd);
if (verbose && !suppress) {
verbose_printf("delivering to pipe \"%s\"", cmd);
@@
-1145,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());
/* 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);
*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);
execvp(pgm, vec);
_exit(-1);
@@
-1259,7
+1261,7
@@
copy_message(int qd, char *tmpfil, int fold)
FILE *qfp, *ffp;
char *tfile = NULL;
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);
if (tfile == NULL) return -1;
fchmod(fd1, 0600);
strncpy(tmpfil, tfile, BUFSIZ);