X-Git-Url: https://diplodocus.org/git/nmh/blobdiff_plain/23f2b007ecac94848616420b27f0819ea559507e..86c5ebc87:/uip/slocal.c?ds=sidebyside diff --git a/uip/slocal.c b/uip/slocal.c index 927e8583..41eda311 100644 --- a/uip/slocal.c +++ b/uip/slocal.c @@ -190,7 +190,7 @@ main (int argc, char **argv) if (nmh_init(argv[0], 0 /* use context_foil() */)) { return 1; } - mts_init (invo_name); + mts_init (); arguments = getarguments (invo_name, argc, argv, 0); argp = arguments; @@ -423,7 +423,7 @@ usr_delivery (int fd, char *delivery, int su) int i, accept, status=1, won, vecp, next; char *field, *pattern, *action, *result, *string; char buffer[BUFSIZ], tmpbuf[BUFSIZ]; - char *cp, *vec[NVEC]; + char *vec[NVEC]; struct stat st; struct pair *p; FILE *fp; @@ -452,9 +452,7 @@ usr_delivery (int fd, char *delivery, int su) if (*buffer == '#' || *buffer == '\n') continue; - /* zap trailing newline */ - if ((cp = strchr(buffer, '\n'))) - *cp = 0; + TrimSuffixC(buffer, '\n'); /* split buffer into fields */ vecp = split (buffer, vec); @@ -763,7 +761,7 @@ parse (int fd) } } if (p->p_name == NULL && i < NVEC) { - p->p_name = getcpy (name); + p->p_name = mh_xstrdup(name); p->p_value = lp; p->p_flags = P_NIL; p++, i++; @@ -874,7 +872,7 @@ glob (int fd) if ((p = lookup (vars, "size"))) { snprintf (buffer, sizeof(buffer), "%d", fstat (fd, &st) != -1 ? (int) st.st_size : 0); - p->p_value = getcpy (buffer); + p->p_value = mh_xstrdup(buffer); } if ((p = lookup (vars, "info"))) p->p_value = getcpy (info); @@ -1127,16 +1125,15 @@ usr_pipe (int fd_arg, char *cmd, char *pgm, char **vec, int suppress) pidstatus (status, stdout, ", failed"); } return (status == 0 ? 0 : -1); - } else { - /* - * Ruthlessly kill the child and anything - * else in its process group. - */ - killpg(child_id, SIGKILL); - if (verbose) - verbose_printf (", timed-out; terminated\n"); - return -1; } + /* + * Ruthlessly kill the child and anything + * else in its process group. + */ + killpg(child_id, SIGKILL); + if (verbose) + verbose_printf (", timed-out; terminated\n"); + return -1; } } @@ -1163,11 +1160,11 @@ get_sender (char *envelope, char **sender) char buffer[BUFSIZ]; if (envelope == NULL) { - *sender = getcpy (""); + *sender = mh_xstrdup(""); return; } - i = strlen ("From "); + i = LEN("From "); strncpy (buffer, envelope + i, sizeof(buffer)); if ((cp = strchr(buffer, '\n'))) { *cp = 0; @@ -1184,7 +1181,7 @@ get_sender (char *envelope, char **sender) *cp = 0; else break; - *sender = getcpy (buffer); + *sender = mh_xstrdup(buffer); } @@ -1253,13 +1250,12 @@ you_lose: * and massage the headers. Save * a copy of the "From " line for later. */ - i = strlen ("From "); while (fgets (buffer, sizeof(buffer), qfp)) { if (first) { first = 0; - if (!strncmp (buffer, "From ", i)) { + if (HasPrefix(buffer, "From ")) { /* get copy of envelope information ("From " line) */ - envelope = getcpy (buffer); + envelope = mh_xstrdup(buffer); /* Put the delivery date in message */ fputs (ddate, ffp); @@ -1328,7 +1324,7 @@ trim (char *cp) *sp = ' '; /* now return a copy */ - return getcpy(bp); + return mh_xstrdup(bp); } /* @@ -1341,7 +1337,7 @@ verbose_printf (char *fmt, ...) va_list ap; va_start(ap, fmt); - vfprintf (stdout, fmt, ap); + vprintf(fmt, ap); va_end(ap); fflush (stdout); /* now flush output */ @@ -1361,22 +1357,22 @@ adorn (char *what, char *fmt, ...) char *s; eindex = errno; /* save the errno */ - fprintf (stdout, ", "); + printf(", "); va_start(ap, fmt); - vfprintf (stdout, fmt, ap); + vprintf(fmt, ap); va_end(ap); if (what) { if (*what) - fprintf (stdout, " %s: ", what); + printf(" %s: ", what); if ((s = strerror (eindex))) - fprintf (stdout, "%s", s); + fputs(s, stdout); else - fprintf (stdout, "Error %d", eindex); + printf("Error %d", eindex); } - fputc ('\n', stdout); + putchar('\n'); fflush (stdout); }