- /* source (read) file */
- char *c_file; /* read contents (file) */
- FILE *c_fp; /* read contents (stream) */
- int c_unlink; /* remove file when done? */
-
- long c_begin; /* where content body starts in file */
- long c_end; /* where content body ends in file */
-
- /* linked list of header fields */
- HF c_first_hf; /* pointer to first header field */
- HF c_last_hf; /* pointer to last header field */
-
- /* copies of MIME related header fields */
- char *c_vrsn; /* MIME-Version: */
- char *c_ctline; /* Content-Type: */
- char *c_celine; /* Content-Transfer-Encoding: */
- char *c_id; /* Content-ID: */
- char *c_descr; /* Content-Description: */
- char *c_dispo; /* Content-Disposition: */
- char *c_partno; /* within multipart content */
-
- /* Content-Type info */
- struct CTinfo c_ctinfo; /* parsed elements of Content-Type */
- int c_type; /* internal flag for content type */
- int c_subtype; /* internal flag for content subtype */
-
- /* Content-Transfer-Encoding info (decoded contents) */
- CE c_cefile; /* structure holding decoded content */
- int c_encoding; /* internal flag for encoding type */
-
- /* Content-MD5 info */
- int c_digested; /* have we seen this header before? */
- unsigned char c_digest[16]; /* decoded MD5 checksum */
-
- /* pointers to content-specific structures */
- void *c_ctparams; /* content type specific data */
- struct exbody *c_ctexbody; /* data for type message/external */
-
- /* function pointers */
- InitFunc c_ctinitfnx; /* parse content body */
- OpenCEFunc c_ceopenfnx; /* get a stream to decoded contents */
- CloseCEFunc c_ceclosefnx; /* release stream */
- SizeCEFunc c_cesizefnx; /* size of decoded contents */
-
- int c_umask; /* associated umask */
- pid_t c_pid; /* process doing display */
- int c_rfc934; /* rfc934 compatibility flag */
-
- char *c_showproc; /* default, if not in profile */
- char *c_termproc; /* for charset madness... */
- char *c_storeproc; /* overrides profile entry, if any */
-
- char *c_storage; /* write contents (file) */
- char *c_folder; /* write contents (folder) */
+ /* source (read) file */
+ char *c_file; /* read contents (file) */
+ FILE *c_fp; /* read contents (stream) */
+ int c_unlink; /* remove file when done? */
+
+ long c_begin; /* where content body starts in file */
+ long c_end; /* where content body ends in file */
+
+ /* linked list of header fields */
+ HF c_first_hf; /* pointer to first header field */
+ HF c_last_hf; /* pointer to last header field */
+
+ /* copies of MIME related header fields */
+ char *c_vrsn; /* MIME-Version: */
+ char *c_ctline; /* Content-Type: */
+ char *c_celine; /* Content-Transfer-Encoding: */
+ char *c_id; /* Content-ID: */
+ char *c_descr; /* Content-Description: */
+ char *c_dispo; /* Content-Disposition: */
+ char *c_partno; /* within multipart content */
+
+ /* Content-Type info */
+ boolean crlf; /* are the line ending CRLF */
+ struct CTinfo c_ctinfo; /* parsed elements of Content-Type */
+ int c_type; /* internal flag for content type */
+ int c_subtype; /* internal flag for content subtype */
+ char *c_charset; /* charset string */
+
+ /* Content-Transfer-Encoding info (decoded contents) */
+ CE c_cefile; /* structure holding decoded content */
+ int c_encoding; /* internal flag for encoding type */
+
+ /* pointers to content-specific structures */
+ void *c_ctparams; /* content type specific data */
+
+ /* function pointers */
+ InitFunc c_ctinitfnx; /* parse content body */
+ OpenCEFunc c_ceopenfnx; /* get a stream to decoded contents */
+ CloseCEFunc c_ceclosefnx; /* release stream */
+ SizeCEFunc c_cesizefnx; /* size of decoded contents */
+
+ int c_umask; /* associated umask */
+
+ char *c_showproc; /* default, if not in profile */
+ char *c_storeproc; /* overrides profile entry, if any */
+
+ char *c_storage; /* write contents (file) */
+ char *c_folder; /* write contents (folder) */