X-Git-Url: http://git.marmaro.de/?a=blobdiff_plain;f=h%2Fmh.h;h=abcf445168ac656d015548c624879a28370c8673;hb=a01a41d031c796b526329a4170eb23f0ac93b949;hp=bcfe6ae9d6ce7e770998c850a176f371af61780f;hpb=56a805299de35d8924969138aef4d0f1580daa6d;p=mmh diff --git a/h/mh.h b/h/mh.h index bcfe6ae..abcf445 100644 --- a/h/mh.h +++ b/h/mh.h @@ -1,8 +1,6 @@ /* * mh.h -- main header file for all of nmh - * - * $Id$ */ #include @@ -29,6 +27,15 @@ #endif typedef unsigned char boolean; /* not int so we can pack in a structure */ +/* If we're using gcc then give it some information about + * functions that abort. + */ +#if __GNUC__ > 2 +#define NORETURN __attribute__((__noreturn__)) +#else +#define NORETURN +#endif + /* * user context/profile structure */ @@ -214,7 +221,15 @@ struct msgs { * m_getfld() message parsing */ -#define NAMESZ 128 /* Limit on component name size */ +#define NAMESZ 999 /* Limit on component name size. + RFC 2822 limits line lengths to + 998 characters, so a header name + can be at most that long. + m_getfld limits header names to 2 + less than NAMESZ, which is fine, + because header names must be + followed by a colon. Add one for + terminating NULL. */ #define LENERR (-2) /* Name too long error from getfld */ #define FMTERR (-3) /* Message Format error */ @@ -336,7 +351,7 @@ extern char *vmhproc; extern char *whatnowproc; extern char *whomproc; -extern int (*done) (int); +extern void (*done) (int) NORETURN; #include