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;
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);
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;
}
}
return;
}
- i = strlen ("From ");
+ i = LEN("From ");
strncpy (buffer, envelope + i, sizeof(buffer));
if ((cp = strchr(buffer, '\n'))) {
*cp = 0;
* 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 = mh_xstrdup(buffer);
va_list ap;
va_start(ap, fmt);
- vfprintf (stdout, fmt, ap);
+ vprintf(fmt, ap);
va_end(ap);
fflush (stdout); /* now flush output */
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);
}