00001 00002 #ifndef __JBXL_MIME_TOOL_H_ 00003 #define __JBXL_MIME_TOOL_H_ 00004 00013 #include "xtools.h" 00014 00015 #define MIME_CONTENT_LINE "Content-" 00016 #define MIME_CONTENTTYPE_LINE "Content-Type" 00017 #define MIME_CONTENTDSPO_LINE "Content-Disposition" 00018 #define MIME_NAMEEQ_LINE "name=" 00019 #define MIME_FILENAMEEQ_LINE "filename=" 00020 #define MIME_FILENAMESTAR_LINE "filename*" 00021 #define MIME_BOUNDARY_LINE "boundary=" 00022 #define MIME_ISO2022JP_LINE "ISO-2022-JP" 00023 #define MIME_BASE64 "=?ISO-2022-JP?B?" 00024 #define MIME_QUTDPRNTBL "" 00025 #define MIME_RFC2231 "iso-2022-jp'ja'" 00026 #define MIME_CHARSET_ISO2022JP "Content-Type: text/plain; charset=iso-2022-jp" 00027 00028 #define MIME_ERR_ENCODE -1 00029 #define MIME_UNKNOWN_ENCODE 0 00030 #define MIME_BASE64_ENCODE 1 00031 #define MIME_QUTDPRNTBL_ENCODE 2 00032 #define MIME_URL_ENCODE 3 00033 00034 00036 00037 char* get_mime_boundary(tList* list); 00038 tList* get_mime_filename(FILE* fp, char* bndry); 00039 tList* get_mime_filenameffn(char* fn, char* bndry); 00040 00041 char* decode_mime_string (char* str); 00042 char* decode_mime_rfc2047(char* str); 00043 char* decode_mime_rfc2231(char* str); 00044 00045 char* encode_mime_string(char* str, int kind); 00046 int get_mime_enckind(char* str); 00047 00048 00049 #endif 00050 00051 00052