**
** If the first line of the maildrop is a Unix "From " line, we
** say the style is MBOX and eat the rest of the line. Otherwise
-** we say the style is MMDF and look for the delimiter string
-** specified when nmh was built (or from the mts.conf file).
+** abort.
*/
msg_style = MS_UNKNOWN;
pos = ftell(iob);
if (fread(text, sizeof(*text), 5, iob) == 5
- && strncmp(text, "From ", 5) == 0) {
+ && strncmp(text, "From ", 5) == 0) {
msg_style = MS_MBOX;
delimstr = "\nFrom ";
#ifndef RPATHS
#endif /* RPATHS */
} else {
/* not a Unix style maildrop */
- fseek(iob, pos, SEEK_SET);
- if (mmdlm2 == NULL || *mmdlm2 == 0)
- mmdlm2 = "\001\001\001\001\n";
- delimstr = mmdlm2;
- msg_style = MS_MMDF;
+ adios(NULL, "No Unix style (mbox) maildrop.");
}
c = strlen(delimstr);
fdelim = (unsigned char *) mh_xmalloc((size_t) (c + 3));
for (cp = (char *) fdelim + 1; cp < (char *) delimend; cp++ )
pat_map[(unsigned char)*cp] = (unsigned char *) cp;
-
- if (msg_style == MS_MMDF) {
- /* flush extra msg hdrs */
- while ((c = getc(iob)) >= 0 && eom(c, iob))
- ;
- if (c >= 0)
- ungetc(c, iob);
- }
}
pos = ftell(iob);
if ((i = fread(text, sizeof *text, edelimlen, iob)) != edelimlen
- || strncmp(text, (char *)edelim, edelimlen)) {
+ || (strncmp(text, (char *)edelim, edelimlen)!=0)) {
if (i == 0 && msg_style == MS_MBOX)
/*
** the final newline in the (brain damaged) unix-format
*/
return 1;
-#if 0
- fseek(iob, pos, SEEK_SET);
-#endif
-
fseek(iob, (long)(pos-1), SEEK_SET);
getc(iob); /* should be OK */
return 0;