/*
** mhparse.h -- definitions for parsing/building of MIME content
-** -- (mhparse.c/mhbuildsbr.c)
+** -- (mhparse.c/mhbuild.c)
*/
#define NPARTS 50
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 */
- /* 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 */
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) */
int pm_stored;
};
-/* Structure for message/external */
-struct exbody {
- CT eb_parent; /* pointer to controlling content structure */
- CT eb_content; /* pointer to internal content structure */
- char *eb_partno;
- char *eb_access;
- int eb_flags;
- char *eb_name;
- char *eb_permission;
- char *eb_site;
- char *eb_dir;
- char *eb_mode;
- unsigned long eb_size;
- char *eb_server;
- char *eb_subject;
- char *eb_body;
-};
-
/*
** APPLICATION content
*/
};
extern struct str2init str2cts[];
extern struct str2init str2ces[];
-extern struct str2init str2methods[];
/*
** prototypes
CT parse_mime(char *);
int add_header(CT, char *, char *);
int get_ctinfo(unsigned char *, CT, int);
-int params_external(CT, int);
int open7Bit(CT, char **);
void close_encoding(CT);
-
-extern int checksw; /* Add Content-MD5 field */
+char *extract_name_value(char *, char *);