char subject[BUFSIZ];
char name[NAMESZ], partnum[BUFSIZ];
FILE *in;
- m_getfld_state_t gstate;
+ m_getfld_state_t gstate = 0;
if ((in = fopen (drft, "r")) == NULL)
adios (drft, "unable to open for reading");
* Scan through the message and examine the various header fields,
* as well as locate the beginning of the message body.
*/
- m_getfld_state_init (&gstate);
+ m_getfld_track_filepos (&gstate, in);
for (compnum = 1;;) {
int bufsz = sizeof buffer;
- switch (state = m_getfld (gstate, name, buffer, &bufsz, in)) {
+ switch (state = m_getfld (&gstate, name, buffer, &bufsz, in)) {
case FLD:
case FLDPLUS:
compnum++;
if (!mh_strcasecmp (name, "Message-ID")) {
while (state == FLDPLUS) {
bufsz = sizeof buffer;
- state = m_getfld (gstate, name, buffer, &bufsz, in);
+ state = m_getfld (&gstate, name, buffer, &bufsz, in);
}
} else if (uprf (name, XXX_FIELD_PRF)
|| !mh_strcasecmp (name, VRSN_FIELD)
dp = add (concat (name, ":", buffer, NULL), dp);
while (state == FLDPLUS) {
bufsz = sizeof buffer;
- state = m_getfld (gstate, name, buffer, &bufsz, in);
+ state = m_getfld (&gstate, name, buffer, &bufsz, in);
dp = add (buffer, dp);
}
} else {
cp = add (concat (name, ":", buffer, NULL), cp);
while (state == FLDPLUS) {
bufsz = sizeof buffer;
- state = m_getfld (gstate, name, buffer, &bufsz, in);
+ state = m_getfld (&gstate, name, buffer, &bufsz, in);
cp = add (buffer, cp);
}
}