X-Git-Url: https://diplodocus.org/git/nmh/blobdiff_plain/430ffdd38f6ea76f20d8559a3e2a6f7835117d47..5977791e005446f4cd8b2f04bfb14c8cd265df8a:/h/mime.h?ds=sidebyside diff --git a/h/mime.h b/h/mime.h index 2ed5378c..e389b284 100644 --- a/h/mime.h +++ b/h/mime.h @@ -1,6 +1,4 @@ - -/* - * mime.h -- definitions for MIME +/* mime.h -- definitions for MIME */ #define VRSN_FIELD "MIME-Version" @@ -12,15 +10,11 @@ #define DESCR_FIELD "Content-Description" #define DISPO_FIELD "Content-Disposition" #define MD5_FIELD "Content-MD5" -#define ATTACH_FIELD "Attach" - -#define isatom(c) (isascii((unsigned char) c) \ - && !isspace ((unsigned char) c) \ - && !iscntrl ((unsigned char) c) && (c) != '(' \ - && (c) != ')' && (c) != '<' && (c) != '>' \ - && (c) != '@' && (c) != ',' && (c) != ';' \ - && (c) != ':' && (c) != '\\' && (c) != '"' \ - && (c) != '.' && (c) != '[' && (c) != ']') +#define PSEUDOHEADER_PREFIX "Nmh-" +#define ATTACH_FIELD PSEUDOHEADER_PREFIX "Attach" +#define ATTACH_FIELD_ALT "Attach" +#define MHBUILD_FILE_PSEUDOHEADER PSEUDOHEADER_PREFIX "mhbuild-file-" +#define MHBUILD_ARGS_PSEUDOHEADER PSEUDOHEADER_PREFIX "mhbuild-args-" /* * Test for valid characters used in "token" @@ -35,8 +29,23 @@ && (c) != '/' && (c) != '[' && (c) != ']' \ && (c) != '?' && (c) != '=') +/* + * Definitions for RFC 2231 encoding + */ +#define istspecial(c) ((c) == '(' || (c) == ')' || (c) == '<' || (c) == '>' \ + || (c) == '@' || (c) == ',' || (c) == ';' \ + || (c) == ':' || (c) == '\\' || (c) == '"' \ + || (c) == '/' || (c) == '[' || (c) == ']' \ + || (c) == '?' || (c) == '=') + +#define isparamencode(c) (!isascii((unsigned char) c) || \ + iscntrl((unsigned char) c) || istspecial(c) || \ + (c) == ' ' || (c) == '*' || (c) == '\'' || \ + (c) == '%') + +#define MAXTEXTPERLN 78 +#define MAXLONGLINE 998 #define CPERLIN 76 #define BPERLIN (CPERLIN / 4) #define LPERMSG 632 #define CPERMSG (LPERMSG * CPERLIN) -