X-Git-Url: http://git.marmaro.de/?p=mmh;a=blobdiff_plain;f=h%2Fmh.h;fp=h%2Fmh.h;h=e1795caa1b681466ada5b4f6af22ee41d6c2a0ae;hp=a5a12ce2784911f6a1a777b6e440e9f2a215dda5;hb=04a3dfc70394a517a79340a7d3ecd9c6a23d0bee;hpb=bd02210b2be64956a952f925a2dcd35fb42f6136 diff --git a/h/mh.h b/h/mh.h index a5a12ce..e1795ca 100644 --- a/h/mh.h +++ b/h/mh.h @@ -203,14 +203,24 @@ struct msgs { ** terminating NULL. */ -#define LENERR (-2) /* Name too long error from getfld */ -#define FMTERR (-3) /* Message Format error */ -#define FLD 0 /* Field returned */ -#define FLDPLUS 1 /* Field returned with more to come */ -#define BODY 3 /* Body returned with more to come */ -#define FILEEOF 5 /* Reached end of input file */ - -extern int msg_count; /* m_getfld() indicators (That's a hack!) */ +/* m_getfld2() returned data */ +struct field { + char name[NAMESZ]; + size_t namelen; + char *value; + size_t valuelen; + size_t alloclen; +}; + +/* m_getfld2() states */ +enum state { + LENERR2 = -2, /* Line too long */ + FMTERR2 = -3, /* Format error in message */ + IOERR2 = -1, /* Read error */ + FLD2 = 0, /* Header field returned */ + BODY2, /* Body line returned */ + FILEEOF2, /* Reached end of input file */ +}; #define NOUSE 0 /* draft being re-used */