-
-/*
- * rcvdist.c -- asynchronously redistribute messages
+/* rcvdist.c -- asynchronously redistribute messages
*
* This code is Copyright (c) 2002, by the authors of nmh. See the
* COPYRIGHT file in the root directory of the nmh distribution for
continue;
}
}
- addrs = addrs ? add (cp, add (", ", addrs)) : getcpy (cp);
+ addrs = addrs ? add (cp, add (", ", addrs)) : mh_xstrdup(cp);
}
if (addrs == NULL)
sleep (5);
switch (child_id) {
case NOTOK:
- admonish (NULL, "unable to fork");/* fall */
+ inform("unable to fork, continuing...");
+ /* FALLTHRU */
case OK:
execvp (program, vec);
fprintf (stderr, "unable to exec ");
/* very similar to routine in replsbr.c */
-#define SBUFSIZ 256
-
static int outputlinelen = OUTPUTLINELEN;
static struct format *fmt;
static void
rcvdistout (FILE *inb, char *form, char *addrs)
{
- register int char_read = 0, format_len, i, state;
- register char **ap;
- char *cp, name[NAMESZ], tmpbuf[SBUFSIZ];
+ int char_read = 0, format_len, i, state;
+ char **ap;
+ char *cp, name[NAMESZ], tmpbuf[NMH_BUFSIZ];
charstring_t scanl;
- register struct comp *cptr;
+ struct comp *cptr;
FILE *out;
m_getfld_state_t gstate = 0;
cptr->c_text = addrs;
for (;;) {
- int msg_count = SBUFSIZ;
+ int msg_count = sizeof tmpbuf;
switch (state = m_getfld (&gstate, name, tmpbuf, &msg_count, inb)) {
case FLD:
case FLDPLUS:
if (i != -1) {
char_read += msg_count;
while (state == FLDPLUS) {
- msg_count = SBUFSIZ;
+ msg_count = sizeof tmpbuf;
state = m_getfld (&gstate, name, tmpbuf, &msg_count, inb);
fmt_appendcomp(i, name, tmpbuf);
char_read += msg_count;
}
while (state == FLDPLUS) {
- msg_count = SBUFSIZ;
+ msg_count = sizeof tmpbuf;
state = m_getfld (&gstate, name, tmpbuf, &msg_count, inb);
}
break;