void
-replout(FILE *inb, char *msg, char *drft, struct msgs *mp, int outputlinelen,
+replout(FILE *inb, char *msg, char *drft, struct msgs *mp,
int mime, char *form, char *filter, char *fcc)
{
register int state, i;
dat[0] = 0;
dat[1] = 0;
dat[2] = 0;
- dat[3] = outputlinelen;
+ dat[3] = OUTPUTLINELEN;
dat[4] = 0;
fmt_scan(fmt, scanl, i, dat);
fputs(scanl, out);
fputs( badaddrs, out);
}
- /*
- ** Check if we should filter the message
- ** or add mhbuild directives
- */
+ /* Check if we should filter the message */
if (filter) {
fflush(out);
if (ferror(out))
adios(drft, "error writing");
replfilter(inb, out, filter);
- } else if (mime && mp) {
- fprintf(out, "#forw [original message] +%s %s\n",
- mp->foldpath, m_name(mp->lowsel));
}
fflush(out);
adios(drft, "error writing");
fclose(out);
+ /* if we want mime, then add an attachment header */
+ if (!filter && mime && mp) {
+ char buffer[BUFSIZ];
+
+ snprintf(buffer, sizeof buffer, "+%s %s",
+ mp->foldpath, m_name(mp->lowsel));
+ annotate(drft, attach_hdr, buffer, 1, 0, -2, 1);
+ }
+
/* return dynamically allocated buffers */
free(scanl);
for (nxtbuf = compbuffers, i = ncomps; (cptr = *savecomp++);
rewind(in);
lseek(fileno(in), (off_t) 0, SEEK_SET);
- switch (pid = vfork()) {
+ switch (pid = fork()) {
case NOTOK:
adios("fork", "unable to");