diff options
Diffstat (limited to '')
-rw-r--r-- | WWW/Library/Implementation/HTMIME.h | 84 |
1 files changed, 84 insertions, 0 deletions
diff --git a/WWW/Library/Implementation/HTMIME.h b/WWW/Library/Implementation/HTMIME.h new file mode 100644 index 0000000..6410c15 --- /dev/null +++ b/WWW/Library/Implementation/HTMIME.h @@ -0,0 +1,84 @@ +/* /Net/dxcern/userd/timbl/hypertext/WWW/Library/Implementation/HTMIME.html + MIME PARSER + + The MIME parser stream presents a MIME document. It recursively invokes the + format manager to handle embedded formats. + + As well as stripping off and parsing the headers, the MIME parser has to + parse any weirld MIME encodings it may meet within the body parts of + messages, and must deal with multipart messages. + + This module is implemented to the level necessary for operation with WWW, + but is not currently complete for any arbitrary MIME message. + + Check the source for latest additions to functionality. + + The MIME parser is complicated by the fact that WWW allows real binary to be + sent, not ASCII encoded. Therefore the netascii decoding is included in + this module. One cannot layer it by converting first from Net to local + text, then decoding it. Of course, for local files, the net ascii decoding + is not needed. There are therefore two creation routines. + + */ +#ifndef HTMIME_H +#define HTMIME_H + +#include <HTStream.h> +#include <HTAnchor.h> + +#ifdef __cplusplus +extern "C" { +#endif +/* + * This function is for trimming off any paired + * open- and close-double quotes from header values. + * It does not parse the string for embedded quotes, + * and will not modify the string unless both the + * first and last characters are double-quotes. - FM + */ extern void HTMIME_TrimDoubleQuotes(char *value); + +/* + + INPUT: LOCAL TEXT + + */ + extern HTStream *HTMIMEConvert(HTPresentation *pres, + HTParentAnchor *anchor, + HTStream *sink); + +/* + + INPUT: NET ASCII + + */ + extern HTStream *HTNetMIME(HTPresentation *pres, + HTParentAnchor *anchor, + HTStream *sink); + +/* + + INPUT: Redirection message, parse headers only for Location if present + + */ + extern HTStream *HTMIMERedirect(HTPresentation *pres, + HTParentAnchor *anchor, + HTStream *sink); + +/* + + For handling Japanese headers. + +*/ + extern void HTmmdecode(char **target, + char *source); + + extern int HTrjis(char **target, + char *source); + + extern int HTmaybekanji(int c1, + int c2); + +#ifdef __cplusplus +} +#endif +#endif /* !HTMIME_H */ |