X-Git-Url: https://diplodocus.org/git/nmh/blobdiff_plain/cb7874fcb45549b99e4847affe4a2bd20e20e648..582d5e802ceb8e0c7f0dc5b83fdbf2a62fc10fb3:/h/mhparse.h diff --git a/h/mhparse.h b/h/mhparse.h index d184e530..00802d13 100644 --- a/h/mhparse.h +++ b/h/mhparse.h @@ -1,6 +1,4 @@ - -/* - * mhparse.h -- definitions for parsing/building of MIME content +/* mhparse.h -- definitions for parsing/building of MIME content * -- (mhparse.c/mhbuildsbr.c) */ @@ -90,6 +88,26 @@ struct cefile { * A struct multipart contains (among other things) a linked list * of struct part elements, and THOSE contain a pointer to the sub-part's * Content structure. + * + * An extra note for message/external-body parts. The enclosing + * content structure is marked as a message/external-body; the c_ctparams + * contains a pointer to a struct exbody, which contains a pointer to + * (among other things) the "real" content (e.g., application/octet-stream). + * The "real" content structure has the c_ctexbody pointer back to the + * same struct exbody sees in the enclosing content structure (the struct + * exbody contains parent pointers if you need to traverse up the content + * structure). Hopefully this makes it clearer: + * + * Enclosing content: + * Type: message/external-body + * c_ctparams: pointer to "struct exbody" + * c_ctexbody: NULL + * + * "Real" content: + * Type: application/octet-stream (or whatever) + * c_ctparams: NULL + * c_ctexbody: pointer to "struct exbody" + * */ struct Content { /* source (read) file */ @@ -141,7 +159,7 @@ struct Content { SizeCEFunc c_cesizefnx; /* size of decoded contents */ int c_umask; /* associated umask */ - int c_rfc934; /* rfc934 compatibility flag */ + int c_rfc934; /* RFC 934 compatibility flag */ char *c_showproc; /* default, if not in profile */ char *c_termproc; /* for charset madness... */ @@ -397,7 +415,7 @@ int list_content(CT ct, int toplevel, int realsize, int verbose, int debug, int dispo); /* - * Display content-appropriate information on MIME parts, decending recursively + * Display content-appropriate information on MIME parts, descending recursively * into multipart content if appropriate. Uses list_content() for displaying * generic information. *