From: Russell Bryant Date: Fri, 6 Apr 2007 21:19:25 +0000 (+0000) Subject: Remove a bunch of files that weren't supposed to get added. X-Git-Tag: 1.6.0-beta1~3^2~2894 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=f6ee1f7a0b0ec4a19c5f51e1464334d753621923;p=thirdparty%2Fasterisk.git Remove a bunch of files that weren't supposed to get added. git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@60605 65c4cc65-6c06-0410-ace0-fbb531ad65f3 --- diff --git a/main/minimime/.cvsignore b/main/minimime/.cvsignore deleted file mode 100644 index f5e1bf873b..0000000000 --- a/main/minimime/.cvsignore +++ /dev/null @@ -1,4 +0,0 @@ -minimime -*.so.* -*.o -*.swp diff --git a/main/minimime/mm-docs/html/bug.html b/main/minimime/mm-docs/html/bug.html deleted file mode 100644 index 61f89acc88..0000000000 --- a/main/minimime/mm-docs/html/bug.html +++ /dev/null @@ -1,28 +0,0 @@ - - -MiniMIME: Bug List - - - - -
-
-

Bug List

-
Global mm_content_setmaintype
-
The xfree() call could lead to undesirable results. Do we really need it?
-
-

-

-
Global mm_content_setsubtype
-
The xfree() call could lead to undesirable results. Do we really need it?
-
-
Generated on Thu Mar 29 17:59:08 2007 for MiniMIME by  - -doxygen 1.5.1
- - diff --git a/main/minimime/mm-docs/html/doxygen.css b/main/minimime/mm-docs/html/doxygen.css deleted file mode 100644 index c7db1a8a04..0000000000 --- a/main/minimime/mm-docs/html/doxygen.css +++ /dev/null @@ -1,358 +0,0 @@ -BODY,H1,H2,H3,H4,H5,H6,P,CENTER,TD,TH,UL,DL,DIV { - font-family: Geneva, Arial, Helvetica, sans-serif; -} -BODY,TD { - font-size: 90%; -} -H1 { - text-align: center; - font-size: 160%; -} -H2 { - font-size: 120%; -} -H3 { - font-size: 100%; -} -CAPTION { font-weight: bold } -DIV.qindex { - width: 100%; - background-color: #e8eef2; - border: 1px solid #84b0c7; - text-align: center; - margin: 2px; - padding: 2px; - line-height: 140%; -} -DIV.nav { - width: 100%; - background-color: #e8eef2; - border: 1px solid #84b0c7; - text-align: center; - margin: 2px; - padding: 2px; - line-height: 140%; -} -DIV.navtab { - background-color: #e8eef2; - border: 1px solid #84b0c7; - text-align: center; - margin: 2px; - margin-right: 15px; - padding: 2px; -} -TD.navtab { - font-size: 70%; -} -A.qindex { - text-decoration: none; - font-weight: bold; - color: #1A419D; -} -A.qindex:visited { - text-decoration: none; - font-weight: bold; - color: #1A419D -} -A.qindex:hover { - text-decoration: none; - background-color: #ddddff; -} -A.qindexHL { - text-decoration: none; - font-weight: bold; - background-color: #6666cc; - color: #ffffff; - border: 1px double #9295C2; -} -A.qindexHL:hover { - text-decoration: none; - background-color: #6666cc; - color: #ffffff; -} -A.qindexHL:visited { text-decoration: none; background-color: #6666cc; color: #ffffff } -A.el { text-decoration: none; font-weight: bold } -A.elRef { font-weight: bold } -A.code:link { text-decoration: none; font-weight: normal; color: #0000FF} -A.code:visited { text-decoration: none; font-weight: normal; color: #0000FF} -A.codeRef:link { font-weight: normal; color: #0000FF} -A.codeRef:visited { font-weight: normal; color: #0000FF} -A:hover { text-decoration: none; background-color: #f2f2ff } -DL.el { margin-left: -1cm } -.fragment { - font-family: monospace, fixed; - font-size: 95%; -} -PRE.fragment { - border: 1px solid #CCCCCC; - background-color: #f5f5f5; - margin-top: 4px; - margin-bottom: 4px; - margin-left: 2px; - margin-right: 8px; - padding-left: 6px; - padding-right: 6px; - padding-top: 4px; - padding-bottom: 4px; -} -DIV.ah { background-color: black; font-weight: bold; color: #ffffff; margin-bottom: 3px; margin-top: 3px } - -DIV.groupHeader { - margin-left: 16px; - margin-top: 12px; - margin-bottom: 6px; - font-weight: bold; -} -DIV.groupText { margin-left: 16px; font-style: italic; font-size: 90% } -BODY { - background: white; - color: black; - margin-right: 20px; - margin-left: 20px; -} -TD.indexkey { - background-color: #e8eef2; - font-weight: bold; - padding-right : 10px; - padding-top : 2px; - padding-left : 10px; - padding-bottom : 2px; - margin-left : 0px; - margin-right : 0px; - margin-top : 2px; - margin-bottom : 2px; - border: 1px solid #CCCCCC; -} -TD.indexvalue { - background-color: #e8eef2; - font-style: italic; - padding-right : 10px; - padding-top : 2px; - padding-left : 10px; - padding-bottom : 2px; - margin-left : 0px; - margin-right : 0px; - margin-top : 2px; - margin-bottom : 2px; - border: 1px solid #CCCCCC; -} -TR.memlist { - background-color: #f0f0f0; -} -P.formulaDsp { text-align: center; } -IMG.formulaDsp { } -IMG.formulaInl { vertical-align: middle; } -SPAN.keyword { color: #008000 } -SPAN.keywordtype { color: #604020 } -SPAN.keywordflow { color: #e08000 } -SPAN.comment { color: #800000 } -SPAN.preprocessor { color: #806020 } -SPAN.stringliteral { color: #002080 } -SPAN.charliteral { color: #008080 } -.mdescLeft { - padding: 0px 8px 4px 8px; - font-size: 80%; - font-style: italic; - background-color: #FAFAFA; - border-top: 1px none #E0E0E0; - border-right: 1px none #E0E0E0; - border-bottom: 1px none #E0E0E0; - border-left: 1px none #E0E0E0; - margin: 0px; -} -.mdescRight { - padding: 0px 8px 4px 8px; - font-size: 80%; - font-style: italic; - background-color: #FAFAFA; - border-top: 1px none #E0E0E0; - border-right: 1px none #E0E0E0; - border-bottom: 1px none #E0E0E0; - border-left: 1px none #E0E0E0; - margin: 0px; -} -.memItemLeft { - padding: 1px 0px 0px 8px; - margin: 4px; - border-top-width: 1px; - border-right-width: 1px; - border-bottom-width: 1px; - border-left-width: 1px; - border-top-color: #E0E0E0; - border-right-color: #E0E0E0; - border-bottom-color: #E0E0E0; - border-left-color: #E0E0E0; - border-top-style: solid; - border-right-style: none; - border-bottom-style: none; - border-left-style: none; - background-color: #FAFAFA; - font-size: 80%; -} -.memItemRight { - padding: 1px 8px 0px 8px; - margin: 4px; - border-top-width: 1px; - border-right-width: 1px; - border-bottom-width: 1px; - border-left-width: 1px; - border-top-color: #E0E0E0; - border-right-color: #E0E0E0; - border-bottom-color: #E0E0E0; - border-left-color: #E0E0E0; - border-top-style: solid; - border-right-style: none; - border-bottom-style: none; - border-left-style: none; - background-color: #FAFAFA; - font-size: 80%; -} -.memTemplItemLeft { - padding: 1px 0px 0px 8px; - margin: 4px; - border-top-width: 1px; - border-right-width: 1px; - border-bottom-width: 1px; - border-left-width: 1px; - border-top-color: #E0E0E0; - border-right-color: #E0E0E0; - border-bottom-color: #E0E0E0; - border-left-color: #E0E0E0; - border-top-style: none; - border-right-style: none; - border-bottom-style: none; - border-left-style: none; - background-color: #FAFAFA; - font-size: 80%; -} -.memTemplItemRight { - padding: 1px 8px 0px 8px; - margin: 4px; - border-top-width: 1px; - border-right-width: 1px; - border-bottom-width: 1px; - border-left-width: 1px; - border-top-color: #E0E0E0; - border-right-color: #E0E0E0; - border-bottom-color: #E0E0E0; - border-left-color: #E0E0E0; - border-top-style: none; - border-right-style: none; - border-bottom-style: none; - border-left-style: none; - background-color: #FAFAFA; - font-size: 80%; -} -.memTemplParams { - padding: 1px 0px 0px 8px; - margin: 4px; - border-top-width: 1px; - border-right-width: 1px; - border-bottom-width: 1px; - border-left-width: 1px; - border-top-color: #E0E0E0; - border-right-color: #E0E0E0; - border-bottom-color: #E0E0E0; - border-left-color: #E0E0E0; - border-top-style: solid; - border-right-style: none; - border-bottom-style: none; - border-left-style: none; - color: #606060; - background-color: #FAFAFA; - font-size: 80%; -} -.search { color: #003399; - font-weight: bold; -} -FORM.search { - margin-bottom: 0px; - margin-top: 0px; -} -INPUT.search { font-size: 75%; - color: #000080; - font-weight: normal; - background-color: #e8eef2; -} -TD.tiny { font-size: 75%; -} -a { - color: #1A41A8; -} -a:visited { - color: #2A3798; -} -.dirtab { padding: 4px; - border-collapse: collapse; - border: 1px solid #84b0c7; -} -TH.dirtab { background: #e8eef2; - font-weight: bold; -} -HR { height: 1px; - border: none; - border-top: 1px solid black; -} - -/* Style for detailed member documentation */ -.memtemplate { - font-size: 80%; - color: #606060; - font-weight: normal; -} -.memnav { - background-color: #e8eef2; - border: 1px solid #84b0c7; - text-align: center; - margin: 2px; - margin-right: 15px; - padding: 2px; -} -.memitem { - padding: 4px; - background-color: #eef3f5; - border-width: 1px; - border-style: solid; - border-color: #dedeee; - -moz-border-radius: 8px 8px 8px 8px; -} -.memname { - white-space: nowrap; - font-weight: bold; -} -.memdoc{ - padding-left: 10px; -} -.memproto { - background-color: #d5e1e8; - width: 100%; - border-width: 1px; - border-style: solid; - border-color: #84b0c7; - font-weight: bold; - -moz-border-radius: 8px 8px 8px 8px; -} -.paramkey { - text-align: right; -} -.paramtype { - white-space: nowrap; -} -.paramname { - color: #602020; - font-style: italic; - white-space: nowrap; -} -/* End Styling for detailed member documentation */ - -/* for the tree view */ -.ftvtree { - font-family: sans-serif; - margin:0.5em; -} -.directory { font-size: 9pt; font-weight: bold; } -.directory h3 { margin: 0px; margin-top: 1em; font-size: 11pt; } -.directory > h3 { margin-top: 0; } -.directory p { margin: 0px; white-space: nowrap; } -.directory div { display: none; margin: 0px; } -.directory img { vertical-align: -30%; } diff --git a/main/minimime/mm-docs/html/files.html b/main/minimime/mm-docs/html/files.html deleted file mode 100644 index df53367c9e..0000000000 --- a/main/minimime/mm-docs/html/files.html +++ /dev/null @@ -1,44 +0,0 @@ - - -MiniMIME: File Index - - - - -
-
-
-
-

MiniMIME File List

Here is a list of all documented files with brief descriptions: - - - - - - - - - - - - - - - - - - -
mimeparser.h [code]
mimeparser.tab.h [code]
mm.h [code]
mm_codecs.c
mm_contenttype.c
mm_context.c
mm_envelope.c
mm_error.c
mm_header.c
mm_internal.h [code]
mm_mem.h [code]
mm_mimepart.c
mm_mimeutil.c
mm_param.c
mm_parse.c
mm_queue.h [code]
mm_util.c
mm_util.h [code]
-
Generated on Thu Mar 29 17:59:09 2007 for MiniMIME by  - -doxygen 1.5.1
- - diff --git a/main/minimime/mm-docs/html/globals.html b/main/minimime/mm-docs/html/globals.html deleted file mode 100644 index b8a90462cf..0000000000 --- a/main/minimime/mm-docs/html/globals.html +++ /dev/null @@ -1,198 +0,0 @@ - - -MiniMIME: Data Fields - - - - -
-
-
-
-
- -
-
- -
- -

-Here is a list of all documented functions, variables, defines, enums, and typedefs with links to the documentation: -

-

- m -

-

- x -

-
Generated on Thu Mar 29 17:59:09 2007 for MiniMIME by  - -doxygen 1.5.1
- - diff --git a/main/minimime/mm-docs/html/globals_func.html b/main/minimime/mm-docs/html/globals_func.html deleted file mode 100644 index 7794fda651..0000000000 --- a/main/minimime/mm-docs/html/globals_func.html +++ /dev/null @@ -1,198 +0,0 @@ - - -MiniMIME: Data Fields - - - - -
-
-
-
-
- -
-
- -
- -

-  -

-

- m -

-

- x -

-
Generated on Thu Mar 29 17:59:09 2007 for MiniMIME by  - -doxygen 1.5.1
- - diff --git a/main/minimime/mm-docs/html/group__codecs.html b/main/minimime/mm-docs/html/group__codecs.html deleted file mode 100644 index a803cd67c0..0000000000 --- a/main/minimime/mm-docs/html/group__codecs.html +++ /dev/null @@ -1,243 +0,0 @@ - - -MiniMIME: Manipulating MiniMIME codecs - - - - -
-
-

Manipulating MiniMIME codecs

- - - - - - - - - - - - - - - - -

Codec manipulation

int mm_codec_hasdecoder (const char *encoding)
int mm_codec_hasencoder (const char *encoding)
int mm_codec_isregistered (const char *encoding)
int mm_codec_register (const char *encoding, char *(*encoder)(char *data, u_int32_t i), char *(*decoder)(char *data))
int mm_codec_unregister (const char *encoding)
int mm_codec_unregisterall (void)
void mm_codec_registerdefaultcodecs (void)
-

Function Documentation

- -
-
- - - - - - - - - -
int mm_codec_hasdecoder (const char *  encoding  ) 
-
-
- -

-Looks up whether a context has an decoder installed for a given encoding

-

Parameters:
- - -
encoding The encoding specifier to look up
-
-
Returns:
1 if a decoder is installed or 0 if not
- -
-

- -

-
- - - - - - - - - -
int mm_codec_hasencoder (const char *  encoding  ) 
-
-
- -

-Looks up whether a context has an encoder installed for a given encoding

-

Parameters:
- - - -
ctx A valid MIME context
encoding The encoding specifier to look up
-
-
Returns:
1 if an encoder is installed or 0 if not
- -
-

- -

-
- - - - - - - - - -
int mm_codec_isregistered (const char *  encoding  ) 
-
-
- -

-Looks up whether a codec for a given encoding is installed to a context

-

Parameters:
- - -
encoding The encoding specifier to look up
-
-
Returns:
1 if a codec was found or 0 if not
- -
-

- -

-
- - - - - - - - - - - - - - - - - - - - - - - - -
int mm_codec_register (const char *  encoding,
char *(*)(char *data, u_int32_t i)  encoder,
char *(*)(char *data)  decoder 
)
-
-
- -

-Registers a codec with the MiniMIME library

-

Parameters:
- - - - -
encoding The encoding specifier for which to register the codec
encoder The encoder function for this encoding
decoder The decoder function for this encoding
-
-
Returns:
1 if successfull or 0 if not
-This function registers a codec for a given MiniMIME context. The codec may provide an decoder, an encoder or both (but not none). If there is a codec already installed for this encoding, the function will puke. -
-

- -

-
- - - - - - - - - -
void mm_codec_registerdefaultcodecs (void   ) 
-
-
- -

-Registers the default codecs to a MiniMIME context

-This functions registers the codecs for the following encodings to a MiniMIME context:

-

    -
  • Base64
  • (TODO:) Quoted-Printable
- -
-

- -

-
- - - - - - - - - -
int mm_codec_unregister (const char *  encoding  ) 
-
-
- -

-Unregisters a MiniMIME codec

-

Parameters:
- - -
encoding The encoding specifier which to unregister
-
-
Returns:
0 if unregistered successfully, or -1 if there was no such codec
- -
-

- -

-
- - - - - - - - - -
int mm_codec_unregisterall (void   ) 
-
-
- -

-Unregisters all codecs within a context

-

Parameters:
- - -
ctx A valid MiniMIME context
-
-
Returns:
0 if all codecs were unregistered successfully or -1 if an error occured.
-
Note:
Foobar
- -
-

-


Generated on Thu Mar 29 17:59:08 2007 for MiniMIME by  - -doxygen 1.5.1
- - diff --git a/main/minimime/mm-docs/html/group__contenttype.html b/main/minimime/mm-docs/html/group__contenttype.html deleted file mode 100644 index 973f98a8d8..0000000000 --- a/main/minimime/mm-docs/html/group__contenttype.html +++ /dev/null @@ -1,516 +0,0 @@ - - -MiniMIME: Accessing and manipulating Content-Type objects - - - - -
-
-

Accessing and manipulating Content-Type objects

- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -

Functions for manipulating Content-Type objects

mm_content * mm_content_new (void)
void mm_content_free (struct mm_content *ct)
int mm_content_attachparam (struct mm_content *ct, struct mm_param *param)
char * mm_content_getparambyname (struct mm_content *ct, const char *name)
-mm_param * mm_content_getparamobjbyname (struct mm_content *ct, const char *name)
int mm_content_setmaintype (struct mm_content *ct, char *value, int copy)
char * mm_content_getmaintype (struct mm_content *ct)
char * mm_content_getsubtype (struct mm_content *ct)
-char * mm_content_gettype (struct mm_content *ct)
int mm_content_setsubtype (struct mm_content *ct, char *value, int copy)
-int mm_content_settype (struct mm_content *ct, const char *fmt,...)
int mm_content_iscomposite (struct mm_content *ct)
int mm_content_isvalidencoding (const char *encoding)
int mm_content_setencoding (struct mm_content *ct, const char *encoding)
int mm_content_getencoding (struct mm_content *ct, const char *encoding)
char * mm_content_paramstostring (struct mm_content *ct)
char * mm_content_tostring (struct mm_content *ct)

Variables

-int mm_encoding_mappings::type
-

Function Documentation

- -
-
- - - - - - - - - - - - - - - - - - -
int mm_content_attachparam (struct mm_content *  ct,
struct mm_param *  param 
)
-
-
- -

-Attaches a parameter to a Content-Type object

-

Parameters:
- - - -
ct The target Content-Type object
param The Content-Type parameter which to attach
-
-
Returns:
0 on success and -1 on failure
- -
-

- -

-
- - - - - - - - - -
void mm_content_free (struct mm_content *  ct  ) 
-
-
- -

-Releases all memory associated with an Content-Type object

-

Parameters:
- - -
ct A Content-Type object
-
-
Returns:
Nothing
- -
-

- -

-
- - - - - - - - - - - - - - - - - - -
int mm_content_getencoding (struct mm_content *  ct,
const char *  encoding 
)
-
-
- -

-Gets the numerical ID of a content encoding identifier

-

Parameters:
- - - -
ct A valid Content Type object
encoding A string representing the content encoding identifier
-
-
Returns:
The numerical ID of the content encoding
- -
-

- -

-
- - - - - - - - - -
char* mm_content_getmaintype (struct mm_content *  ct  ) 
-
-
- -

-Retrieves the main MIME type stored in a Content-Type object

-

Parameters:
- - -
ct A valid Content-Type object
-
-
Returns:
A pointer to the string representing the main type
- -
-

- -

-
- - - - - - - - - - - - - - - - - - -
char* mm_content_getparambyname (struct mm_content *  ct,
const char *  name 
)
-
-
- -

-Gets a parameter value from a Content-Type object.

-

Parameters:
- - - -
ct the Content-Type object
name the name of the parameter to retrieve
-
-
Returns:
The value of the parameter on success or a NULL pointer on failure
- -
-

- -

-
- - - - - - - - - -
char* mm_content_getsubtype (struct mm_content *  ct  ) 
-
-
- -

-Retrieves the sub MIME type stored in a Content-Type object

-

Parameters:
- - -
ct A valid Content-Type object
-
-
Returns:
A pointer to the string holding the current sub MIME type
- -
-

- -

-
- - - - - - - - - -
int mm_content_iscomposite (struct mm_content *  ct  ) 
-
-
- -

-Checks whether the Content-Type represents a composite message or not

-

Parameters:
- - -
ct A valid Content-Type object
-
-
Returns:
1 if the Content-Type object represents a composite message or 0 if not.
- -
-

- -

-
- - - - - - - - - -
int mm_content_isvalidencoding (const char *  encoding  ) 
-
-
- -

-Verifies whether a string represents a valid encoding or not.

-

Parameters:
- - -
encoding The string to verify
-
-
Returns:
1 if the encoding string is valid or 0 if not
- -
-

- -

-
- - - - - - - - - -
struct mm_content* mm_content_new (void   ) 
-
-
- -

-Creates a new object to hold a Content-Type representation. The allocated memory must later be freed using mm_content_free()

-

Returns:
An object representing a MIME Content-Type
-
See also:
mm_content_free
- -
-

- -

-
- - - - - - - - - -
char* mm_content_paramstostring (struct mm_content *  ct  ) 
-
-
- -

-Constructs a MIME conform string of Content-Type parameters.

-

Parameters:
- - -
ct A valid Content Type object
-
-
Returns:
A pointer to a string representing the Content-Type parameters in MIME terminology, or NULL if either the Content-Type object is invalid, has no parameters or no memory could be allocated.
-This function constructs a MIME conform string including all the parameters associated with the given Content-Type object. It should NOT be used if you need an opaque copy of the current MIME part (e.g. for PGP purposes). -
-

- -

-
- - - - - - - - - - - - - - - - - - -
int mm_content_setencoding (struct mm_content *  ct,
const char *  encoding 
)
-
-
- -

-Set the encoding of a MIME entitity according to a mapping table

-

Parameters:
- - - -
ct A valid content type object
encoding A string representing the content encoding
-
-
Returns:
0 if successfull or -1 if not (i.e. unknown content encoding)
- -
-

- -

-
- - - - - - - - - - - - - - - - - - - - - - - - -
int mm_content_setmaintype (struct mm_content *  ct,
char *  value,
int  copy 
)
-
-
- -

-Sets the MIME main type for a MIME Content-Type object

-

Parameters:
- - - - -
ct The MIME Content-Type object
value The value which to set the main type to
copy Whether to make a copy of the value (original value must be freed afterwards to prevent memory leaks).
-
- -

-

Bug:
The xfree() call could lead to undesirable results. Do we really need it?
- -
-

- -

-
- - - - - - - - - - - - - - - - - - - - - - - - -
int mm_content_setsubtype (struct mm_content *  ct,
char *  value,
int  copy 
)
-
-
- -

-Sets the MIME sub type for a MIME Content-Type object

-

Parameters:
- - - - -
ct The MIME Content-Type object
value The value which to set the sub type to
copy Whether to make a copy of the value (original value must be freed afterwards to prevent memory leaks).
-
- -

-

Bug:
The xfree() call could lead to undesirable results. Do we really need it?
- -
-

- -

-
- - - - - - - - - -
char* mm_content_tostring (struct mm_content *  ct  ) 
-
-
- -

-Creates a Content-Type header according to the object given

-

Parameters:
- - -
ct A valid Content-Type object
-
- -
-

-


Generated on Thu Mar 29 17:59:08 2007 for MiniMIME by  - -doxygen 1.5.1
- - diff --git a/main/minimime/mm-docs/html/group__context.html b/main/minimime/mm-docs/html/group__context.html deleted file mode 100644 index 832151ea1f..0000000000 --- a/main/minimime/mm-docs/html/group__context.html +++ /dev/null @@ -1,465 +0,0 @@ - - -MiniMIME: Accessing and manipulating MIME contexts - - - - -
-
-

Accessing and manipulating MIME contexts

- - - - - - - - - - - - - - - - - - - - - - - - - - - - -

Manipulating MiniMIME contexts

MM_CTX * mm_context_new (void)
void mm_context_free (MM_CTX *ctx)
int mm_context_attachpart (MM_CTX *ctx, struct mm_mimepart *part)
int mm_context_attachpart_after (MM_CTX *ctx, struct mm_mimepart *part, int pos)
int mm_context_deletepart (MM_CTX *ctx, int which, int freemem)
int mm_context_countparts (MM_CTX *ctx)
mm_mimepart * mm_context_getpart (MM_CTX *ctx, int which)
int mm_context_iscomposite (MM_CTX *ctx)
int mm_context_haswarnings (MM_CTX *ctx)
int mm_context_generateboundary (MM_CTX *ctx)
int mm_context_setpreamble (MM_CTX *ctx, char *preamble)
-char * mm_context_getpreamble (MM_CTX *ctx)
int mm_context_flatten (MM_CTX *ctx, char **flat, size_t *length, int flags)
-

Detailed Description

-Each message in MiniMIME is represented by a so called ``context''. A context holds all necessary information given about a MIME message, such as the envelope, all MIME parts etc.

Function Documentation

- -
-
- - - - - - - - - - - - - - - - - - -
int mm_context_attachpart (MM_CTX *  ctx,
struct mm_mimepart *  part 
)
-
-
- -

-Attaches a MIME part object to a MiniMIME context.

-

Parameters:
- - - -
ctx the MiniMIME context
part the MIME part object to attach
-
-
Returns:
0 on success or -1 on failure. Sets mm_errno on failure.
-This function attaches a MIME part to a context, appending it to the end of the message.

-The MIME part should be initialized before attaching it using mm_mimepart_new(). -

-

- -

-
- - - - - - - - - - - - - - - - - - - - - - - - -
int mm_context_attachpart_after (MM_CTX *  ctx,
struct mm_mimepart *  part,
int  pos 
)
-
-
- -

-Attaches a MIME part object to a MiniMIME context at a given position

-

Parameters:
- - - - -
ctx A valid MiniMIME context
part The MIME part object to attach
pos After which part to attach the object
-
-
Returns:
0 on success or -1 if the given position is invalid
-
See also:
mm_context_attachpart
-This function attaches a MIME part object after a given position in the specified context. If the position is invalid (out of range), the part will not get attached to the message and the function returns -1. If the index was in range, the MIME part will get attached after the MIME part at the given position, moving any possible following MIME parts one down the hierarchy. -
-

- -

-
- - - - - - - - - -
int mm_context_countparts (MM_CTX *  ctx  ) 
-
-
- -

-Counts the number of attached MIME part objects in a given MiniMIME context

-

Parameters:
- - -
ctx The MiniMIME context
-
-
Returns:
The number of attached MIME part objects
- -
-

- -

-
- - - - - - - - - - - - - - - - - - - - - - - - -
int mm_context_deletepart (MM_CTX *  ctx,
int  which,
int  freemem 
)
-
-
- -

-Deletes a MIME part object from a MiniMIME context

-

Parameters:
- - - - -
ctx A valid MiniMIME context object
which The number of the MIME part object to delete
freemem Whether to free the memory associated with the MIME part object
-
-
Returns:
0 on success or -1 on failure. Sets mm_errno on failure.
-This function deletes a MIME part from a given context. The MIME part to delete is specified as numerical index by the parameter ``which''. If the parameter ``freemem'' is set to anything greater than 0, the memory that is associated will be free'd by using mm_mimepart_free(), otherwise the memory is left untouched (if you still have a pointer to the MIME part around). -
-

- -

-
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
int mm_context_flatten (MM_CTX *  ctx,
char **  flat,
size_t *  length,
int  flags 
)
-
-
- -

-Creates an ASCII message of the specified context

-

Parameters:
- - - - -
ctx A valid MiniMIME context object
flat Where to store the message
flags Flags that affect the flattening process
-
-This function ``flattens'' a MiniMIME context, that is, it creates an ASCII represantation of the message the context contains. The flags can be a bitwise combination of the following constants:

-

    -
  • MM_FLATTEN_OPAQUE : use opaque MIME parts when flattening
  • MM_FLATTEN_SKIPENVELOPE : do not flatten the envelope part
-

-Great care is taken to not produce invalid MIME output. -

-

- -

-
- - - - - - - - - -
void mm_context_free (MM_CTX *  ctx  ) 
-
-
- -

-Releases a MiniMIME context object

-

Parameters:
- - -
ctx A valid MiniMIME context
-
-
See also:
mm_context_new
-This function releases all memory associated with MiniMIME context object that was created using mm_context_new(). It will also release all memory used for the MIME parts attached, and their specific properties (such as Content-Type information, headers, and the body data). -
-

- -

-
- - - - - - - - - -
int mm_context_generateboundary (MM_CTX *  ctx  ) 
-
-
- -

-Generates a generic boundary string for a given context

-

Parameters:
- - -
ctx A valid MiniMIME context
-
-
Returns:
0 on success or -1 on failure
-This function generates a default boundary string for the given context. If there is already a boundary for the context, the memory will be free()'d. -
-

- -

-
- - - - - - - - - - - - - - - - - - -
struct mm_mimepart* mm_context_getpart (MM_CTX *  ctx,
int  which 
)
-
-
- -

-Gets a specified MIME part object from a MimeMIME context

-

Parameters:
- - - -
ctx The MiniMIME context
which The number of the MIME part object to retrieve
-
-
Returns:
The requested MIME part object on success or a NULL pointer if there is no such part.
- -
-

- -

-
- - - - - - - - - -
int mm_context_haswarnings (MM_CTX *  ctx  ) 
-
-
- -

-Checks whether there are any warnings associated with a given context

-

Parameters:
- - -
ctx A valid MiniMIME context
-
-
Returns:
1 if there are warnings associated with the context, otherwise 0
- -
-

- -

-
- - - - - - - - - -
int mm_context_iscomposite (MM_CTX *  ctx  ) 
-
-
- -

-Checks whether a given context represents a composite (multipart) message

-

Parameters:
- - -
ctx A valid MiniMIME context object
-
-
Returns:
1 if the context is a composite message or 0 if it's flat
- -
-

- -

-
- - - - - - - - - -
MM_CTX* mm_context_new (void   ) 
-
-
- -

-Creates a new MiniMIME context object.

-

Returns:
a new MiniMIME context object
-
See also:
mm_context_free
-This function creates a new MiniMIME context, which will hold a message. The memory needed is allocated dynamically and should later be free'd using mm_context_free().

-Before a context can be created, the MiniMIME library needs to be initialized properly using mm_library_init(). -

-

- -

-
- - - - - - - - - - - - - - - - - - -
int mm_context_setpreamble (MM_CTX *  ctx,
char *  preamble 
)
-
-
- -

-Sets a preamble for the given MiniMIME context

-

Parameters:
- - - -
ctx A valid MiniMIME context
preamble The preamble to set
-
-
Returns:
0 on success or -1 on failure
-This function sets the MIME preamble (the text between the end of envelope headers and the beginning of the first MIME part) for a given context object. If preamble is a NULL-pointer then the preamble will be deleted, and the currently associated memory will be free automagically. -
-

-


Generated on Thu Mar 29 17:59:08 2007 for MiniMIME by  - -doxygen 1.5.1
- - diff --git a/main/minimime/mm-docs/html/group__envelope.html b/main/minimime/mm-docs/html/group__envelope.html deleted file mode 100644 index 9f19e734f9..0000000000 --- a/main/minimime/mm-docs/html/group__envelope.html +++ /dev/null @@ -1,172 +0,0 @@ - - -MiniMIME: Accessing and manipulating a message's envelope - - - - -
-
-

Accessing and manipulating a message's envelope

- - - - - - - - -

Accessing and manipulating a message's envelope

int mm_envelope_getheaders (MM_CTX *ctx, char **result, size_t *length)
int mm_envelope_setheader (MM_CTX *ctx, const char *name, const char *fmt,...)
int mm_envelope_getrecipients (MM_CTX *ctx, char **result, size_t *length)
-

Function Documentation

- -
-
- - - - - - - - - - - - - - - - - - - - - - - - -
int mm_envelope_getheaders (MM_CTX *  ctx,
char **  result,
size_t *  length 
)
-
-
- -

-Gets an ASCII representation of all envelope headers

-

Parameters:
- - - - -
ctx A valid MiniMIME context
result Where to store the resulting ASCII headers
length Where to store the length of the result
-
-
Returns:
0 on success or -1 on failure.
-
Note:
Sets mm_errno on failure
-This is mainly a convinience function. It constructs an ASCII representation from all of the message's envelope headers and stores the result in headers. Memory is allocated dynamically, and the total length of the result is stored in length. This function takes care that the output is MIME conform, and folds long lines according to the MIME standard at position 78 of the string. It also nicely formats all MIME related header fields, such as the Content-Type header.

-Since the memory needed to store the result is allocated dynamically, one should take care of freeing it again when it's not needed anymore. If an error occurs, *result will be set to NULL, *length will be set to zero and mm_errno will be set to a reasonable value. -

-

- -

-
- - - - - - - - - - - - - - - - - - - - - - - - -
int mm_envelope_getrecipients (MM_CTX *  ctx,
char **  result,
size_t *  length 
)
-
-
- -

-Gets the list of recipients for a MIME message

-

Parameters:
- - - - -
ctx A valid MiniMIME context
result Where to store the result
length Where to store the length of the result
-
-
Returns:
0 on success or -1 on error
-
Note:
Sets mm_errno on error
-This functions gets the list of recipients for a given MIME message. It does so by concatenating the "From" and "Cc" header fields, and storing the results in recipients. The memory needed to store the result is allocated dynamically, and the total length of the result is stored in length.

-One should take care to free() the result once it's not needed anymore. -

-

- -

-
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
int mm_envelope_setheader (MM_CTX *  ctx,
const char *  name,
const char *  fmt,
  ... 
)
-
-
- -

-Sets a header field in the envelope

-

Parameters:
- - - - -
ctx A valid MiniMIME context
name The name of the header field to set
fmt A format string specifying the value of the header field
-
-
Returns:
0 on success or -1 on failure
-This function generates a new MIME header and attaches it to the first MIME part (the envelope) found in the given context. If no part is attached already, the function will return an error. The function will store a copy of ``name'' as the header's name field, and dynamically allocate the memory needed to build the format string. -
-

-


Generated on Thu Mar 29 17:59:08 2007 for MiniMIME by  - -doxygen 1.5.1
- - diff --git a/main/minimime/mm-docs/html/group__error.html b/main/minimime/mm-docs/html/group__error.html deleted file mode 100644 index 739ea03e83..0000000000 --- a/main/minimime/mm-docs/html/group__error.html +++ /dev/null @@ -1,108 +0,0 @@ - - -MiniMIME: MiniMIME error functions - - - - -
-
-

MiniMIME error functions

- - - - - - - - -

Functions

void mm_error_init (void)
void mm_error_setmsg (const char *fmt,...)
char * mm_error_string (void)
-

Function Documentation

- -
-
- - - - - - - - - -
void mm_error_init (void   ) 
-
-
- -

-Initializes the global error object

-This function initializes the global error object mm_error. This must be done when the library is initialized, and is automatically called from mm_init_library(). -

-

- -

-
- - - - - - - - - - - - - - - - - - -
void mm_error_setmsg (const char *  fmt,
  ... 
)
-
-
- -

-Sets a descriptive error message

-

Parameters:
- - -
fmt The error message as format string
-
-This function is called from the various MiniMIME modules in case an error occured. Should never be called by the user. -
-

- -

-
- - - - - - - - - -
char* mm_error_string (void   ) 
-
-
- -

-Retrieves the current error message

-

Returns:
The currently set error message
-This function can be used to retrieve a descriptive error message for the current error, much like strerror() function of libc. When this function is called without an error being set, it returns the string "No error". The string returned does not need to be freed, since it is not dynamically allocated by the library. -
-

-


Generated on Thu Mar 29 17:59:08 2007 for MiniMIME by  - -doxygen 1.5.1
- - diff --git a/main/minimime/mm-docs/html/group__mimepart.html b/main/minimime/mm-docs/html/group__mimepart.html deleted file mode 100644 index 84806c80d3..0000000000 --- a/main/minimime/mm-docs/html/group__mimepart.html +++ /dev/null @@ -1,705 +0,0 @@ - - -MiniMIME: Accessing and manipulating MIME parts - - - - -
-
-

Accessing and manipulating MIME parts

- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -

Creating and destroying MIME parts

mm_mimepart * mm_mimepart_new (void)
mm_mimepart * mm_mimepart_fromfile (const char *filename)
void mm_mimepart_free (struct mm_mimepart *part)

Accessing the MIME part's mail header

int mm_mimepart_attachheader (struct mm_mimepart *part, struct mm_mimeheader *header)
int mm_mimepart_countheaders (struct mm_mimepart *part)
int mm_mimepart_countheaderbyname (struct mm_mimepart *part, const char *name)
mm_mimeheader * mm_mimepart_getheaderbyname (struct mm_mimepart *part, const char *name, int idx)
const char * mm_mimepart_getheadervalue (struct mm_mimepart *part, const char *name, int idx)
int mm_mimepart_headers_start (struct mm_mimepart *part, struct mm_mimeheader **id)
mm_mimeheader * mm_mimepart_headers_next (struct mm_mimepart *part, struct mm_mimeheader **id)

Accessing and manipulating the MIME part's body

char * mm_mimepart_getbody (struct mm_mimepart *part, int opaque)
void mm_mimepart_setbody (struct mm_mimepart *part, const char *data, int opaque)
size_t mm_mimepart_getlength (struct mm_mimepart *part)
char * mm_mimepart_decode (struct mm_mimepart *part)
int mm_mimepart_flatten (struct mm_mimepart *part, char **result, size_t *length, int opaque)
int mm_mimepart_setdefaultcontenttype (struct mm_mimepart *part, int composite)

Accessing the MIME part's Content-Type information

void mm_mimepart_attachcontenttype (struct mm_mimepart *part, struct mm_content *ct)
mm_content * mm_mimepart_gettype (struct mm_mimepart *part)
-

Detailed Description

-MIME parts, also called entities, represent the structure of a MIME message. ``Normal'' internet messages have only a single part, and are called ``flat'' messages. Multipart messages have more then one part, and each MIME part can have it's own subset of headers.

-Provided here are functions to easily access all informations from a MIME part, including their specific headers and bodies.


Function Documentation

- -
-
- - - - - - - - - - - - - - - - - - -
void mm_mimepart_attachcontenttype (struct mm_mimepart *  part,
struct mm_content *  ct 
)
-
-
- -

-Attaches a context type object to a MIME part

-

Parameters:
- - - -
part A valid MIME part object
ct The content type object to attach
-
-
Returns:
Nothing
-This function attaches a Content-Type object to a MIME part. It does not care whether the Content-Type suites the actual content in the MIME part, so the programmer should take care of that. -
-

- -

-
- - - - - - - - - - - - - - - - - - -
int mm_mimepart_attachheader (struct mm_mimepart *  part,
struct mm_mimeheader *  header 
)
-
-
- -

-Attaches a mm_mimeheader object to a MIME part

-

Parameters:
- - - -
part A valid MIME part object
header A valid MIME header object
-
-
Returns:
0 if successfull or -1 if the header could not be attached
- -
-

- -

-
- - - - - - - - - - - - - - - - - - -
int mm_mimepart_countheaderbyname (struct mm_mimepart *  part,
const char *  name 
)
-
-
- -

-Retrieves the number of MIME headers with a given name in a MIME part

-

Parameters:
- - - -
part A valid MIME part object
name The name of the MIME header which to count for
-
-
Returns:
The number of MIME headers within the MIME part
- -
-

- -

-
- - - - - - - - - -
int mm_mimepart_countheaders (struct mm_mimepart *  part  ) 
-
-
- -

-Retrieves the number of MIME headers available in a MIME part

-

Parameters:
- - -
part A valid MIME part object
-
-
Returns:
The number of MIME headers within the MIME part
- -
-

- -

-
- - - - - - - - - -
char* mm_mimepart_decode (struct mm_mimepart *  part  ) 
-
-
- -

-Decodes a MIME part according to it's encoding using MiniMIME codecs

-

Parameters:
- - -
A valid MIME part object
-
-
Returns:
0 if the MIME part could be successfully decoded or -1 if not
-
Note:
Sets mm_errno on error
-This function decodes the body of a MIME part with a registered decoder according to it's Content-Transfer-Encoding header field. -
-

- -

-
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
int mm_mimepart_flatten (struct mm_mimepart *  part,
char **  result,
size_t *  length,
int  opaque 
)
-
-
- -

-Creates an ASCII representation of the given MIME part

-

Parameters:
- - - - - -
part A valid MIME part object
result Where to store the result
length Where to store the length of the result
opaque Whether to use the opaque MIME part 0 on success or -1 on error.
-
-
See also:
mm_context_flatten
-This function creates an ASCII representation of a given MIME part. It will dynamically allocate the memory needed and stores the result in the memory region pointed to by result. The length of the result will be stored in length. If opaque is set to 1, mm_mimepart_flatten will store an opaque version of the MIME part in result, which means no headers will be created or sanitized. This is particulary useful if the part is digitally signed by e.g. PGP, and the signature spans the header fields of the part in question. -
-

- -

-
- - - - - - - - - -
void mm_mimepart_free (struct mm_mimepart *  part  ) 
-
-
- -

-Frees all memory allocated by a mm_mimepart object.

-

Parameters:
- - -
part A pointer to an allocated mm_mimepart object
-
-
See also:
mm_mimepart_new
- -
-

- -

-
- - - - - - - - - -
struct mm_mimepart* mm_mimepart_fromfile (const char *  filename  ) 
-
-
- -

-Creates a MIME part from a file

-

Parameters:
- - -
filename The name of the file to create the MIME part from
-
-
Returns:
A pointer to a new MIME part object
-This function creates a new MIME part object from a file. The object should be freed using mm_mimepart_free() later on. This function does NOT set the Content-Type and neither does any encoding work. -
-

- -

-
- - - - - - - - - - - - - - - - - - -
char* mm_mimepart_getbody (struct mm_mimepart *  part,
int  opaque 
)
-
-
- -

-Gets the pointer to the MIME part's body data

-

Parameters:
- - - -
part A valid MIME part object
opaque Whether to get the opaque part or not
-
-
Returns:
A pointer to the MIME part's body
-
See also:
mm_mimepart_setbody
- -
-

- -

-
- - - - - - - - - - - - - - - - - - - - - - - - -
struct mm_mimeheader* mm_mimepart_getheaderbyname (struct mm_mimepart *  part,
const char *  name,
int  idx 
)
-
-
- -

-Get a MIME header object from a MIME part

-

Parameters:
- - - - -
part A valid MIME part object
name The name of the MIME header which to retrieve
idx Which header field to get (in case of multiple headers of the same name).
-
-
Returns:
A pointer to the requested MIME header on success, or NULL if there either isn't a header with the requested name or idx is out of range.
- -
-

- -

-
- - - - - - - - - - - - - - - - - - - - - - - - -
const char* mm_mimepart_getheadervalue (struct mm_mimepart *  part,
const char *  name,
int  idx 
)
-
-
- -

-Gets the value of a MIME header object

-

Parameters:
- - - - -
part A valid MIME part object
name The name of the header field to get the value from
idx The index of the header field to get, in case there are multiple headers with the same name.
-
-
Returns:
A pointer to the requested value on success, or NULL if there either isn't a header with the requested name or idx is out of range.
- -
-

- -

-
- - - - - - - - - -
size_t mm_mimepart_getlength (struct mm_mimepart *  part  ) 
-
-
- -

-Gets the length of a given MIME part object

-

Parameters:
- - -
part A valid MIME part object
-
-
Returns:
The size of the part's body in byte.
-This function returns the total length of the given MIME part's body. The length does not include the headers of the MIME parts. If the function returns 0, no body part is set currently. -
-

- -

-
- - - - - - - - - -
struct mm_content* mm_mimepart_gettype (struct mm_mimepart *  part  ) 
-
-
- -

-Gets the Content-Type of a given MIME part object

-

Parameters:
- - -
part A valid MIME part object
-
-
Returns:
The Content-Type object of the specified MIME part
-This function returns a pointer to the Content-Type object of the given MIME part. This pointer might be set to NULL, indicating that there is no Content-Type object for the given MIME part currently. -
-

- -

-
- - - - - - - - - - - - - - - - - - -
struct mm_mimeheader* mm_mimepart_headers_next (struct mm_mimepart *  part,
struct mm_mimeheader **  id 
)
-
-
- -

-Returns the next MIME header of a given MIME part object

-

Parameters:
- - - -
part A valid MIME part object
id A previously initialized MIME header object
-
-
Returns:
A pointer to the MIME header object or NULL if end of headers was reached.
-
See also:
mm_mimepart_headers_start
- -
-

- -

-
- - - - - - - - - - - - - - - - - - -
int mm_mimepart_headers_start (struct mm_mimepart *  part,
struct mm_mimeheader **  id 
)
-
-
- -

-Initializes a header loop for a given MIME part

-

Parameters:
- - - -
part A valid MIME part object
id The address of a MIME header object (to allow reentrance)
-
-
Returns:
0 on success or -1 on failure
-
See also:
mm_mimepart_headers_next
-Looping through headers can be done in the following way:

-

 struct mm_mimeheader *header, *lheader;
-
- mm_mimepart_headers_start(part, &lheader);
-
- while ((header = mm_mimepart_headers_next(part, &lheader)) != NULL) {
-        printf("%s: %s\n", header->name, header->value);        
- }
-

-For convienience, the macro mm_mimepart_headers_foreach() can be used to loop through headers in a one-shot manner. -

-

- -

-
- - - - - - - - - -
struct mm_mimepart* mm_mimepart_new (void   ) 
-
-
- -

-Allocates memory for a new mm_mimepart structure and initializes it.

-

Returns:
A pointer to a struct of type mm_mimeheader or NULL on failure
-
See also:
mm_mimepart_free
-
Note:
The memory must be freed by using mm_mimepart_free() later on.
- -
-

- -

-
- - - - - - - - - - - - - - - - - - - - - - - - -
void mm_mimepart_setbody (struct mm_mimepart *  part,
const char *  data,
int  opaque 
)
-
-
- -

-Sets the MIME part's body data

-

Parameters:
- - - -
part A valid MIME part object
data A pointer to the data which to set
-
-
See also:
mm_mimepart_getbody
-This functions sets the body data for a given MIME part. The string pointed to by data must be NUL-terminated. The data is copied into the MIME part's body, and thus, the memory pointed to by data can be freed after the operation. -
-

- -

-
- - - - - - - - - - - - - - - - - - -
int mm_mimepart_setdefaultcontenttype (struct mm_mimepart *  part,
int  composite 
)
-
-
- -

-Sets the default Content-Type for a given MIME part

-

Parameters:
- - - -
part A valid MIME part object
part Whether the Content-Type should be for composite or not
-
-
Returns:
0 on success or -1 on failure
-This function sets a default Content-Type according to RFC 2045 with a value of "text/plain; charset="us-ascii"". This function should only be used if the MIME part in question does not have a valid Content-Type specification. -
-

-


Generated on Thu Mar 29 17:59:09 2007 for MiniMIME by  - -doxygen 1.5.1
- - diff --git a/main/minimime/mm-docs/html/group__mimeutil.html b/main/minimime/mm-docs/html/group__mimeutil.html deleted file mode 100644 index a2b128434f..0000000000 --- a/main/minimime/mm-docs/html/group__mimeutil.html +++ /dev/null @@ -1,22 +0,0 @@ - - -MiniMIME: MIME related utility functions - - - - -
-
-

MIME related utility functions

- -
-
Generated on Thu Mar 29 17:59:09 2007 for MiniMIME by  - -doxygen 1.5.1
- - diff --git a/main/minimime/mm-docs/html/group__param.html b/main/minimime/mm-docs/html/group__param.html deleted file mode 100644 index 93e8219607..0000000000 --- a/main/minimime/mm-docs/html/group__param.html +++ /dev/null @@ -1,273 +0,0 @@ - - -MiniMIME: Accessing and manipulating MIME parameters - - - - -
-
-

Accessing and manipulating MIME parameters

- - - - - - - - - - - - - - - - - -

Functions for manipulating MIME parameters

MIME parameters are properties attached to certain MIME headers, such as Content-Type and Content-Disposition. MIME parameters have a textual representations as in name=value. They contain important information about the MIME structure of a message, such as the boundary string used, which charset was used to encode the message and so on. This module provides simple to use functions to query or set MIME parameters.

-Each MIME header may hold an arbitrary amount of such parameters, which are delimeted by each other with a semicolon.

mm_param * mm_param_new (void)
void mm_param_free (struct mm_param *param)
mm_param * mm_param_generate (const char *name, const char *value)
char * mm_param_setname (struct mm_param *param, const char *name, int copy)
char * mm_param_setvalue (struct mm_param *param, const char *value, int copy)
const char * mm_param_getname (struct mm_param *param)
const char * mm_param_getvalue (struct mm_param *param)
-

Function Documentation

- -
-
- - - - - - - - - -
void mm_param_free (struct mm_param *  param  ) 
-
-
- -

-Releases all memory associated with a MIME parameter object.

-

Parameters:
- - -
param A valid MIME parameter object to be freed
-
-
Returns:
Nothing
-
See also:
mm_param_new
- -
-

- -

-
- - - - - - - - - - - - - - - - - - -
struct mm_param* mm_param_generate (const char *  name,
const char *  value 
)
-
-
- -

-Generates a new Content-Type parameter with the given name and value

-

Parameters:
- - - -
name The name of the MIME parameter
value The value of the MIME parameter
-
-
Returns:
A new MIME parameter object
-
See also:
mm_param_free

-mm_param_new

-This function generates a new MIME parameter, with the name and value given as the arguments. The needed memory for the operation is allocated dynamically. It stores a copy of name and value in the actual object, so the memory holding the arguments can safely be freed after successfull return of this function. -
-

- -

-
- - - - - - - - - -
const char* mm_param_getname (struct mm_param *  param  ) 
-
-
- -

-Gets the name of a MIME parameter object

-

Parameters:
- - -
param A valid MIME parameter object
-
-
Returns:
The name of the MIME parameter
- -
-

- -

-
- - - - - - - - - -
const char* mm_param_getvalue (struct mm_param *  param  ) 
-
-
- -

-Gets the value of a MIME parameter object

-

Parameters:
- - -
param A valid MIME parameter object
-
-
Returns:
The value of the MIME parameter
- -
-

- -

-
- - - - - - - - - -
struct mm_param* mm_param_new (void   ) 
-
-
- -

-Creates a new object to hold a MIME parameter.

-

Returns:
An object representing a MIME parameter
-
See also:
mm_param_free
-
Note:
The allocated memory must later be freed using mm_param_free()
- -
-

- -

-
- - - - - - - - - - - - - - - - - - - - - - - - -
char* mm_param_setname (struct mm_param *  param,
const char *  name,
int  copy 
)
-
-
- -

-Sets the name of the given MIME parameter

-

Parameters:
- - - - -
param A valid MIME parameter object
name The new name of the parameter
copy If set to > 0, copy the value stored in name
-
-
Returns:
The address of the previous name for passing to free()
- -
-

- -

-
- - - - - - - - - - - - - - - - - - - - - - - - -
char* mm_param_setvalue (struct mm_param *  param,
const char *  value,
int  copy 
)
-
-
- -

-Sets the value of the given MIME parameter

-

Parameters:
- - - - -
param A valid MIME parameter object
name The new value for the parameter
copy If set to > 0, copy the value stored in value
-
-
Returns:
The address of the previous value for passing to free()
- -
-

-


Generated on Thu Mar 29 17:59:09 2007 for MiniMIME by  - -doxygen 1.5.1
- - diff --git a/main/minimime/mm-docs/html/group__util.html b/main/minimime/mm-docs/html/group__util.html deleted file mode 100644 index 4ea219224d..0000000000 --- a/main/minimime/mm-docs/html/group__util.html +++ /dev/null @@ -1,280 +0,0 @@ - - -MiniMIME: General purpose utility functions - - - - -
-
-

General purpose utility functions

- - - - - - - - - - - - - - - - - - - - - -

Utility functions

-void xfree (void *)
-char * xstrdup (const char *)

Functions

void * xmalloc (size_t size)
void * xrealloc (void *p, size_t size)
char * mm_unquote (const char *string)
char * mm_uncomment (const char *string)
char * xstrsep (char **stringp, const char *delim)
char * mm_stripchars (char *input, char *strip)
char * mm_addchars (char *input, char *add, u_int16_t linelength)
-

Function Documentation

- -
-
- - - - - - - - - - - - - - - - - - - - - - - - -
char* mm_addchars (char *  input,
char *  add,
u_int16_t  linelength 
)
-
-
- -

-Adds characters to a string at given positions

-

Parameters:
- - - - -
input The string to which to add characters
add The character string to add
linelength The position where to add the character
-
-
Returns:
A copy of the string with characters added
-This function adds the characters add at each linelength positions and returns this new string. -
-

- -

-
- - - - - - - - - - - - - - - - - - -
char* mm_stripchars (char *  input,
char *  strip 
)
-
-
- -

-Strips a given character set from a string

-

Parameters:
- - - -
input The string which to strip
strip The character set to strip off
-
-
Returns:
A copy of the original string with all chars stripped
- -
-

- -

-
- - - - - - - - - -
char* mm_uncomment (const char *  string  ) 
-
-
- -

-Removes MIME comments from a string

-

Parameters:
- - -
string The string to uncomment
-
-
Returns:
A pointer to the uncommented string or NULL on error. Sets mm_errno.
-This function removes MIME comments from a string (included in parantheses). It returns a pointer to a newly allocated memory region in which the uncommented string is stored. The returned string needs to be freed when it's not used anymore. -
-

- -

-
- - - - - - - - - -
char* mm_unquote (const char *  string  ) 
-
-
- -

-Unquotes a string

-

Parameters:
- - -
string The quoted string to unquote
-
-
Returns:
A pointer to the unquoted string
-This function unquotes a string. That is, it returns a pointer to a newly allocated memory region in which the unquoted string is stored. Only leading and trailing double-qoutes are removed. The string needs to be freed when it is not needed anymore. -
-

- -

-
- - - - - - - - - -
void* xmalloc (size_t  size  ) 
-
-
- -

-Allocates a block of memory

-

Parameters:
- - -
size The size of the memory region to allocate
-
-
Returns:
A pointer to the allocated memory region
-xmalloc() calls abort() if either the size argument is negative or the requested memory amount could not be allocated via an assert() call. -
-

- -

-
- - - - - - - - - - - - - - - - - - -
void* xrealloc (void *  p,
size_t  size 
)
-
-
- -

-realloc() wrapper

-

Parameters:
- - - -
p Pointer to a memory region which should be reallocated
size The new size of the memory region
-
-
Returns:
A pointer to the reallocated memory region
-xrealloc() is a wrapper around realloc() which calls abort() if either the size argument is negative or the requested memory amount could not be allocated. -
-

- -

-
- - - - - - - - - - - - - - - - - - -
char* xstrsep (char **  stringp,
const char *  delim 
)
-
-
- -

-separate strings

-

Parameters:
- - - -
stringp A pointer to the string being splitted
delim The delimeter string
-
-This function works similar to strsep(), with the difference that delim is treated as a whole. -
-

-


Generated on Thu Mar 29 17:59:09 2007 for MiniMIME by  - -doxygen 1.5.1
- - diff --git a/main/minimime/mm-docs/html/index.html b/main/minimime/mm-docs/html/index.html deleted file mode 100644 index 8acc2a634e..0000000000 --- a/main/minimime/mm-docs/html/index.html +++ /dev/null @@ -1,21 +0,0 @@ - - -MiniMIME: Main Page - - - - -
-
-

MiniMIME Documentation

-

-


Generated on Thu Mar 29 17:59:08 2007 for MiniMIME by  - -doxygen 1.5.1
- - diff --git a/main/minimime/mm-docs/html/mimeparser_8h-source.html b/main/minimime/mm-docs/html/mimeparser_8h-source.html deleted file mode 100644 index 0350006424..0000000000 --- a/main/minimime/mm-docs/html/mimeparser_8h-source.html +++ /dev/null @@ -1,42 +0,0 @@ - - -MiniMIME: mimeparser.h Source File - - - - -
-
-
-
-

mimeparser.h

00001 #ifndef _MIMEPARSER_H_INCLUDED
-00002 #define _MIMEPARSER_H_INCLUDED
-00003 
-00007 int     count_lines(char *);
-00008 void    mimieparser_yyerror(const char *);
-00009 int     dprintf2(const char *, ...);
-00010 int     mimeparser_yyparse(void);
-00011 int     mimeparser_yylex(void);
-00012 int     mimeparser_yyerror(const char *);
-00013 
-00014 struct s_position
-00015 {
-00016         size_t opaque_start;
-00017         size_t start;
-00018         size_t end;
-00019 };
-00020 
-00021 #endif /* ! _MIMEPARSER_H_INCLUDED */
-

Generated on Thu Mar 29 17:59:08 2007 for MiniMIME by  - -doxygen 1.5.1
- - diff --git a/main/minimime/mm-docs/html/mimeparser_8tab_8h-source.html b/main/minimime/mm-docs/html/mimeparser_8tab_8h-source.html deleted file mode 100644 index 81f10816ce..0000000000 --- a/main/minimime/mm-docs/html/mimeparser_8tab_8h-source.html +++ /dev/null @@ -1,136 +0,0 @@ - - -MiniMIME: mimeparser.tab.h Source File - - - - -
-
-
-
-

mimeparser.tab.h

00001 /* A Bison parser, made by GNU Bison 2.3.  */
-00002 
-00003 /* Skeleton interface for Bison's Yacc-like parsers in C
-00004 
-00005    Copyright (C) 1984, 1989, 1990, 2000, 2001, 2002, 2003, 2004, 2005, 2006
-00006    Free Software Foundation, Inc.
-00007 
-00008    This program is free software; you can redistribute it and/or modify
-00009    it under the terms of the GNU General Public License as published by
-00010    the Free Software Foundation; either version 2, or (at your option)
-00011    any later version.
-00012 
-00013    This program is distributed in the hope that it will be useful,
-00014    but WITHOUT ANY WARRANTY; without even the implied warranty of
-00015    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
-00016    GNU General Public License for more details.
-00017 
-00018    You should have received a copy of the GNU General Public License
-00019    along with this program; if not, write to the Free Software
-00020    Foundation, Inc., 51 Franklin Street, Fifth Floor,
-00021    Boston, MA 02110-1301, USA.  */
-00022 
-00023 /* As a special exception, you may create a larger work that contains
-00024    part or all of the Bison parser skeleton and distribute that work
-00025    under terms of your choice, so long as that work isn't itself a
-00026    parser generator using the skeleton or a modified version thereof
-00027    as a parser skeleton.  Alternatively, if you modify or redistribute
-00028    the parser skeleton itself, you may (at your option) remove this
-00029    special exception, which will cause the skeleton and the resulting
-00030    Bison output files to be licensed under the GNU General Public
-00031    License without this special exception.
-00032 
-00033    This special exception was added by the Free Software Foundation in
-00034    version 2.2 of Bison.  */
-00035 
-00036 /* Tokens.  */
-00037 #ifndef YYTOKENTYPE
-00038 # define YYTOKENTYPE
-00039    /* Put the tokens into the symbol table, so that GDB and other debuggers
-00040       know about them.  */
-00041    enum yytokentype {
-00042      ANY = 258,
-00043      COLON = 259,
-00044      DASH = 260,
-00045      DQUOTE = 261,
-00046      ENDOFHEADERS = 262,
-00047      EOL = 263,
-00048      EOM = 264,
-00049      EQUAL = 265,
-00050      MIMEVERSION_HEADER = 266,
-00051      SEMICOLON = 267,
-00052      CONTENTDISPOSITION_HEADER = 268,
-00053      CONTENTENCODING_HEADER = 269,
-00054      CONTENTTYPE_HEADER = 270,
-00055      MAIL_HEADER = 271,
-00056      HEADERVALUE = 272,
-00057      BOUNDARY = 273,
-00058      ENDBOUNDARY = 274,
-00059      CONTENTTYPE_VALUE = 275,
-00060      TSPECIAL = 276,
-00061      WORD = 277,
-00062      BODY = 278,
-00063      PREAMBLE = 279,
-00064      POSTAMBLE = 280
-00065    };
-00066 #endif
-00067 /* Tokens.  */
-00068 #define ANY 258
-00069 #define COLON 259
-00070 #define DASH 260
-00071 #define DQUOTE 261
-00072 #define ENDOFHEADERS 262
-00073 #define EOL 263
-00074 #define EOM 264
-00075 #define EQUAL 265
-00076 #define MIMEVERSION_HEADER 266
-00077 #define SEMICOLON 267
-00078 #define CONTENTDISPOSITION_HEADER 268
-00079 #define CONTENTENCODING_HEADER 269
-00080 #define CONTENTTYPE_HEADER 270
-00081 #define MAIL_HEADER 271
-00082 #define HEADERVALUE 272
-00083 #define BOUNDARY 273
-00084 #define ENDBOUNDARY 274
-00085 #define CONTENTTYPE_VALUE 275
-00086 #define TSPECIAL 276
-00087 #define WORD 277
-00088 #define BODY 278
-00089 #define PREAMBLE 279
-00090 #define POSTAMBLE 280
-00091 
-00092 
-00093 
-00094 
-00095 #if ! defined YYSTYPE && ! defined YYSTYPE_IS_DECLARED
-00096 typedef union YYSTYPE
-00097 #line 84 "mimeparser.y"
-00098 {
-00099         int number;
-00100         char *string;
-00101         struct s_position position;
-00102 }
-00103 /* Line 1489 of yacc.c.  */
-00104 #line 105 "mimeparser.tab.h"
-00105         YYSTYPE;
-00106 # define yystype YYSTYPE /* obsolescent; will be withdrawn */
-00107 # define YYSTYPE_IS_DECLARED 1
-00108 # define YYSTYPE_IS_TRIVIAL 1
-00109 #endif
-00110 
-00111 extern YYSTYPE mimeparser_yylval;
-00112 
-

Generated on Thu Mar 29 17:59:08 2007 for MiniMIME by  - -doxygen 1.5.1
- - diff --git a/main/minimime/mm-docs/html/mm_8h-source.html b/main/minimime/mm-docs/html/mm_8h-source.html deleted file mode 100644 index cc5285c219..0000000000 --- a/main/minimime/mm-docs/html/mm_8h-source.html +++ /dev/null @@ -1,382 +0,0 @@ - - -MiniMIME: mm.h Source File - - - - -
-
-
-
-

mm.h

00001 /*
-00002  * $Id$
-00003  *
-00004  * MiniMIME - a library for handling MIME messages
-00005  *
-00006  * Copyright (C) 2003 Jann Fischer <rezine@mistrust.net>
-00007  * All rights reserved.
-00008  *
-00009  * Redistribution and use in source and binary forms, with or without
-00010  * modification, are permitted provided that the following conditions
-00011  * are met:
-00012  *
-00013  * 1. Redistributions of source code must retain the above copyright
-00014  *    notice, this list of conditions and the following disclaimer.
-00015  * 2. Redistributions in binary form must reproduce the above copyright
-00016  *    notice, this list of conditions and the following disclaimer in the
-00017  *    documentation and/or other materials provided with the distribution.
-00018  * 3. Neither the name of the author nor the names of the contributors
-00019  *    may be used to endorse or promote products derived from this software
-00020  *    without specific prior written permission.
-00021  *
-00022  * THIS SOFTWARE IS PROVIDED BY JANN FISCHER AND CONTRIBUTORS ``AS IS'' AND
-00023  * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
-00024  * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
-00025  * ARE DISCLAIMED.  IN NO EVENT SHALL JANN FISCHER OR THE VOICES IN HIS HEAD
-00026  * BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
-00027  * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
-00028  * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
-00029  * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
-00030  * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
-00031  * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF
-00032  * THE POSSIBILITY OF SUCH DAMAGE.
-00033  */
-00034 
-00035 #ifndef _MM_H_INCLUDED
-00036 #define _MM_H_INCLUDED
-00037 
-00038 #include <sys/types.h>
-00039 #include <assert.h>
-00040 #include "mm_queue.h"
-00041 #include "mm_mem.h"
-00042 
-00043 #define MM_MIME_LINELEN 998
-00044 #define MM_BASE64_LINELEN 76
-00045 
-00046 TAILQ_HEAD(mm_mimeheaders, mm_mimeheader);
-00047 TAILQ_HEAD(mm_mimeparts, mm_mimepart);
-00048 TAILQ_HEAD(mm_params, mm_param);
-00049 SLIST_HEAD(mm_codecs, mm_codec);
-00050 SLIST_HEAD(mm_warnings, mm_warning);
-00051 
-00052 /*
-00053  * Parser modes
-00054  */
-00055 enum mm_parsemodes
-00056 {
-00058         MM_PARSE_LOOSE = 0,
-00060         MM_PARSE_STRICT
-00061 };
-00062 
-00063 /*
-00064  * Available parser flags
-00065  */
-00066 enum mm_parseflags
-00067 {
-00068         MM_PARSE_NONE = (1L << 0),
-00069         MM_PARSE_STRIPCOMMENTS = (1L << 1)
-00070 };
-00071 
-00072 /*
-00073  * Enumeration of MIME encodings
-00074  */
-00075 enum mm_encoding
-00076 {
-00077         MM_ENCODING_NONE = 0,
-00078         MM_ENCODING_BASE64,
-00079         MM_ENCODING_QUOTEDPRINTABLE,
-00080         MM_ENCODING_UNKNOWN
-00081 };
-00082 
-00083 /*
-00084  * Message type
-00085  */
-00086 enum mm_messagetype
-00087 {
-00089         MM_MSGTYPE_FLAT = 0,
-00091         MM_MSGTYPE_MULTIPART
-00092 };
-00093 
-00094 /*
-00095  * Enumeration of error categories
-00096  */
-00097 enum mm_errors
-00098 {
-00099         MM_ERROR_NONE = 0,
-00100         MM_ERROR_UNDEF,
-00101         MM_ERROR_ERRNO, 
-00102         MM_ERROR_PARSE,         
-00103         MM_ERROR_MIME,
-00104         MM_ERROR_CODEC,
-00105         MM_ERROR_PROGRAM
-00106 };
-00107 
-00108 enum mm_warning_ids
-00109 {
-00110         MM_WARN_NONE = 0,
-00111         MM_WARN_PARSE,
-00112         MM_WARN_MIME,
-00113         MM_WARN_CODEC
-00114 };
-00115 
-00116 enum mm_addressfields {
-00117         MM_ADDR_TO = 0,
-00118         MM_ADDR_CC,
-00119         MM_ADDR_BCC,
-00120         MM_ADDR_FROM,
-00121         MM_ADDR_SENDER,
-00122         MM_ADDR_REPLY_TO
-00123 };
-00124 
-00125 enum mm_flatten_flags {
-00126         MM_FLATTEN_NONE = 0,
-00127         MM_FLATTEN_SKIPENVELOPE = (1L << 1),
-00128         MM_FLATTEN_OPAQUE = (1L << 2),
-00129         MM_FLATTEN_NOPREAMBLE = (1L << 3)
-00130 };      
-00131 
-00132 /*
-00133  * More information about an error
-00134  */
-00135 struct mm_error_data
-00136 {
-00137         int error_id;
-00138         int error_where;
-00139         int lineno;
-00140         char error_msg[128];
-00141 };
-00142 
-00143 extern int mm_errno;
-00144 extern struct mm_error_data mm_error;
-00145 
-00146 enum mm_warning_code
-00147 {
-00148         MM_WARNING_NONE = 0,
-00149         MM_WARNING_INVHDR,
-00150 };
-00151 
-00152 /*
-00153  * A parser warning
-00154  */
-00155 struct mm_warning
-00156 {
-00157         enum mm_warning_code warning;
-00158         u_int32_t lineno;
-00159         SLIST_ENTRY(mm_warning) next;
-00160 };
-00161 
-00162 /*
-00163  * Representation of a MiniMIME codec object
-00164  */
-00165 struct mm_codec
-00166 {
-00167         enum mm_encoding id;
-00168         char *encoding;
-00169 
-00170         char *(*encoder)(char *, u_int32_t);
-00171         char *(*decoder)(char *);
-00172 
-00173         SLIST_ENTRY(mm_codec) next;
-00174 };
-00175 
-00176 /*
-00177  * Representation of a mail or MIME header field
-00178  */
-00179 struct mm_mimeheader
-00180 {
-00181         char *name; 
-00182         char *value;
-00183 
-00184         TAILQ_ENTRY(mm_mimeheader) next;
-00185 };
-00186 
-00187 /*
-00188  * Representation of a MIME Content-Type parameter
-00189  */
-00190 struct mm_param
-00191 {
-00192         char *name; 
-00193         char *value; 
-00194 
-00195         TAILQ_ENTRY(mm_param) next;
-00196 };
-00197 
-00198 /*
-00199  * Representation of a MIME Content-Type object
-00200  */
-00201 struct mm_content
-00202 {
-00203         char *maintype;
-00204         char *subtype;
-00205 
-00206         struct mm_params params;
-00207 
-00208         char *encstring;
-00209         enum mm_encoding encoding;
-00210 };
-00211 
-00212 /*
-00213  * Representation of a MIME part 
-00214  */
-00215 struct mm_mimepart
-00216 {
-00217         struct mm_mimeheaders headers;
-00218         
-00219         size_t opaque_length;
-00220         char *opaque_body;
-00221 
-00222         size_t length;
-00223         char *body;
-00224 
-00225         struct mm_content *type;
-00226 
-00227         char *disposition_type;
-00228         char *filename;
-00229         char *creation_date;
-00230         char *modification_date;
-00231         char *read_date;
-00232         char *disposition_size;
-00233         
-00234         TAILQ_ENTRY(mm_mimepart) next;
-00235 };
-00236 
-00237 /*
-00238  * Represantation of a MiniMIME context
-00239  */
-00240 struct mm_context
-00241 {
-00242         struct mm_mimeparts parts;
-00243         enum mm_messagetype messagetype;
-00244         struct mm_warnings warnings;
-00245         struct mm_codecs codecs;
-00246         char *boundary;
-00247         char *preamble;
-00248         size_t max_message_size;
-00249 };
-00250 
-00251 typedef struct mm_context MM_CTX;
-00252 typedef struct mm_context mm_ctx_t;
-00253 
-00254 char *mm_unquote(const char *);
-00255 char *mm_uncomment(const char *);
-00256 char *mm_stripchars(char *, char *);
-00257 char *mm_addchars(char *, char *, u_int16_t);
-00258 int mm_gendate(char **);
-00259 void mm_striptrailing(char **, const char *);
-00260 int mm_mimeutil_genboundary(char *, size_t, char **);
-00261 
-00262 int mm_library_init(void);
-00263 int mm_library_isinitialized(void);
-00264 
-00265 int mm_parse_mem(MM_CTX *, const char *, int, int);
-00266 int mm_parse_file(MM_CTX *, const char *, int, int);
-00267 
-00268 MM_CTX *mm_context_new(void);
-00269 void mm_context_free(MM_CTX *);
-00270 int mm_context_attachpart(MM_CTX *, struct mm_mimepart *);
-00271 int mm_context_deletepart(MM_CTX *, int, int);
-00272 int mm_context_countparts(MM_CTX *);
-00273 struct mm_mimepart *mm_context_getpart(MM_CTX *, int);
-00274 int mm_context_iscomposite(MM_CTX *);
-00275 int mm_context_haswarnings(MM_CTX *);
-00276 int mm_context_flatten(MM_CTX *, char **, size_t *, int);
-00277 
-00278 int mm_envelope_getheaders(MM_CTX *, char **, size_t *);
-00279 int mm_envelope_setheader(MM_CTX *, const char *, const char *, ...);
-00280 
-00281 struct mm_mimeheader *mm_mimeheader_new(void);
-00282 void mm_mimeheader_free(struct mm_mimeheader *);
-00283 struct mm_mimeheader *mm_mimeheader_generate(const char *, const char *);
-00284 int mm_mimeheader_uncomment(struct mm_mimeheader *);
-00285 int mm_mimeheader_uncommentbyname(struct mm_mimepart *, const char *);
-00286 int mm_mimeheader_uncommentall(struct mm_mimepart *);
-00287 int mm_mimeheader_tostring(struct mm_mimeheader *);
-00288 
-00289 struct mm_mimepart *mm_mimepart_new(void);
-00290 void mm_mimepart_free(struct mm_mimepart *);
-00291 int mm_mimepart_attachheader(struct mm_mimepart *, struct mm_mimeheader *);
-00292 int mm_mimepart_countheaders(struct mm_mimepart *part);
-00293 int mm_mimepart_countheaderbyname(struct mm_mimepart *, const char *);
-00294 struct mm_mimeheader *mm_mimepart_getheaderbyname(struct mm_mimepart *, const char *, int);
-00295 const char *mm_mimepart_getheadervalue(struct mm_mimepart *, const char *, int);
-00296 int mm_mimepart_headers_start(struct mm_mimepart *, struct mm_mimeheader **);
-00297 struct mm_mimeheader *mm_mimepart_headers_next(struct mm_mimepart *, struct mm_mimeheader **);
-00298 char *mm_mimepart_decode(struct mm_mimepart *);
-00299 struct mm_content *mm_mimepart_gettype(struct mm_mimepart *);
-00300 size_t mm_mimepart_getlength(struct mm_mimepart *);
-00301 char *mm_mimepart_getbody(struct mm_mimepart *, int);
-00302 void mm_mimepart_attachcontenttype(struct mm_mimepart *, struct mm_content *);
-00303 int mm_mimepart_setdefaultcontenttype(struct mm_mimepart *, int);
-00304 int mm_mimepart_flatten(struct mm_mimepart *, char **, size_t *, int);
-00305 struct mm_mimepart *mm_mimepart_fromfile(const char *);
-00306 
-00307 struct mm_content *mm_content_new(void);
-00308 void mm_content_free(struct mm_content *);
-00309 int mm_content_attachparam(struct mm_content *, struct mm_param *);
-00310 struct mm_content *mm_content_parse(const char *, int);
-00311 char *mm_content_getparambyname(struct mm_content *, const char *);
-00312 struct mm_param *mm_content_getparamobjbyname(struct mm_content *, const char *);
-00313 int mm_content_setmaintype(struct mm_content *, char *, int);
-00314 int mm_content_setsubtype(struct mm_content *, char *, int);
-00315 int mm_content_settype(struct mm_content *, const char *, ...);
-00316 char *mm_content_getmaintype(struct mm_content *);
-00317 char *mm_content_getsubtype(struct mm_content *);
-00318 char *mm_content_gettype(struct mm_content *);
-00319 int mm_content_iscomposite(struct mm_content *);
-00320 int mm_content_isvalidencoding(const char *);
-00321 int mm_content_setencoding(struct mm_content *, const char *);
-00322 char *mm_content_paramstostring(struct mm_content *);
-00323 char *mm_content_tostring(struct mm_content *);
-00324 
-00325 struct mm_param *mm_param_new(void);
-00326 void mm_param_free(struct mm_param *);
-00327 
-00328 char *mm_flatten_mimepart(struct mm_mimepart *);
-00329 char *mm_flatten_context(MM_CTX *);
-00330 
-00331 int mm_codec_isregistered(const char *);
-00332 int mm_codec_hasdecoder(const char *);
-00333 int mm_codec_hasencoder(const char *);
-00334 int mm_codec_register(const char *, char *(*encoder)(char *, u_int32_t), char *(*decoder)(char *));
-00335 int mm_codec_unregister(const char *);
-00336 int mm_codec_unregisterall(void);
-00337 void mm_codec_registerdefaultcodecs(void);
-00338 
-00339 char *mm_base64_decode(char *);
-00340 char *mm_base64_encode(char *, u_int32_t);
-00341 
-00342 void mm_error_init(void);
-00343 void mm_error_setmsg(const char *, ...);
-00344 void mm_error_setlineno(int lineno);
-00345 char *mm_error_string(void);
-00346 int mm_error_lineno(void);
-00347 
-00348 void mm_warning_add(MM_CTX *, int, const char *, ...);
-00349 struct mm_warning *mm_warning_next(MM_CTX *, struct mm_warning **);
-00350 
-00351 #ifndef HAVE_STRLCPY
-00352 size_t strlcpy(char *, const char *, size_t);
-00353 #endif /* ! HAVE_STRLCPY */
-00354 #ifndef HAVE_STRLCAT
-00355 size_t strlcat(char *, const char *, size_t);
-00356 #endif /* ! HAVE_STRLCAT */
-00357 
-00358 #define MM_ISINIT() do { \
-00359         assert(mm_library_isinitialized() == 1); \
-00360 } while (0);
-00361 
-00362 #endif /* ! _MM_H_INCLUDED */
-

Generated on Thu Mar 29 17:59:08 2007 for MiniMIME by  - -doxygen 1.5.1
- - diff --git a/main/minimime/mm-docs/html/mm__codecs_8c.html b/main/minimime/mm-docs/html/mm__codecs_8c.html deleted file mode 100644 index 286282b956..0000000000 --- a/main/minimime/mm-docs/html/mm__codecs_8c.html +++ /dev/null @@ -1,58 +0,0 @@ - - -MiniMIME: mm_codecs.c File Reference - - - - -
-
-
-
-

mm_codecs.c File Reference

#include <sys/types.h>
-#include <sys/stat.h>
-#include <stdio.h>
-#include <stdlib.h>
-#include <unistd.h>
-#include <fcntl.h>
-#include <string.h>
-#include <assert.h>
-#include "mm_internal.h"
-#include "mm_util.h"
- - - - - - - - - - - - - - - - - - - - - -

Functions

Codec manipulation
int mm_codec_hasdecoder (const char *encoding)
int mm_codec_hasencoder (const char *encoding)
int mm_codec_isregistered (const char *encoding)
int mm_codec_register (const char *encoding, char *(*encoder)(char *data, u_int32_t i), char *(*decoder)(char *data))
int mm_codec_unregister (const char *encoding)
int mm_codec_unregisterall (void)
void mm_codec_registerdefaultcodecs (void)

Variables

-mm_codecs codecs
-

Detailed Description

-This module contains functions to manipulate MiniMIME codecs
Generated on Thu Mar 29 17:59:08 2007 for MiniMIME by  - -doxygen 1.5.1
- - diff --git a/main/minimime/mm-docs/html/mm__contenttype_8c.html b/main/minimime/mm-docs/html/mm__contenttype_8c.html deleted file mode 100644 index 77b44a8b56..0000000000 --- a/main/minimime/mm-docs/html/mm__contenttype_8c.html +++ /dev/null @@ -1,78 +0,0 @@ - - -MiniMIME: mm_contenttype.c File Reference - - - - -
-
-
-
-

mm_contenttype.c File Reference

#include <stdio.h>
-#include <stdlib.h>
-#include <stdarg.h>
-#include <string.h>
-#include <ctype.h>
-#include <assert.h>
-#include "mm_internal.h"
-#include "mm_util.h"
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -

Data Structures

struct  mm_encoding_mappings

Functions

Functions for manipulating Content-Type objects
mm_content * mm_content_new (void)
void mm_content_free (struct mm_content *ct)
int mm_content_attachparam (struct mm_content *ct, struct mm_param *param)
char * mm_content_getparambyname (struct mm_content *ct, const char *name)
-mm_param * mm_content_getparamobjbyname (struct mm_content *ct, const char *name)
int mm_content_setmaintype (struct mm_content *ct, char *value, int copy)
char * mm_content_getmaintype (struct mm_content *ct)
char * mm_content_getsubtype (struct mm_content *ct)
-char * mm_content_gettype (struct mm_content *ct)
int mm_content_setsubtype (struct mm_content *ct, char *value, int copy)
-int mm_content_settype (struct mm_content *ct, const char *fmt,...)
int mm_content_iscomposite (struct mm_content *ct)
int mm_content_isvalidencoding (const char *encoding)
int mm_content_setencoding (struct mm_content *ct, const char *encoding)
int mm_content_getencoding (struct mm_content *ct, const char *encoding)
char * mm_content_paramstostring (struct mm_content *ct)
char * mm_content_tostring (struct mm_content *ct)
-

Detailed Description

-This module contains functions for manipulating Content-Type objects.
Generated on Thu Mar 29 17:59:08 2007 for MiniMIME by  - -doxygen 1.5.1
- - diff --git a/main/minimime/mm-docs/html/mm__context_8c.html b/main/minimime/mm-docs/html/mm__context_8c.html deleted file mode 100644 index 064caad5de..0000000000 --- a/main/minimime/mm-docs/html/mm__context_8c.html +++ /dev/null @@ -1,63 +0,0 @@ - - -MiniMIME: mm_context.c File Reference - - - - -
-
-
-
-

mm_context.c File Reference

#include <stdio.h>
-#include <stdlib.h>
-#include <stdarg.h>
-#include <string.h>
-#include <assert.h>
-#include "mm_internal.h"
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -

Functions

Manipulating MiniMIME contexts
MM_CTX * mm_context_new (void)
void mm_context_free (MM_CTX *ctx)
int mm_context_attachpart (MM_CTX *ctx, struct mm_mimepart *part)
int mm_context_attachpart_after (MM_CTX *ctx, struct mm_mimepart *part, int pos)
int mm_context_deletepart (MM_CTX *ctx, int which, int freemem)
int mm_context_countparts (MM_CTX *ctx)
mm_mimepart * mm_context_getpart (MM_CTX *ctx, int which)
int mm_context_iscomposite (MM_CTX *ctx)
int mm_context_haswarnings (MM_CTX *ctx)
int mm_context_generateboundary (MM_CTX *ctx)
int mm_context_setpreamble (MM_CTX *ctx, char *preamble)
-char * mm_context_getpreamble (MM_CTX *ctx)
int mm_context_flatten (MM_CTX *ctx, char **flat, size_t *length, int flags)
-

Detailed Description

-Modules for manipulating MiniMIME contexts
Generated on Thu Mar 29 17:59:08 2007 for MiniMIME by  - -doxygen 1.5.1
- - diff --git a/main/minimime/mm-docs/html/mm__envelope_8c.html b/main/minimime/mm-docs/html/mm__envelope_8c.html deleted file mode 100644 index 62fd8d7847..0000000000 --- a/main/minimime/mm-docs/html/mm__envelope_8c.html +++ /dev/null @@ -1,44 +0,0 @@ - - -MiniMIME: mm_envelope.c File Reference - - - - -
-
-
-
-

mm_envelope.c File Reference

#include <stdio.h>
-#include <stdlib.h>
-#include <stdarg.h>
-#include <string.h>
-#include <ctype.h>
-#include <assert.h>
-#include "mm_internal.h"
-#include "mm_util.h"
- - - - - - - - - - -

Functions

Accessing and manipulating a message's envelope
int mm_envelope_getheaders (MM_CTX *ctx, char **result, size_t *length)
int mm_envelope_setheader (MM_CTX *ctx, const char *name, const char *fmt,...)
int mm_envelope_getrecipients (MM_CTX *ctx, char **result, size_t *length)
-

Detailed Description

-This module contains functions for accessing a message's envelope. This are mainly wrapper functions for easy access.
Generated on Thu Mar 29 17:59:08 2007 for MiniMIME by  - -doxygen 1.5.1
- - diff --git a/main/minimime/mm-docs/html/mm__error_8c.html b/main/minimime/mm-docs/html/mm__error_8c.html deleted file mode 100644 index 87ff13783b..0000000000 --- a/main/minimime/mm-docs/html/mm__error_8c.html +++ /dev/null @@ -1,49 +0,0 @@ - - -MiniMIME: mm_error.c File Reference - - - - -
-
-
-
-

mm_error.c File Reference

#include <stdio.h>
-#include <stdlib.h>
-#include <stdarg.h>
-#include <string.h>
-#include <assert.h>
-#include <errno.h>
-#include "mm_internal.h"
-#include "mm_util.h"
- - - - - - - - - - - - - -

Functions

void mm_error_init (void)
void mm_error_setmsg (const char *fmt,...)
-void mm_error_setlineno (int lineno)
char * mm_error_string (void)
-int mm_error_lineno (void)
-

Detailed Description

-This module contains functions for MiniMIME error information/manipulation
Generated on Thu Mar 29 17:59:08 2007 for MiniMIME by  - -doxygen 1.5.1
- - diff --git a/main/minimime/mm-docs/html/mm__header_8c.html b/main/minimime/mm-docs/html/mm__header_8c.html deleted file mode 100644 index 7d0212e6bc..0000000000 --- a/main/minimime/mm-docs/html/mm__header_8c.html +++ /dev/null @@ -1,131 +0,0 @@ - - -MiniMIME: mm_header.c File Reference - - - - -
-
-
-
-

mm_header.c File Reference

#include <stdio.h>
-#include <stdlib.h>
-#include <stdarg.h>
-#include <string.h>
-#include <ctype.h>
-#include <assert.h>
-#include "mm_internal.h"
-#include "mm_util.h"
- - - - - - - - - - - - - - - -

Functions

mm_mimeheader * mm_mimeheader_new (void)
void mm_mimeheader_free (struct mm_mimeheader *header)
mm_mimeheader * mm_mimeheader_generate (const char *name, const char *value)
-int mm_mimeheader_uncomment (struct mm_mimeheader *header)
-int mm_mimeheader_uncommentbyname (struct mm_mimepart *part, const char *name)
-int mm_mimeheader_uncommentall (struct mm_mimepart *part)
-

Detailed Description

-This module contains functions for manipulating MIME headers

Function Documentation

- -
-
- - - - - - - - - -
void mm_mimeheader_free (struct mm_mimeheader *  header  ) 
-
-
- -

-Frees a MIME header object

-

Parameters:
- - -
header The MIME header object which to free
-
- -
-

- -

-
- - - - - - - - - - - - - - - - - - -
struct mm_mimeheader* mm_mimeheader_generate (const char *  name,
const char *  value 
)
-
-
- -

-Creates a new MIME header, but does no checks whatsoever (create as-is) -

-

- -

-
- - - - - - - - - -
struct mm_mimeheader* mm_mimeheader_new (void   ) 
-
-
- -

-Creates a new MIME header object

-

Returns:
A new and initialized MIME header object
-
See also:
mm_mimeheader_free
-This function creates and initializes a new MIME header object, which must later be freed using mm_mimeheader_free() -
-

-


Generated on Thu Mar 29 17:59:08 2007 for MiniMIME by  - -doxygen 1.5.1
- - diff --git a/main/minimime/mm-docs/html/mm__internal_8h-source.html b/main/minimime/mm-docs/html/mm__internal_8h-source.html deleted file mode 100644 index 1f92a3e94f..0000000000 --- a/main/minimime/mm-docs/html/mm__internal_8h-source.html +++ /dev/null @@ -1,82 +0,0 @@ - - -MiniMIME: mm_internal.h Source File - - - - -
-
-
-
-

mm_internal.h

Go to the documentation of this file.
00001 /*
-00002  * $Id$
-00003  *
-00004  * MiniMIME - a library for handling MIME messages
-00005  *
-00006  * Copyright (C) 2003 Jann Fischer <rezine@mistrust.net>
-00007  * All rights reserved.
-00008  *
-00009  * Redistribution and use in source and binary forms, with or without
-00010  * modification, are permitted provided that the following conditions
-00011  * are met:
-00012  *
-00013  * 1. Redistributions of source code must retain the above copyright
-00014  *    notice, this list of conditions and the following disclaimer.
-00015  * 2. Redistributions in binary form must reproduce the above copyright
-00016  *    notice, this list of conditions and the following disclaimer in the
-00017  *    documentation and/or other materials provided with the distribution.
-00018  * 3. Neither the name of the author nor the names of the contributors
-00019  *    may be used to endorse or promote products derived from this software
-00020  *    without specific prior written permission.
-00021  *
-00022  * THIS SOFTWARE IS PROVIDED BY JANN FISCHER AND CONTRIBUTORS ``AS IS'' AND
-00023  * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
-00024  * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
-00025  * ARE DISCLAIMED.  IN NO EVENT SHALL JANN FISCHER OR THE VOICES IN HIS HEAD
-00026  * BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
-00027  * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
-00028  * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
-00029  * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
-00030  * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
-00031  * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF
-00032  * THE POSSIBILITY OF SUCH DAMAGE.
-00033  */
-00034 
-00038 #ifndef _MM_INTERNAL_H_INCLUDED
-00039 #define _MM_INTERNAL_H_INCLUDED
-00040 
-00041 #include "mm.h"
-00042 
-00043 #define debugp(m, ...) do { \
-00044         fprintf(stderr, "%s:%d:: ", __FILE__, __LINE__); \
-00045         fprintf(stderr, m, ## __VA_ARGS__); \
-00046         fprintf(stderr, "\n"); \
-00047         fflush(stderr); \
-00048 } while (0); 
-00049 
-00054 #ifndef __HAVE_LEAK_DETECTION
-00055 void *xmalloc(size_t);
-00056 void *xrealloc(void *, size_t);
-00057 void xfree(void *);
-00058 char *xstrdup(const char *);
-00059 #endif
-00060 
-00061 char *xstrsep(char **, const char *);
-00062 
-00063 /* THIS FILE IS INTENTIONALLY LEFT BLANK */
-00064 
-00065 #endif /* ! _MM_INTERNAL_H_INCLUDED */
-

Generated on Thu Mar 29 17:59:08 2007 for MiniMIME by  - -doxygen 1.5.1
- - diff --git a/main/minimime/mm-docs/html/mm__internal_8h.html b/main/minimime/mm-docs/html/mm__internal_8h.html deleted file mode 100644 index 8afb665eca..0000000000 --- a/main/minimime/mm-docs/html/mm__internal_8h.html +++ /dev/null @@ -1,78 +0,0 @@ - - -MiniMIME: mm_internal.h File Reference - - - - -
-
-
-
-

mm_internal.h File Reference

#include "mm.h"
- -

-Go to the source code of this file. - - - - - - - - - - - - - - - - -

Defines

#define debugp(m,...)

Functions

Utility functions
void * xmalloc (size_t)
void * xrealloc (void *, size_t)
-void xfree (void *)
-char * xstrdup (const char *)
char * xstrsep (char **, const char *)
-


Detailed Description

-Data definitions for MiniMIME

Define Documentation

- -
-
- - - - - - - - - - - - -
#define debugp (m,
...   ) 
-
-
- -

-Value:

do { \
-        fprintf(stderr, "%s:%d:: ", __FILE__, __LINE__); \
-        fprintf(stderr, m, ## __VA_ARGS__); \
-        fprintf(stderr, "\n"); \
-        fflush(stderr); \
-} while (0);
-
-
-

-


Generated on Thu Mar 29 17:59:08 2007 for MiniMIME by  - -doxygen 1.5.1
- - diff --git a/main/minimime/mm-docs/html/mm__mem_8h-source.html b/main/minimime/mm-docs/html/mm__mem_8h-source.html deleted file mode 100644 index 69ddd73dc5..0000000000 --- a/main/minimime/mm-docs/html/mm__mem_8h-source.html +++ /dev/null @@ -1,56 +0,0 @@ - - -MiniMIME: mm_mem.h Source File - - - - -
-
-
-
-

mm_mem.h

00001 #ifndef __MEM_H
-00002 #define __MEM_H
-00003 
-00004 #ifdef __HAVE_LEAK_DETECTION
-00005 
-00006 #define NAMEOF(v)       #v
-00007 #define xmalloc(x) MM_malloc(x, __FILE__, __LINE__)
-00008 #define xfree(x) MM_free(x, __FILE__, __LINE__, NAMEOF(x))
-00009 #define xstrdup(x) MM_strdup(x, __FILE__, __LINE__)
-00010 #define xrealloc(x, y) MM_realloc(x, y, __FILE__, __LINE__)
-00011 
-00012 TAILQ_HEAD(MM_chunks, MM_mem_chunk);
-00013 
-00014 struct MM_mem_chunk {
-00015         void *address;
-00016         const char *filename;
-00017         u_int32_t line;
-00018         size_t size;
-00019         
-00020         TAILQ_ENTRY(MM_mem_chunk) next;
-00021 };
-00022 
-00023 void *MM_malloc(size_t, char *, int);
-00024 void *MM_realloc(void *, size_t, char *, int);
-00025 void MM_free(void *, char *, int, char *);
-00026 char *MM_strdup(const char *, char *, int);
-00027 void MM_leakd_init(void);
-00028 void MM_leakd_printallocated(void);
-00029 void MM_leakd_flush(void);
-00030 
-00031 #endif /* __HAVE_LEAK_DETECTION */
-00032 #endif /* ! HAVE_MEM_H */
-

Generated on Thu Mar 29 17:59:08 2007 for MiniMIME by  - -doxygen 1.5.1
- - diff --git a/main/minimime/mm-docs/html/mm__mimepart_8c.html b/main/minimime/mm-docs/html/mm__mimepart_8c.html deleted file mode 100644 index 210dd8dc98..0000000000 --- a/main/minimime/mm-docs/html/mm__mimepart_8c.html +++ /dev/null @@ -1,79 +0,0 @@ - - -MiniMIME: mm_mimepart.c File Reference - - - - -
-
-
-
-

mm_mimepart.c File Reference

#include <sys/types.h>
-#include <sys/stat.h>
-#include <stdio.h>
-#include <stdlib.h>
-#include <string.h>
-#include <unistd.h>
-#include <fcntl.h>
-#include <ctype.h>
-#include <assert.h>
-#include "mm_internal.h"
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -

Functions

Creating and destroying MIME parts
mm_mimepart * mm_mimepart_new (void)
mm_mimepart * mm_mimepart_fromfile (const char *filename)
void mm_mimepart_free (struct mm_mimepart *part)
Accessing the MIME part's mail header
int mm_mimepart_attachheader (struct mm_mimepart *part, struct mm_mimeheader *header)
int mm_mimepart_countheaders (struct mm_mimepart *part)
int mm_mimepart_countheaderbyname (struct mm_mimepart *part, const char *name)
mm_mimeheader * mm_mimepart_getheaderbyname (struct mm_mimepart *part, const char *name, int idx)
const char * mm_mimepart_getheadervalue (struct mm_mimepart *part, const char *name, int idx)
int mm_mimepart_headers_start (struct mm_mimepart *part, struct mm_mimeheader **id)
mm_mimeheader * mm_mimepart_headers_next (struct mm_mimepart *part, struct mm_mimeheader **id)
Accessing and manipulating the MIME part's body
char * mm_mimepart_getbody (struct mm_mimepart *part, int opaque)
void mm_mimepart_setbody (struct mm_mimepart *part, const char *data, int opaque)
size_t mm_mimepart_getlength (struct mm_mimepart *part)
char * mm_mimepart_decode (struct mm_mimepart *part)
int mm_mimepart_flatten (struct mm_mimepart *part, char **result, size_t *length, int opaque)
int mm_mimepart_setdefaultcontenttype (struct mm_mimepart *part, int composite)
Accessing the MIME part's Content-Type information
void mm_mimepart_attachcontenttype (struct mm_mimepart *part, struct mm_content *ct)
mm_content * mm_mimepart_gettype (struct mm_mimepart *part)
-

Detailed Description

-This module contains functions for manipulating MIME header objects.
Generated on Thu Mar 29 17:59:08 2007 for MiniMIME by  - -doxygen 1.5.1
- - diff --git a/main/minimime/mm-docs/html/mm__mimeutil_8c.html b/main/minimime/mm-docs/html/mm__mimeutil_8c.html deleted file mode 100644 index 7823572d79..0000000000 --- a/main/minimime/mm-docs/html/mm__mimeutil_8c.html +++ /dev/null @@ -1,76 +0,0 @@ - - -MiniMIME: mm_mimeutil.c File Reference - - - - -
-
-
-
-

mm_mimeutil.c File Reference

#include <sys/time.h>
-#include <stdio.h>
-#include <stdlib.h>
-#include <string.h>
-#include <time.h>
-#include <assert.h>
-#include "mm_internal.h"
- - - - - - - - - - -

Defines

-#define MM_DATE_LENGTH   50

Functions

int mm_mimeutil_gendate (char **result)
-int mm_mimeutil_genboundary (char *prefix, size_t length, char **result)
-

Detailed Description

-This module contains various MIME related utility functions.

Function Documentation

- -
-
- - - - - - - - - -
int mm_mimeutil_gendate (char **  result  ) 
-
-
- -

-Generates an RFC 2822 conform date string

-

Parameters:
- - -
timezone Whether to include timezone information
-
-
Returns:
A pointer to the actual date string
-
Note:
The pointer returned must be freed some time
-This function generates an RFC 2822 conform date string to use in message headers. It allocates memory to hold the string and returns a pointer to it. The generated date is in the format (example):

-Thu, 25 December 2003 16:35:22 +0100 (CET)

-This function dynamically allocates memory and returns a pointer to it. This memory should be released with free() once not needed anymore. -

-

-


Generated on Thu Mar 29 17:59:08 2007 for MiniMIME by  - -doxygen 1.5.1
- - diff --git a/main/minimime/mm-docs/html/mm__param_8c.html b/main/minimime/mm-docs/html/mm__param_8c.html deleted file mode 100644 index 149cf2140c..0000000000 --- a/main/minimime/mm-docs/html/mm__param_8c.html +++ /dev/null @@ -1,57 +0,0 @@ - - -MiniMIME: mm_param.c File Reference - - - - -
-
-
-
-

mm_param.c File Reference

#include <sys/types.h>
-#include <sys/stat.h>
-#include <stdio.h>
-#include <stdlib.h>
-#include <unistd.h>
-#include <fcntl.h>
-#include <string.h>
-#include <ctype.h>
-#include <assert.h>
-#include "mm_internal.h"
-#include "mm_util.h"
- - - - - - - - - - - - - - - - - - - -

Functions

Functions for manipulating MIME parameters
MIME parameters are properties attached to certain MIME headers, such as Content-Type and Content-Disposition. MIME parameters have a textual representations as in name=value. They contain important information about the MIME structure of a message, such as the boundary string used, which charset was used to encode the message and so on. This module provides simple to use functions to query or set MIME parameters.

-Each MIME header may hold an arbitrary amount of such parameters, which are delimeted by each other with a semicolon.

mm_param * mm_param_new (void)
void mm_param_free (struct mm_param *param)
mm_param * mm_param_generate (const char *name, const char *value)
char * mm_param_setname (struct mm_param *param, const char *name, int copy)
char * mm_param_setvalue (struct mm_param *param, const char *value, int copy)
const char * mm_param_getname (struct mm_param *param)
const char * mm_param_getvalue (struct mm_param *param)
-

Detailed Description

-Functions to manipulate MIME parameters
Generated on Thu Mar 29 17:59:08 2007 for MiniMIME by  - -doxygen 1.5.1
- - diff --git a/main/minimime/mm-docs/html/mm__parse_8c.html b/main/minimime/mm-docs/html/mm__parse_8c.html deleted file mode 100644 index 8ce1502722..0000000000 --- a/main/minimime/mm-docs/html/mm__parse_8c.html +++ /dev/null @@ -1,198 +0,0 @@ - - -MiniMIME: mm_parse.c File Reference - - - - -
-
-
-
-

mm_parse.c File Reference

#include <sys/types.h>
-#include <sys/stat.h>
-#include <stdio.h>
-#include <stdlib.h>
-#include <unistd.h>
-#include <fcntl.h>
-#include <string.h>
-#include <ctype.h>
-#include <assert.h>
-#include "mm_internal.h"
-#include "mm_util.h"
-#include "mimeparser.h"
-#include "mimeparser.tab.h"
- - - - - - - - - - - - - -

Functions

void PARSER_initialize (MM_CTX *, int)
-void PARSER_setbuffer (const char *)
-void PARSER_setfp (FILE *)
int mm_parse_mem (MM_CTX *ctx, const char *text, int parsemode, int flags)
int mm_parse_file (MM_CTX *ctx, const char *filename, int parsemode, int flags)
-

Detailed Description

-Functions to parse MIME messages

Function Documentation

- -
-
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
int mm_parse_file (MM_CTX *  ctx,
const char *  filename,
int  parsemode,
int  flags 
)
-
-
- -

-Parses a file into a MiniMIME context

-

Parameters:
- - - - - -
ctx A valid MiniMIME context object
filename The name of the file to parse
parsemode The parsemode
flags The flags to pass to the parser
-
-
Returns:
0 on success or -1 on failure
-
Note:
Sets mm_errno if an error occurs
-This function parses a MIME message, stored in the filesystem according to the parseflags and stores the results in the MiniMIME context specified by ctx.

-The following modes can be used to specify how the message should be parsed:

-

    -
  • MM_PARSE_STRICT: Do not tolerate MIME violations
  • MM_PARSE_LOOSE: Tolerate as much MIME violations as possible
-

-The context needs to be initialized before using mm_context_new() and may be freed using mm_context_free(). -

-

- -

-
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
int mm_parse_mem (MM_CTX *  ctx,
const char *  text,
int  parsemode,
int  flags 
)
-
-
- -

-Parses a NUL-terminated string into a MiniMIME context

-

Parameters:
- - - - - -
ctx A valid MiniMIME context object
text The NUL-terminated string to parse
parsemode The parsemode
flags The flags to pass to the parser
-
-
Returns:
0 on success or -1 on failure
-
Note:
Sets mm_errno if an error occurs
-This function parses a MIME message, stored in the memory region pointed to by text (must be NUL-terminated) according to the parseflags and stores the results in the MiniMIME context specified by ctx.

-The following modes can be used to specify how the message should be parsed:

-

    -
  • MM_PARSE_STRICT: Do not tolerate MIME violations
  • MM_PARSE_LOOSE: Tolerate as much MIME violations as possible
-

-The context needs to be initialized before using mm_context_new() and may be freed using mm_context_free(). -

-

- -

-
- - - - - - - - - - - - - - - - - - -
void PARSER_initialize (MM_CTX *  newctx,
int  mode 
)
-
-
- -

-Initializes the parser engine. -

-

-


Generated on Thu Mar 29 17:59:08 2007 for MiniMIME by  - -doxygen 1.5.1
- - diff --git a/main/minimime/mm-docs/html/mm__queue_8h-source.html b/main/minimime/mm-docs/html/mm__queue_8h-source.html deleted file mode 100644 index 2501344613..0000000000 --- a/main/minimime/mm-docs/html/mm__queue_8h-source.html +++ /dev/null @@ -1,532 +0,0 @@ - - -MiniMIME: mm_queue.h Source File - - - - -
-
-
-
-

mm_queue.h

00001 /*      $OpenBSD: queue.h,v 1.25 2004/04/08 16:08:21 henning Exp $      */
-00002 /*      $NetBSD: queue.h,v 1.11 1996/05/16 05:17:14 mycroft Exp $       */
-00003 
-00004 /*
-00005  * Copyright (c) 1991, 1993
-00006  *      The Regents of the University of California.  All rights reserved.
-00007  *
-00008  * Redistribution and use in source and binary forms, with or without
-00009  * modification, are permitted provided that the following conditions
-00010  * are met:
-00011  * 1. Redistributions of source code must retain the above copyright
-00012  *    notice, this list of conditions and the following disclaimer.
-00013  * 2. Redistributions in binary form must reproduce the above copyright
-00014  *    notice, this list of conditions and the following disclaimer in the
-00015  *    documentation and/or other materials provided with the distribution.
-00016  * 3. Neither the name of the University nor the names of its contributors
-00017  *    may be used to endorse or promote products derived from this software
-00018  *    without specific prior written permission.
-00019  *
-00020  * THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND
-00021  * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
-00022  * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
-00023  * ARE DISCLAIMED.  IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE
-00024  * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
-00025  * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
-00026  * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
-00027  * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
-00028  * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
-00029  * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
-00030  * SUCH DAMAGE.
-00031  *
-00032  *      @(#)queue.h     8.5 (Berkeley) 8/20/94
-00033  */
-00034 
-00035 #ifndef _SYS_QUEUE_H_
-00036 #define _SYS_QUEUE_H_
-00037 
-00038 /*
-00039  * This file defines five types of data structures: singly-linked lists, 
-00040  * lists, simple queues, tail queues, and circular queues.
-00041  *
-00042  *
-00043  * A singly-linked list is headed by a single forward pointer. The elements
-00044  * are singly linked for minimum space and pointer manipulation overhead at
-00045  * the expense of O(n) removal for arbitrary elements. New elements can be
-00046  * added to the list after an existing element or at the head of the list.
-00047  * Elements being removed from the head of the list should use the explicit
-00048  * macro for this purpose for optimum efficiency. A singly-linked list may
-00049  * only be traversed in the forward direction.  Singly-linked lists are ideal
-00050  * for applications with large datasets and few or no removals or for
-00051  * implementing a LIFO queue.
-00052  *
-00053  * A list is headed by a single forward pointer (or an array of forward
-00054  * pointers for a hash table header). The elements are doubly linked
-00055  * so that an arbitrary element can be removed without a need to
-00056  * traverse the list. New elements can be added to the list before
-00057  * or after an existing element or at the head of the list. A list
-00058  * may only be traversed in the forward direction.
-00059  *
-00060  * A simple queue is headed by a pair of pointers, one the head of the
-00061  * list and the other to the tail of the list. The elements are singly
-00062  * linked to save space, so elements can only be removed from the
-00063  * head of the list. New elements can be added to the list before or after
-00064  * an existing element, at the head of the list, or at the end of the
-00065  * list. A simple queue may only be traversed in the forward direction.
-00066  *
-00067  * A tail queue is headed by a pair of pointers, one to the head of the
-00068  * list and the other to the tail of the list. The elements are doubly
-00069  * linked so that an arbitrary element can be removed without a need to
-00070  * traverse the list. New elements can be added to the list before or
-00071  * after an existing element, at the head of the list, or at the end of
-00072  * the list. A tail queue may be traversed in either direction.
-00073  *
-00074  * A circle queue is headed by a pair of pointers, one to the head of the
-00075  * list and the other to the tail of the list. The elements are doubly
-00076  * linked so that an arbitrary element can be removed without a need to
-00077  * traverse the list. New elements can be added to the list before or after
-00078  * an existing element, at the head of the list, or at the end of the list.
-00079  * A circle queue may be traversed in either direction, but has a more
-00080  * complex end of list detection.
-00081  *
-00082  * For details on the use of these macros, see the queue(3) manual page.
-00083  */
-00084 
-00085 /*
-00086  * Singly-linked List definitions.
-00087  */
-00088 #define SLIST_HEAD(name, type)                                          \
-00089 struct name {                                                           \
-00090         struct type *slh_first; /* first element */                     \
-00091 }
-00092  
-00093 #define SLIST_HEAD_INITIALIZER(head)                                    \
-00094         { NULL }
-00095  
-00096 #define SLIST_ENTRY(type)                                               \
-00097 struct {                                                                \
-00098         struct type *sle_next;  /* next element */                      \
-00099 }
-00100  
-00101 /*
-00102  * Singly-linked List access methods.
-00103  */
-00104 #define SLIST_FIRST(head)       ((head)->slh_first)
-00105 #define SLIST_END(head)         NULL
-00106 #define SLIST_EMPTY(head)       (SLIST_FIRST(head) == SLIST_END(head))
-00107 #define SLIST_NEXT(elm, field)  ((elm)->field.sle_next)
-00108 
-00109 #define SLIST_FOREACH(var, head, field)                                 \
-00110         for((var) = SLIST_FIRST(head);                                  \
-00111             (var) != SLIST_END(head);                                   \
-00112             (var) = SLIST_NEXT(var, field))
-00113 
-00114 #define SLIST_FOREACH_PREVPTR(var, varp, head, field)                   \
-00115         for ((varp) = &SLIST_FIRST((head));                             \
-00116             ((var) = *(varp)) != SLIST_END(head);                       \
-00117             (varp) = &SLIST_NEXT((var), field))
-00118 
-00119 /*
-00120  * Singly-linked List functions.
-00121  */
-00122 #define SLIST_INIT(head) {                                              \
-00123         SLIST_FIRST(head) = SLIST_END(head);                            \
-00124 }
-00125 
-00126 #define SLIST_INSERT_AFTER(slistelm, elm, field) do {                   \
-00127         (elm)->field.sle_next = (slistelm)->field.sle_next;             \
-00128         (slistelm)->field.sle_next = (elm);                             \
-00129 } while (0)
-00130 
-00131 #define SLIST_INSERT_HEAD(head, elm, field) do {                        \
-00132         (elm)->field.sle_next = (head)->slh_first;                      \
-00133         (head)->slh_first = (elm);                                      \
-00134 } while (0)
-00135 
-00136 #define SLIST_REMOVE_NEXT(head, elm, field) do {                        \
-00137         (elm)->field.sle_next = (elm)->field.sle_next->field.sle_next;  \
-00138 } while (0)
-00139 
-00140 #define SLIST_REMOVE_HEAD(head, field) do {                             \
-00141         (head)->slh_first = (head)->slh_first->field.sle_next;          \
-00142 } while (0)
-00143 
-00144 #define SLIST_REMOVE(head, elm, type, field) do {                       \
-00145         if ((head)->slh_first == (elm)) {                               \
-00146                 SLIST_REMOVE_HEAD((head), field);                       \
-00147         }                                                               \
-00148         else {                                                          \
-00149                 struct type *curelm = (head)->slh_first;                \
-00150                 while( curelm->field.sle_next != (elm) )                \
-00151                         curelm = curelm->field.sle_next;                \
-00152                 curelm->field.sle_next =                                \
-00153                     curelm->field.sle_next->field.sle_next;             \
-00154         }                                                               \
-00155 } while (0)
-00156 
-00157 /*
-00158  * List definitions.
-00159  */
-00160 #define LIST_HEAD(name, type)                                           \
-00161 struct name {                                                           \
-00162         struct type *lh_first;  /* first element */                     \
-00163 }
-00164 
-00165 #define LIST_HEAD_INITIALIZER(head)                                     \
-00166         { NULL }
-00167 
-00168 #define LIST_ENTRY(type)                                                \
-00169 struct {                                                                \
-00170         struct type *le_next;   /* next element */                      \
-00171         struct type **le_prev;  /* address of previous next element */  \
-00172 }
-00173 
-00174 /*
-00175  * List access methods
-00176  */
-00177 #define LIST_FIRST(head)                ((head)->lh_first)
-00178 #define LIST_END(head)                  NULL
-00179 #define LIST_EMPTY(head)                (LIST_FIRST(head) == LIST_END(head))
-00180 #define LIST_NEXT(elm, field)           ((elm)->field.le_next)
-00181 
-00182 #define LIST_FOREACH(var, head, field)                                  \
-00183         for((var) = LIST_FIRST(head);                                   \
-00184             (var)!= LIST_END(head);                                     \
-00185             (var) = LIST_NEXT(var, field))
-00186 
-00187 /*
-00188  * List functions.
-00189  */
-00190 #define LIST_INIT(head) do {                                            \
-00191         LIST_FIRST(head) = LIST_END(head);                              \
-00192 } while (0)
-00193 
-00194 #define LIST_INSERT_AFTER(listelm, elm, field) do {                     \
-00195         if (((elm)->field.le_next = (listelm)->field.le_next) != NULL)  \
-00196                 (listelm)->field.le_next->field.le_prev =               \
-00197                     &(elm)->field.le_next;                              \
-00198         (listelm)->field.le_next = (elm);                               \
-00199         (elm)->field.le_prev = &(listelm)->field.le_next;               \
-00200 } while (0)
-00201 
-00202 #define LIST_INSERT_BEFORE(listelm, elm, field) do {                    \
-00203         (elm)->field.le_prev = (listelm)->field.le_prev;                \
-00204         (elm)->field.le_next = (listelm);                               \
-00205         *(listelm)->field.le_prev = (elm);                              \
-00206         (listelm)->field.le_prev = &(elm)->field.le_next;               \
-00207 } while (0)
-00208 
-00209 #define LIST_INSERT_HEAD(head, elm, field) do {                         \
-00210         if (((elm)->field.le_next = (head)->lh_first) != NULL)          \
-00211                 (head)->lh_first->field.le_prev = &(elm)->field.le_next;\
-00212         (head)->lh_first = (elm);                                       \
-00213         (elm)->field.le_prev = &(head)->lh_first;                       \
-00214 } while (0)
-00215 
-00216 #define LIST_REMOVE(elm, field) do {                                    \
-00217         if ((elm)->field.le_next != NULL)                               \
-00218                 (elm)->field.le_next->field.le_prev =                   \
-00219                     (elm)->field.le_prev;                               \
-00220         *(elm)->field.le_prev = (elm)->field.le_next;                   \
-00221 } while (0)
-00222 
-00223 #define LIST_REPLACE(elm, elm2, field) do {                             \
-00224         if (((elm2)->field.le_next = (elm)->field.le_next) != NULL)     \
-00225                 (elm2)->field.le_next->field.le_prev =                  \
-00226                     &(elm2)->field.le_next;                             \
-00227         (elm2)->field.le_prev = (elm)->field.le_prev;                   \
-00228         *(elm2)->field.le_prev = (elm2);                                \
-00229 } while (0)
-00230 
-00231 /*
-00232  * Simple queue definitions.
-00233  */
-00234 #define SIMPLEQ_HEAD(name, type)                                        \
-00235 struct name {                                                           \
-00236         struct type *sqh_first; /* first element */                     \
-00237         struct type **sqh_last; /* addr of last next element */         \
-00238 }
-00239 
-00240 #define SIMPLEQ_HEAD_INITIALIZER(head)                                  \
-00241         { NULL, &(head).sqh_first }
-00242 
-00243 #define SIMPLEQ_ENTRY(type)                                             \
-00244 struct {                                                                \
-00245         struct type *sqe_next;  /* next element */                      \
-00246 }
-00247 
-00248 /*
-00249  * Simple queue access methods.
-00250  */
-00251 #define SIMPLEQ_FIRST(head)         ((head)->sqh_first)
-00252 #define SIMPLEQ_END(head)           NULL
-00253 #define SIMPLEQ_EMPTY(head)         (SIMPLEQ_FIRST(head) == SIMPLEQ_END(head))
-00254 #define SIMPLEQ_NEXT(elm, field)    ((elm)->field.sqe_next)
-00255 
-00256 #define SIMPLEQ_FOREACH(var, head, field)                               \
-00257         for((var) = SIMPLEQ_FIRST(head);                                \
-00258             (var) != SIMPLEQ_END(head);                                 \
-00259             (var) = SIMPLEQ_NEXT(var, field))
-00260 
-00261 /*
-00262  * Simple queue functions.
-00263  */
-00264 #define SIMPLEQ_INIT(head) do {                                         \
-00265         (head)->sqh_first = NULL;                                       \
-00266         (head)->sqh_last = &(head)->sqh_first;                          \
-00267 } while (0)
-00268 
-00269 #define SIMPLEQ_INSERT_HEAD(head, elm, field) do {                      \
-00270         if (((elm)->field.sqe_next = (head)->sqh_first) == NULL)        \
-00271                 (head)->sqh_last = &(elm)->field.sqe_next;              \
-00272         (head)->sqh_first = (elm);                                      \
-00273 } while (0)
-00274 
-00275 #define SIMPLEQ_INSERT_TAIL(head, elm, field) do {                      \
-00276         (elm)->field.sqe_next = NULL;                                   \
-00277         *(head)->sqh_last = (elm);                                      \
-00278         (head)->sqh_last = &(elm)->field.sqe_next;                      \
-00279 } while (0)
-00280 
-00281 #define SIMPLEQ_INSERT_AFTER(head, listelm, elm, field) do {            \
-00282         if (((elm)->field.sqe_next = (listelm)->field.sqe_next) == NULL)\
-00283                 (head)->sqh_last = &(elm)->field.sqe_next;              \
-00284         (listelm)->field.sqe_next = (elm);                              \
-00285 } while (0)
-00286 
-00287 #define SIMPLEQ_REMOVE_HEAD(head, elm, field) do {                      \
-00288         if (((head)->sqh_first = (elm)->field.sqe_next) == NULL)        \
-00289                 (head)->sqh_last = &(head)->sqh_first;                  \
-00290 } while (0)
-00291 
-00292 /*
-00293  * Tail queue definitions.
-00294  */
-00295 #define TAILQ_HEAD(name, type)                                          \
-00296 struct name {                                                           \
-00297         struct type *tqh_first; /* first element */                     \
-00298         struct type **tqh_last; /* addr of last next element */         \
-00299 }
-00300 
-00301 #define TAILQ_HEAD_INITIALIZER(head)                                    \
-00302         { NULL, &(head).tqh_first }
-00303 
-00304 #define TAILQ_ENTRY(type)                                               \
-00305 struct {                                                                \
-00306         struct type *tqe_next;  /* next element */                      \
-00307         struct type **tqe_prev; /* address of previous next element */  \
-00308 }
-00309 
-00310 /* 
-00311  * tail queue access methods 
-00312  */
-00313 #define TAILQ_FIRST(head)               ((head)->tqh_first)
-00314 #define TAILQ_END(head)                 NULL
-00315 #define TAILQ_NEXT(elm, field)          ((elm)->field.tqe_next)
-00316 #define TAILQ_LAST(head, headname)                                      \
-00317         (*(((struct headname *)((head)->tqh_last))->tqh_last))
-00318 /* XXX */
-00319 #define TAILQ_PREV(elm, headname, field)                                \
-00320         (*(((struct headname *)((elm)->field.tqe_prev))->tqh_last))
-00321 #define TAILQ_EMPTY(head)                                               \
-00322         (TAILQ_FIRST(head) == TAILQ_END(head))
-00323 
-00324 #define TAILQ_FOREACH(var, head, field)                                 \
-00325         for((var) = TAILQ_FIRST(head);                                  \
-00326             (var) != TAILQ_END(head);                                   \
-00327             (var) = TAILQ_NEXT(var, field))
-00328 
-00329 #define TAILQ_FOREACH_REVERSE(var, head, headname, field)               \
-00330         for((var) = TAILQ_LAST(head, headname);                         \
-00331             (var) != TAILQ_END(head);                                   \
-00332             (var) = TAILQ_PREV(var, headname, field))
-00333 
-00334 /*
-00335  * Tail queue functions.
-00336  */
-00337 #define TAILQ_INIT(head) do {                                           \
-00338         (head)->tqh_first = NULL;                                       \
-00339         (head)->tqh_last = &(head)->tqh_first;                          \
-00340 } while (0)
-00341 
-00342 #define TAILQ_INSERT_HEAD(head, elm, field) do {                        \
-00343         if (((elm)->field.tqe_next = (head)->tqh_first) != NULL)        \
-00344                 (head)->tqh_first->field.tqe_prev =                     \
-00345                     &(elm)->field.tqe_next;                             \
-00346         else                                                            \
-00347                 (head)->tqh_last = &(elm)->field.tqe_next;              \
-00348         (head)->tqh_first = (elm);                                      \
-00349         (elm)->field.tqe_prev = &(head)->tqh_first;                     \
-00350 } while (0)
-00351 
-00352 #define TAILQ_INSERT_TAIL(head, elm, field) do {                        \
-00353         (elm)->field.tqe_next = NULL;                                   \
-00354         (elm)->field.tqe_prev = (head)->tqh_last;                       \
-00355         *(head)->tqh_last = (elm);                                      \
-00356         (head)->tqh_last = &(elm)->field.tqe_next;                      \
-00357 } while (0)
-00358 
-00359 #define TAILQ_INSERT_AFTER(head, listelm, elm, field) do {              \
-00360         if (((elm)->field.tqe_next = (listelm)->field.tqe_next) != NULL)\
-00361                 (elm)->field.tqe_next->field.tqe_prev =                 \
-00362                     &(elm)->field.tqe_next;                             \
-00363         else                                                            \
-00364                 (head)->tqh_last = &(elm)->field.tqe_next;              \
-00365         (listelm)->field.tqe_next = (elm);                              \
-00366         (elm)->field.tqe_prev = &(listelm)->field.tqe_next;             \
-00367 } while (0)
-00368 
-00369 #define TAILQ_INSERT_BEFORE(listelm, elm, field) do {                   \
-00370         (elm)->field.tqe_prev = (listelm)->field.tqe_prev;              \
-00371         (elm)->field.tqe_next = (listelm);                              \
-00372         *(listelm)->field.tqe_prev = (elm);                             \
-00373         (listelm)->field.tqe_prev = &(elm)->field.tqe_next;             \
-00374 } while (0)
-00375 
-00376 #define TAILQ_REMOVE(head, elm, field) do {                             \
-00377         if (((elm)->field.tqe_next) != NULL)                            \
-00378                 (elm)->field.tqe_next->field.tqe_prev =                 \
-00379                     (elm)->field.tqe_prev;                              \
-00380         else                                                            \
-00381                 (head)->tqh_last = (elm)->field.tqe_prev;               \
-00382         *(elm)->field.tqe_prev = (elm)->field.tqe_next;                 \
-00383 } while (0)
-00384 
-00385 #define TAILQ_REPLACE(head, elm, elm2, field) do {                      \
-00386         if (((elm2)->field.tqe_next = (elm)->field.tqe_next) != NULL)   \
-00387                 (elm2)->field.tqe_next->field.tqe_prev =                \
-00388                     &(elm2)->field.tqe_next;                            \
-00389         else                                                            \
-00390                 (head)->tqh_last = &(elm2)->field.tqe_next;             \
-00391         (elm2)->field.tqe_prev = (elm)->field.tqe_prev;                 \
-00392         *(elm2)->field.tqe_prev = (elm2);                               \
-00393 } while (0)
-00394 
-00395 /*
-00396  * Circular queue definitions.
-00397  */
-00398 #define CIRCLEQ_HEAD(name, type)                                        \
-00399 struct name {                                                           \
-00400         struct type *cqh_first;         /* first element */             \
-00401         struct type *cqh_last;          /* last element */              \
-00402 }
-00403 
-00404 #define CIRCLEQ_HEAD_INITIALIZER(head)                                  \
-00405         { CIRCLEQ_END(&head), CIRCLEQ_END(&head) }
-00406 
-00407 #define CIRCLEQ_ENTRY(type)                                             \
-00408 struct {                                                                \
-00409         struct type *cqe_next;          /* next element */              \
-00410         struct type *cqe_prev;          /* previous element */          \
-00411 }
-00412 
-00413 /*
-00414  * Circular queue access methods 
-00415  */
-00416 #define CIRCLEQ_FIRST(head)             ((head)->cqh_first)
-00417 #define CIRCLEQ_LAST(head)              ((head)->cqh_last)
-00418 #define CIRCLEQ_END(head)               ((void *)(head))
-00419 #define CIRCLEQ_NEXT(elm, field)        ((elm)->field.cqe_next)
-00420 #define CIRCLEQ_PREV(elm, field)        ((elm)->field.cqe_prev)
-00421 #define CIRCLEQ_EMPTY(head)                                             \
-00422         (CIRCLEQ_FIRST(head) == CIRCLEQ_END(head))
-00423 
-00424 #define CIRCLEQ_FOREACH(var, head, field)                               \
-00425         for((var) = CIRCLEQ_FIRST(head);                                \
-00426             (var) != CIRCLEQ_END(head);                                 \
-00427             (var) = CIRCLEQ_NEXT(var, field))
-00428 
-00429 #define CIRCLEQ_FOREACH_REVERSE(var, head, field)                       \
-00430         for((var) = CIRCLEQ_LAST(head);                                 \
-00431             (var) != CIRCLEQ_END(head);                                 \
-00432             (var) = CIRCLEQ_PREV(var, field))
-00433 
-00434 /*
-00435  * Circular queue functions.
-00436  */
-00437 #define CIRCLEQ_INIT(head) do {                                         \
-00438         (head)->cqh_first = CIRCLEQ_END(head);                          \
-00439         (head)->cqh_last = CIRCLEQ_END(head);                           \
-00440 } while (0)
-00441 
-00442 #define CIRCLEQ_INSERT_AFTER(head, listelm, elm, field) do {            \
-00443         (elm)->field.cqe_next = (listelm)->field.cqe_next;              \
-00444         (elm)->field.cqe_prev = (listelm);                              \
-00445         if ((listelm)->field.cqe_next == CIRCLEQ_END(head))             \
-00446                 (head)->cqh_last = (elm);                               \
-00447         else                                                            \
-00448                 (listelm)->field.cqe_next->field.cqe_prev = (elm);      \
-00449         (listelm)->field.cqe_next = (elm);                              \
-00450 } while (0)
-00451 
-00452 #define CIRCLEQ_INSERT_BEFORE(head, listelm, elm, field) do {           \
-00453         (elm)->field.cqe_next = (listelm);                              \
-00454         (elm)->field.cqe_prev = (listelm)->field.cqe_prev;              \
-00455         if ((listelm)->field.cqe_prev == CIRCLEQ_END(head))             \
-00456                 (head)->cqh_first = (elm);                              \
-00457         else                                                            \
-00458                 (listelm)->field.cqe_prev->field.cqe_next = (elm);      \
-00459         (listelm)->field.cqe_prev = (elm);                              \
-00460 } while (0)
-00461 
-00462 #define CIRCLEQ_INSERT_HEAD(head, elm, field) do {                      \
-00463         (elm)->field.cqe_next = (head)->cqh_first;                      \
-00464         (elm)->field.cqe_prev = CIRCLEQ_END(head);                      \
-00465         if ((head)->cqh_last == CIRCLEQ_END(head))                      \
-00466                 (head)->cqh_last = (elm);                               \
-00467         else                                                            \
-00468                 (head)->cqh_first->field.cqe_prev = (elm);              \
-00469         (head)->cqh_first = (elm);                                      \
-00470 } while (0)
-00471 
-00472 #define CIRCLEQ_INSERT_TAIL(head, elm, field) do {                      \
-00473         (elm)->field.cqe_next = CIRCLEQ_END(head);                      \
-00474         (elm)->field.cqe_prev = (head)->cqh_last;                       \
-00475         if ((head)->cqh_first == CIRCLEQ_END(head))                     \
-00476                 (head)->cqh_first = (elm);                              \
-00477         else                                                            \
-00478                 (head)->cqh_last->field.cqe_next = (elm);               \
-00479         (head)->cqh_last = (elm);                                       \
-00480 } while (0)
-00481 
-00482 #define CIRCLEQ_REMOVE(head, elm, field) do {                           \
-00483         if ((elm)->field.cqe_next == CIRCLEQ_END(head))                 \
-00484                 (head)->cqh_last = (elm)->field.cqe_prev;               \
-00485         else                                                            \
-00486                 (elm)->field.cqe_next->field.cqe_prev =                 \
-00487                     (elm)->field.cqe_prev;                              \
-00488         if ((elm)->field.cqe_prev == CIRCLEQ_END(head))                 \
-00489                 (head)->cqh_first = (elm)->field.cqe_next;              \
-00490         else                                                            \
-00491                 (elm)->field.cqe_prev->field.cqe_next =                 \
-00492                     (elm)->field.cqe_next;                              \
-00493 } while (0)
-00494 
-00495 #define CIRCLEQ_REPLACE(head, elm, elm2, field) do {                    \
-00496         if (((elm2)->field.cqe_next = (elm)->field.cqe_next) ==         \
-00497             CIRCLEQ_END(head))                                          \
-00498                 (head).cqh_last = (elm2);                               \
-00499         else                                                            \
-00500                 (elm2)->field.cqe_next->field.cqe_prev = (elm2);        \
-00501         if (((elm2)->field.cqe_prev = (elm)->field.cqe_prev) ==         \
-00502             CIRCLEQ_END(head))                                          \
-00503                 (head).cqh_first = (elm2);                              \
-00504         else                                                            \
-00505                 (elm2)->field.cqe_prev->field.cqe_next = (elm2);        \
-00506 } while (0)
-00507 
-00508 #endif  /* !_SYS_QUEUE_H_ */
-

Generated on Thu Mar 29 17:59:08 2007 for MiniMIME by  - -doxygen 1.5.1
- - diff --git a/main/minimime/mm-docs/html/mm__util_8c.html b/main/minimime/mm-docs/html/mm__util_8c.html deleted file mode 100644 index 780feb796e..0000000000 --- a/main/minimime/mm-docs/html/mm__util_8c.html +++ /dev/null @@ -1,58 +0,0 @@ - - -MiniMIME: mm_util.c File Reference - - - - -
-
-
-
-

mm_util.c File Reference

#include <stdio.h>
-#include <stdlib.h>
-#include <string.h>
-#include <time.h>
-#include <assert.h>
-#include "mm_internal.h"
- - - - - - - - - - - - - - - - - - - - - - - -

Functions

void * xmalloc (size_t size)
void * xrealloc (void *p, size_t size)
-char * xstrdup (const char *str)
-void xfree (void *p)
char * mm_unquote (const char *string)
char * mm_uncomment (const char *string)
char * xstrsep (char **stringp, const char *delim)
char * mm_stripchars (char *input, char *strip)
char * mm_addchars (char *input, char *add, u_int16_t linelength)
-void mm_striptrailing (char **what, const char *charset)
-

Detailed Description

-This module contains utility functions for the MiniMIME library
Generated on Thu Mar 29 17:59:08 2007 for MiniMIME by  - -doxygen 1.5.1
- - diff --git a/main/minimime/mm-docs/html/mm__util_8h-source.html b/main/minimime/mm-docs/html/mm__util_8h-source.html deleted file mode 100644 index 88dc9be5f2..0000000000 --- a/main/minimime/mm-docs/html/mm__util_8h-source.html +++ /dev/null @@ -1,74 +0,0 @@ - - -MiniMIME: mm_util.h Source File - - - - -
-
-
-
-

mm_util.h

00001 /*
-00002  * $Id$
-00003  *
-00004  * MiniMIME - a library for handling MIME messages
-00005  *
-00006  * Copyright (C) 2003 Jann Fischer <rezine@mistrust.net>
-00007  * All rights reserved.
-00008  *
-00009  * Redistribution and use in source and binary forms, with or without
-00010  * modification, are permitted provided that the following conditions
-00011  * are met:
-00012  *
-00013  * 1. Redistributions of source code must retain the above copyright
-00014  *    notice, this list of conditions and the following disclaimer.
-00015  * 2. Redistributions in binary form must reproduce the above copyright
-00016  *    notice, this list of conditions and the following disclaimer in the
-00017  *    documentation and/or other materials provided with the distribution.
-00018  *
-00019  * THIS SOFTWARE IS PROVIDED BY JANN FISCHER AND CONTRIBUTORS ``AS IS'' AND
-00020  * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
-00021  * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
-00022  * ARE DISCLAIMED.  IN NO EVENT SHALL JANN FISCHER OR THE VOICES IN HIS HEAD
-00023  * BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
-00024  * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
-00025  * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
-00026  * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
-00027  * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
-00028  * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF
-00029  * THE POSSIBILITY OF SUCH DAMAGE.
-00030  */
-00031 #ifndef __MM_UTIL_H
-00032 #define __MM_UTIL_H
-00033 
-00034 #define STRIP_TRAILING(str, charset) do { \
-00035         size_t eos, i, hit; \
-00036         for (eos = strlen(str); eos > 0; eos--) { \
-00037                 hit = 0; \
-00038                 for (i = 0; i <= strlen(charset); i++) { \
-00039                         if (str[eos] == charset[i]) {\
-00040                                 str[eos] = '\0'; \
-00041                                 hit = 1; \
-00042                                 break; \
-00043                         } \
-00044                 } \
-00045                 if (!hit) \
-00046                         break; \
-00047         } \
-00048 } while (0);
-00049 
-00050 #endif /* ! __MM_UTIL_H */
-

Generated on Thu Mar 29 17:59:08 2007 for MiniMIME by  - -doxygen 1.5.1
- - diff --git a/main/minimime/mm-docs/html/modules.html b/main/minimime/mm-docs/html/modules.html deleted file mode 100644 index 5057325275..0000000000 --- a/main/minimime/mm-docs/html/modules.html +++ /dev/null @@ -1,30 +0,0 @@ - - -MiniMIME: Module Index - - - - -
-
-

MiniMIME Modules

Here is a list of all modules: -
Generated on Thu Mar 29 17:59:09 2007 for MiniMIME by  - -doxygen 1.5.1
- - diff --git a/main/minimime/mm-docs/html/pages.html b/main/minimime/mm-docs/html/pages.html deleted file mode 100644 index 362d4af9b2..0000000000 --- a/main/minimime/mm-docs/html/pages.html +++ /dev/null @@ -1,23 +0,0 @@ - - -MiniMIME: Page Index - - - - -
-
-

MiniMIME Related Pages

Here is a list of all related documentation pages: -
Generated on Thu Mar 29 17:59:09 2007 for MiniMIME by  - -doxygen 1.5.1
- - diff --git a/main/minimime/mm-docs/html/tabs.css b/main/minimime/mm-docs/html/tabs.css deleted file mode 100644 index a61552a67a..0000000000 --- a/main/minimime/mm-docs/html/tabs.css +++ /dev/null @@ -1,102 +0,0 @@ -/* tabs styles, based on http://www.alistapart.com/articles/slidingdoors */ - -DIV.tabs -{ - float : left; - width : 100%; - background : url("tab_b.gif") repeat-x bottom; - margin-bottom : 4px; -} - -DIV.tabs UL -{ - margin : 0px; - padding-left : 10px; - list-style : none; -} - -DIV.tabs LI, DIV.tabs FORM -{ - display : inline; - margin : 0px; - padding : 0px; -} - -DIV.tabs FORM -{ - float : right; -} - -DIV.tabs A -{ - float : left; - background : url("tab_r.gif") no-repeat right top; - border-bottom : 1px solid #84B0C7; - font-size : x-small; - font-weight : bold; - text-decoration : none; -} - -DIV.tabs A:hover -{ - background-position: 100% -150px; -} - -DIV.tabs A:link, DIV.tabs A:visited, -DIV.tabs A:active, DIV.tabs A:hover -{ - color: #1A419D; -} - -DIV.tabs SPAN -{ - float : left; - display : block; - background : url("tab_l.gif") no-repeat left top; - padding : 5px 9px; - white-space : nowrap; -} - -DIV.tabs INPUT -{ - float : right; - display : inline; - font-size : 1em; -} - -DIV.tabs TD -{ - font-size : x-small; - font-weight : bold; - text-decoration : none; -} - - - -/* Commented Backslash Hack hides rule from IE5-Mac \*/ -DIV.tabs SPAN {float : none;} -/* End IE5-Mac hack */ - -DIV.tabs A:hover SPAN -{ - background-position: 0% -150px; -} - -DIV.tabs LI#current A -{ - background-position: 100% -150px; - border-width : 0px; -} - -DIV.tabs LI#current SPAN -{ - background-position: 0% -150px; - padding-bottom : 6px; -} - -DIV.nav -{ - background : none; - border : none; - border-bottom : 1px solid #84B0C7; -} diff --git a/main/minimime/mm-docs/latex/Makefile b/main/minimime/mm-docs/latex/Makefile deleted file mode 100644 index 776fcf9682..0000000000 --- a/main/minimime/mm-docs/latex/Makefile +++ /dev/null @@ -1,39 +0,0 @@ -all: clean refman.dvi - -ps: refman.ps - -pdf: refman.pdf - -ps_2on1: refman_2on1.ps - -pdf_2on1: refman_2on1.pdf - -refman.ps: refman.dvi - dvips -o refman.ps refman.dvi - -refman.pdf: refman.ps - ps2pdf refman.ps refman.pdf - -refman.dvi: refman.tex doxygen.sty - echo "Running latex..." - latex refman.tex - echo "Running makeindex..." - makeindex refman.idx - echo "Rerunning latex...." - latex refman.tex - latex_count=5 ; \ - while egrep -s 'Rerun (LaTeX|to get cross-references right)' refman.log && [ $$latex_count -gt 0 ] ;\ - do \ - echo "Rerunning latex...." ;\ - latex refman.tex ;\ - latex_count=`expr $$latex_count - 1` ;\ - done - -refman_2on1.ps: refman.ps - psnup -2 refman.ps >refman_2on1.ps - -refman_2on1.pdf: refman_2on1.ps - ps2pdf refman_2on1.ps refman_2on1.pdf - -clean: - rm -f *.ps *.dvi *.aux *.toc *.idx *.ind *.ilg *.log *.out refman.pdf diff --git a/main/minimime/mm-docs/latex/bug.tex b/main/minimime/mm-docs/latex/bug.tex deleted file mode 100644 index 0850a8f78d..0000000000 --- a/main/minimime/mm-docs/latex/bug.tex +++ /dev/null @@ -1,9 +0,0 @@ -\section{Bug List}\label{bug} -\label{bug__bug000001} - \begin{description} -\item[Global \doxyref{mm\_\-content\_\-setmaintype}{p.}{group__contenttype_g7bab273d117c6c0cacad20361d8fb1c8} ]The xfree() call could lead to undesirable results. Do we really need it? \end{description} - - -\label{bug__bug000002} - \begin{description} -\item[Global \doxyref{mm\_\-content\_\-setsubtype}{p.}{group__contenttype_g14b0738410d566ad2312405946f22212} ]The xfree() call could lead to undesirable results. Do we really need it? \end{description} diff --git a/main/minimime/mm-docs/latex/doxygen.sty b/main/minimime/mm-docs/latex/doxygen.sty deleted file mode 100644 index 37e3982923..0000000000 --- a/main/minimime/mm-docs/latex/doxygen.sty +++ /dev/null @@ -1,78 +0,0 @@ -\NeedsTeXFormat{LaTeX2e} -\ProvidesPackage{doxygen} -\RequirePackage{calc} -\RequirePackage{array} -\pagestyle{fancyplain} -\newcommand{\clearemptydoublepage}{\newpage{\pagestyle{empty}\cleardoublepage}} -\renewcommand{\chaptermark}[1]{\markboth{#1}{}} -\renewcommand{\sectionmark}[1]{\markright{\thesection\ #1}} -\lhead[\fancyplain{}{\bfseries\thepage}] - {\fancyplain{}{\bfseries\rightmark}} -\rhead[\fancyplain{}{\bfseries\leftmark}] - {\fancyplain{}{\bfseries\thepage}} -\rfoot[\fancyplain{}{\bfseries\scriptsize Generated on Thu Mar 29 17:59:08 2007 for Mini\-MIME by Doxygen }]{} -\lfoot[]{\fancyplain{}{\bfseries\scriptsize Generated on Thu Mar 29 17:59:08 2007 for Mini\-MIME by Doxygen }} -\cfoot{} -\newenvironment{Code} -{\footnotesize} -{\normalsize} -\newcommand{\doxyref}[3]{\textbf{#1} (\textnormal{#2}\,\pageref{#3})} -\newenvironment{DocInclude} -{\footnotesize} -{\normalsize} -\newenvironment{VerbInclude} -{\footnotesize} -{\normalsize} -\newenvironment{Image} -{\begin{figure}[H]} -{\end{figure}} -\newenvironment{ImageNoCaption}{}{} -\newenvironment{CompactList} -{\begin{list}{}{ - \setlength{\leftmargin}{0.5cm} - \setlength{\itemsep}{0pt} - \setlength{\parsep}{0pt} - \setlength{\topsep}{0pt} - \renewcommand{\makelabel}{\hfill}}} -{\end{list}} -\newenvironment{CompactItemize} -{ - \begin{itemize} - \setlength{\itemsep}{-3pt} - \setlength{\parsep}{0pt} - \setlength{\topsep}{0pt} - \setlength{\partopsep}{0pt} -} -{\end{itemize}} -\newcommand{\PBS}[1]{\let\temp=\\#1\let\\=\temp} -\newlength{\tmplength} -\newenvironment{TabularC}[1] -{ -\setlength{\tmplength} - {\linewidth/(#1)-\tabcolsep*2-\arrayrulewidth*(#1+1)/(#1)} - \par\begin{tabular*}{\linewidth} - {*{#1}{|>{\PBS\raggedright\hspace{0pt}}p{\the\tmplength}}|} -} -{\end{tabular*}\par} -\newcommand{\entrylabel}[1]{ - {\parbox[b]{\labelwidth-4pt}{\makebox[0pt][l]{\textbf{#1}}\vspace{1.5\baselineskip}}}} -\newenvironment{Desc} -{\begin{list}{} - { - \settowidth{\labelwidth}{40pt} - \setlength{\leftmargin}{\labelwidth} - \setlength{\parsep}{0pt} - \setlength{\itemsep}{-4pt} - \renewcommand{\makelabel}{\entrylabel} - } -} -{\end{list}} -\newenvironment{Indent} - {\begin{list}{}{\setlength{\leftmargin}{0.5cm}} - \item[]\ignorespaces} - {\unskip\end{list}} -\setlength{\parindent}{0cm} -\setlength{\parskip}{0.2cm} -\addtocounter{secnumdepth}{1} -\sloppy -\usepackage[T1]{fontenc} diff --git a/main/minimime/mm-docs/latex/files.tex b/main/minimime/mm-docs/latex/files.tex deleted file mode 100644 index fd49692dbe..0000000000 --- a/main/minimime/mm-docs/latex/files.tex +++ /dev/null @@ -1,21 +0,0 @@ -\section{Mini\-MIME File List} -Here is a list of all documented files with brief descriptions:\begin{CompactList} -\item\contentsline{section}{\textbf{mimeparser.h} }{\pageref{mimeparser_8h}}{} -\item\contentsline{section}{\textbf{mimeparser.tab.h} }{\pageref{mimeparser_8tab_8h}}{} -\item\contentsline{section}{\textbf{mm.h} }{\pageref{mm_8h}}{} -\item\contentsline{section}{{\bf mm\_\-codecs.c} }{\pageref{mm__codecs_8c}}{} -\item\contentsline{section}{{\bf mm\_\-contenttype.c} }{\pageref{mm__contenttype_8c}}{} -\item\contentsline{section}{{\bf mm\_\-context.c} }{\pageref{mm__context_8c}}{} -\item\contentsline{section}{{\bf mm\_\-envelope.c} }{\pageref{mm__envelope_8c}}{} -\item\contentsline{section}{{\bf mm\_\-error.c} }{\pageref{mm__error_8c}}{} -\item\contentsline{section}{{\bf mm\_\-header.c} }{\pageref{mm__header_8c}}{} -\item\contentsline{section}{{\bf mm\_\-internal.h} }{\pageref{mm__internal_8h}}{} -\item\contentsline{section}{\textbf{mm\_\-mem.h} }{\pageref{mm__mem_8h}}{} -\item\contentsline{section}{{\bf mm\_\-mimepart.c} }{\pageref{mm__mimepart_8c}}{} -\item\contentsline{section}{{\bf mm\_\-mimeutil.c} }{\pageref{mm__mimeutil_8c}}{} -\item\contentsline{section}{{\bf mm\_\-param.c} }{\pageref{mm__param_8c}}{} -\item\contentsline{section}{{\bf mm\_\-parse.c} }{\pageref{mm__parse_8c}}{} -\item\contentsline{section}{\textbf{mm\_\-queue.h} }{\pageref{mm__queue_8h}}{} -\item\contentsline{section}{{\bf mm\_\-util.c} }{\pageref{mm__util_8c}}{} -\item\contentsline{section}{\textbf{mm\_\-util.h} }{\pageref{mm__util_8h}}{} -\end{CompactList} diff --git a/main/minimime/mm-docs/latex/group__codecs.tex b/main/minimime/mm-docs/latex/group__codecs.tex deleted file mode 100644 index 33c15f6d94..0000000000 --- a/main/minimime/mm-docs/latex/group__codecs.tex +++ /dev/null @@ -1,119 +0,0 @@ -\section{Manipulating Mini\-MIME codecs} -\label{group__codecs}\index{Manipulating MiniMIME codecs@{Manipulating MiniMIME codecs}} -\subsection*{Codec manipulation} -\begin{CompactItemize} -\item -int {\bf mm\_\-codec\_\-hasdecoder} (const char $\ast$encoding) -\item -int {\bf mm\_\-codec\_\-hasencoder} (const char $\ast$encoding) -\item -int {\bf mm\_\-codec\_\-isregistered} (const char $\ast$encoding) -\item -int {\bf mm\_\-codec\_\-register} (const char $\ast$encoding, char $\ast$($\ast$encoder)(char $\ast$data, u\_\-int32\_\-t i), char $\ast$($\ast$decoder)(char $\ast$data)) -\item -int {\bf mm\_\-codec\_\-unregister} (const char $\ast$encoding) -\item -int {\bf mm\_\-codec\_\-unregisterall} (void) -\item -void {\bf mm\_\-codec\_\-registerdefaultcodecs} (void) -\end{CompactItemize} - - -\subsection{Function Documentation} -\index{codecs@{codecs}!mm_codec_hasdecoder@{mm\_\-codec\_\-hasdecoder}} -\index{mm_codec_hasdecoder@{mm\_\-codec\_\-hasdecoder}!codecs@{codecs}} -\subsubsection{\setlength{\rightskip}{0pt plus 5cm}int mm\_\-codec\_\-hasdecoder (const char $\ast$ {\em encoding})}\label{group__codecs_g6ccb0f7a1d7c870dc3dae04f31d6ccca} - - -Looks up whether a context has an decoder installed for a given encoding - -\begin{Desc} -\item[Parameters:] -\begin{description} -\item[{\em encoding}]The encoding specifier to look up \end{description} -\end{Desc} -\begin{Desc} -\item[Returns:]1 if a decoder is installed or 0 if not \end{Desc} -\index{codecs@{codecs}!mm_codec_hasencoder@{mm\_\-codec\_\-hasencoder}} -\index{mm_codec_hasencoder@{mm\_\-codec\_\-hasencoder}!codecs@{codecs}} -\subsubsection{\setlength{\rightskip}{0pt plus 5cm}int mm\_\-codec\_\-hasencoder (const char $\ast$ {\em encoding})}\label{group__codecs_g50ff257b794ceaec7aedf9ae18bfcc57} - - -Looks up whether a context has an encoder installed for a given encoding - -\begin{Desc} -\item[Parameters:] -\begin{description} -\item[{\em ctx}]A valid MIME context \item[{\em encoding}]The encoding specifier to look up \end{description} -\end{Desc} -\begin{Desc} -\item[Returns:]1 if an encoder is installed or 0 if not \end{Desc} -\index{codecs@{codecs}!mm_codec_isregistered@{mm\_\-codec\_\-isregistered}} -\index{mm_codec_isregistered@{mm\_\-codec\_\-isregistered}!codecs@{codecs}} -\subsubsection{\setlength{\rightskip}{0pt plus 5cm}int mm\_\-codec\_\-isregistered (const char $\ast$ {\em encoding})}\label{group__codecs_g9e19f6343128fd7e4ec57c3d55049b55} - - -Looks up whether a codec for a given encoding is installed to a context - -\begin{Desc} -\item[Parameters:] -\begin{description} -\item[{\em encoding}]The encoding specifier to look up \end{description} -\end{Desc} -\begin{Desc} -\item[Returns:]1 if a codec was found or 0 if not \end{Desc} -\index{codecs@{codecs}!mm_codec_register@{mm\_\-codec\_\-register}} -\index{mm_codec_register@{mm\_\-codec\_\-register}!codecs@{codecs}} -\subsubsection{\setlength{\rightskip}{0pt plus 5cm}int mm\_\-codec\_\-register (const char $\ast$ {\em encoding}, char $\ast$($\ast$)(char $\ast$data, u\_\-int32\_\-t i) {\em encoder}, char $\ast$($\ast$)(char $\ast$data) {\em decoder})}\label{group__codecs_gf97a7311c909888ed9f6f14d6f1bf397} - - -Registers a codec with the Mini\-MIME library - -\begin{Desc} -\item[Parameters:] -\begin{description} -\item[{\em encoding}]The encoding specifier for which to register the codec \item[{\em encoder}]The encoder function for this encoding \item[{\em decoder}]The decoder function for this encoding \end{description} -\end{Desc} -\begin{Desc} -\item[Returns:]1 if successfull or 0 if not\end{Desc} -This function registers a codec for a given Mini\-MIME context. The codec may provide an decoder, an encoder or both (but not none). If there is a codec already installed for this encoding, the function will puke. \index{codecs@{codecs}!mm_codec_registerdefaultcodecs@{mm\_\-codec\_\-registerdefaultcodecs}} -\index{mm_codec_registerdefaultcodecs@{mm\_\-codec\_\-registerdefaultcodecs}!codecs@{codecs}} -\subsubsection{\setlength{\rightskip}{0pt plus 5cm}void mm\_\-codec\_\-registerdefaultcodecs (void)}\label{group__codecs_gf39e72460fb85f5ca41f6e270a68aacc} - - -Registers the default codecs to a Mini\-MIME context - -This functions registers the codecs for the following encodings to a Mini\-MIME context: - -\begin{itemize} -\item Base64\item (TODO:) Quoted-Printable \end{itemize} -\index{codecs@{codecs}!mm_codec_unregister@{mm\_\-codec\_\-unregister}} -\index{mm_codec_unregister@{mm\_\-codec\_\-unregister}!codecs@{codecs}} -\subsubsection{\setlength{\rightskip}{0pt plus 5cm}int mm\_\-codec\_\-unregister (const char $\ast$ {\em encoding})}\label{group__codecs_g0c71696bc70f834386193e3c7a0e2ca4} - - -Unregisters a Mini\-MIME codec - -\begin{Desc} -\item[Parameters:] -\begin{description} -\item[{\em encoding}]The encoding specifier which to unregister \end{description} -\end{Desc} -\begin{Desc} -\item[Returns:]0 if unregistered successfully, or -1 if there was no such codec \end{Desc} -\index{codecs@{codecs}!mm_codec_unregisterall@{mm\_\-codec\_\-unregisterall}} -\index{mm_codec_unregisterall@{mm\_\-codec\_\-unregisterall}!codecs@{codecs}} -\subsubsection{\setlength{\rightskip}{0pt plus 5cm}int mm\_\-codec\_\-unregisterall (void)}\label{group__codecs_g7c9e6538f84c368be2b56a3c9ba702be} - - -Unregisters all codecs within a context - -\begin{Desc} -\item[Parameters:] -\begin{description} -\item[{\em ctx}]A valid Mini\-MIME context \end{description} -\end{Desc} -\begin{Desc} -\item[Returns:]0 if all codecs were unregistered successfully or -1 if an error occured. \end{Desc} -\begin{Desc} -\item[Note:]Foobar \end{Desc} diff --git a/main/minimime/mm-docs/latex/group__contenttype.tex b/main/minimime/mm-docs/latex/group__contenttype.tex deleted file mode 100644 index 166261a629..0000000000 --- a/main/minimime/mm-docs/latex/group__contenttype.tex +++ /dev/null @@ -1,246 +0,0 @@ -\section{Accessing and manipulating Content-Type objects} -\label{group__contenttype}\index{Accessing and manipulating Content-Type objects@{Accessing and manipulating Content-Type objects}} -\subsection*{Functions for manipulating Content-Type objects} -\begin{CompactItemize} -\item -mm\_\-content $\ast$ {\bf mm\_\-content\_\-new} (void) -\item -void {\bf mm\_\-content\_\-free} (struct mm\_\-content $\ast$ct) -\item -int {\bf mm\_\-content\_\-attachparam} (struct mm\_\-content $\ast$ct, struct mm\_\-param $\ast$param) -\item -char $\ast$ {\bf mm\_\-content\_\-getparambyname} (struct mm\_\-content $\ast$ct, const char $\ast$name) -\item -mm\_\-param $\ast$ \textbf{mm\_\-content\_\-getparamobjbyname} (struct mm\_\-content $\ast$ct, const char $\ast$name)\label{group__contenttype_g1ba63e679d2b49aceb6cfec8a6752581} - -\item -int {\bf mm\_\-content\_\-setmaintype} (struct mm\_\-content $\ast$ct, char $\ast$value, int copy) -\item -char $\ast$ {\bf mm\_\-content\_\-getmaintype} (struct mm\_\-content $\ast$ct) -\item -char $\ast$ {\bf mm\_\-content\_\-getsubtype} (struct mm\_\-content $\ast$ct) -\item -char $\ast$ \textbf{mm\_\-content\_\-gettype} (struct mm\_\-content $\ast$ct)\label{group__contenttype_ga6d8453eb35bd695c4944e53b7040b65} - -\item -int {\bf mm\_\-content\_\-setsubtype} (struct mm\_\-content $\ast$ct, char $\ast$value, int copy) -\item -int \textbf{mm\_\-content\_\-settype} (struct mm\_\-content $\ast$ct, const char $\ast$fmt,...)\label{group__contenttype_g878686678ea2ba97aa8edb1206a564d8} - -\item -int {\bf mm\_\-content\_\-iscomposite} (struct mm\_\-content $\ast$ct) -\item -int {\bf mm\_\-content\_\-isvalidencoding} (const char $\ast$encoding) -\item -int {\bf mm\_\-content\_\-setencoding} (struct mm\_\-content $\ast$ct, const char $\ast$encoding) -\item -int {\bf mm\_\-content\_\-getencoding} (struct mm\_\-content $\ast$ct, const char $\ast$encoding) -\item -char $\ast$ {\bf mm\_\-content\_\-paramstostring} (struct mm\_\-content $\ast$ct) -\item -char $\ast$ {\bf mm\_\-content\_\-tostring} (struct mm\_\-content $\ast$ct) -\end{CompactItemize} -\subsection*{Variables} -\begin{CompactItemize} -\item -int \textbf{mm\_\-encoding\_\-mappings::type}\label{group__contenttype_g6c458a8611981109bf0519b5ae21e12e} - -\end{CompactItemize} - - -\subsection{Function Documentation} -\index{contenttype@{contenttype}!mm_content_attachparam@{mm\_\-content\_\-attachparam}} -\index{mm_content_attachparam@{mm\_\-content\_\-attachparam}!contenttype@{contenttype}} -\subsubsection{\setlength{\rightskip}{0pt plus 5cm}int mm\_\-content\_\-attachparam (struct mm\_\-content $\ast$ {\em ct}, struct mm\_\-param $\ast$ {\em param})}\label{group__contenttype_g080b7ed798ed497dcd635a6bab86962f} - - -Attaches a parameter to a Content-Type object - -\begin{Desc} -\item[Parameters:] -\begin{description} -\item[{\em ct}]The target Content-Type object \item[{\em param}]The Content-Type parameter which to attach \end{description} -\end{Desc} -\begin{Desc} -\item[Returns:]0 on success and -1 on failure \end{Desc} -\index{contenttype@{contenttype}!mm_content_free@{mm\_\-content\_\-free}} -\index{mm_content_free@{mm\_\-content\_\-free}!contenttype@{contenttype}} -\subsubsection{\setlength{\rightskip}{0pt plus 5cm}void mm\_\-content\_\-free (struct mm\_\-content $\ast$ {\em ct})}\label{group__contenttype_g404314481125849bce869ee4b0f647af} - - -Releases all memory associated with an Content-Type object - -\begin{Desc} -\item[Parameters:] -\begin{description} -\item[{\em ct}]A Content-Type object \end{description} -\end{Desc} -\begin{Desc} -\item[Returns:]Nothing \end{Desc} -\index{contenttype@{contenttype}!mm_content_getencoding@{mm\_\-content\_\-getencoding}} -\index{mm_content_getencoding@{mm\_\-content\_\-getencoding}!contenttype@{contenttype}} -\subsubsection{\setlength{\rightskip}{0pt plus 5cm}int mm\_\-content\_\-getencoding (struct mm\_\-content $\ast$ {\em ct}, const char $\ast$ {\em encoding})}\label{group__contenttype_gbff87e581cd04db16e91245e9e9de67d} - - -Gets the numerical ID of a content encoding identifier - -\begin{Desc} -\item[Parameters:] -\begin{description} -\item[{\em ct}]A valid Content Type object \item[{\em encoding}]A string representing the content encoding identifier \end{description} -\end{Desc} -\begin{Desc} -\item[Returns:]The numerical ID of the content encoding \end{Desc} -\index{contenttype@{contenttype}!mm_content_getmaintype@{mm\_\-content\_\-getmaintype}} -\index{mm_content_getmaintype@{mm\_\-content\_\-getmaintype}!contenttype@{contenttype}} -\subsubsection{\setlength{\rightskip}{0pt plus 5cm}char$\ast$ mm\_\-content\_\-getmaintype (struct mm\_\-content $\ast$ {\em ct})}\label{group__contenttype_gb213081017abf6bc7e601c6bf4214924} - - -Retrieves the main MIME type stored in a Content-Type object - -\begin{Desc} -\item[Parameters:] -\begin{description} -\item[{\em ct}]A valid Content-Type object \end{description} -\end{Desc} -\begin{Desc} -\item[Returns:]A pointer to the string representing the main type \end{Desc} -\index{contenttype@{contenttype}!mm_content_getparambyname@{mm\_\-content\_\-getparambyname}} -\index{mm_content_getparambyname@{mm\_\-content\_\-getparambyname}!contenttype@{contenttype}} -\subsubsection{\setlength{\rightskip}{0pt plus 5cm}char$\ast$ mm\_\-content\_\-getparambyname (struct mm\_\-content $\ast$ {\em ct}, const char $\ast$ {\em name})}\label{group__contenttype_g451441ee557ab5ef29477f3dc8330bf6} - - -Gets a parameter value from a Content-Type object. - -\begin{Desc} -\item[Parameters:] -\begin{description} -\item[{\em ct}]the Content-Type object \item[{\em name}]the name of the parameter to retrieve \end{description} -\end{Desc} -\begin{Desc} -\item[Returns:]The value of the parameter on success or a NULL pointer on failure \end{Desc} -\index{contenttype@{contenttype}!mm_content_getsubtype@{mm\_\-content\_\-getsubtype}} -\index{mm_content_getsubtype@{mm\_\-content\_\-getsubtype}!contenttype@{contenttype}} -\subsubsection{\setlength{\rightskip}{0pt plus 5cm}char$\ast$ mm\_\-content\_\-getsubtype (struct mm\_\-content $\ast$ {\em ct})}\label{group__contenttype_g97f77ef40c14cd0fb397bad358ee5d49} - - -Retrieves the sub MIME type stored in a Content-Type object - -\begin{Desc} -\item[Parameters:] -\begin{description} -\item[{\em ct}]A valid Content-Type object \end{description} -\end{Desc} -\begin{Desc} -\item[Returns:]A pointer to the string holding the current sub MIME type \end{Desc} -\index{contenttype@{contenttype}!mm_content_iscomposite@{mm\_\-content\_\-iscomposite}} -\index{mm_content_iscomposite@{mm\_\-content\_\-iscomposite}!contenttype@{contenttype}} -\subsubsection{\setlength{\rightskip}{0pt plus 5cm}int mm\_\-content\_\-iscomposite (struct mm\_\-content $\ast$ {\em ct})}\label{group__contenttype_ga7fa479f27e73dea57257421d8fc9fc5} - - -Checks whether the Content-Type represents a composite message or not - -\begin{Desc} -\item[Parameters:] -\begin{description} -\item[{\em ct}]A valid Content-Type object \end{description} -\end{Desc} -\begin{Desc} -\item[Returns:]1 if the Content-Type object represents a composite message or 0 if not. \end{Desc} -\index{contenttype@{contenttype}!mm_content_isvalidencoding@{mm\_\-content\_\-isvalidencoding}} -\index{mm_content_isvalidencoding@{mm\_\-content\_\-isvalidencoding}!contenttype@{contenttype}} -\subsubsection{\setlength{\rightskip}{0pt plus 5cm}int mm\_\-content\_\-isvalidencoding (const char $\ast$ {\em encoding})}\label{group__contenttype_gb724b5979182fa272fe4fd1b72b395d5} - - -Verifies whether a string represents a valid encoding or not. - -\begin{Desc} -\item[Parameters:] -\begin{description} -\item[{\em encoding}]The string to verify \end{description} -\end{Desc} -\begin{Desc} -\item[Returns:]1 if the encoding string is valid or 0 if not \end{Desc} -\index{contenttype@{contenttype}!mm_content_new@{mm\_\-content\_\-new}} -\index{mm_content_new@{mm\_\-content\_\-new}!contenttype@{contenttype}} -\subsubsection{\setlength{\rightskip}{0pt plus 5cm}struct mm\_\-content$\ast$ mm\_\-content\_\-new (void)}\label{group__contenttype_g3880ac74a20b4a9f610a4159568e1801} - - -Creates a new object to hold a Content-Type representation. The allocated memory must later be freed using \doxyref{mm\_\-content\_\-free()}{p.}{group__contenttype_g404314481125849bce869ee4b0f647af} - -\begin{Desc} -\item[Returns:]An object representing a MIME Content-Type \end{Desc} -\begin{Desc} -\item[See also:]\doxyref{mm\_\-content\_\-free}{p.}{group__contenttype_g404314481125849bce869ee4b0f647af} \end{Desc} -\index{contenttype@{contenttype}!mm_content_paramstostring@{mm\_\-content\_\-paramstostring}} -\index{mm_content_paramstostring@{mm\_\-content\_\-paramstostring}!contenttype@{contenttype}} -\subsubsection{\setlength{\rightskip}{0pt plus 5cm}char$\ast$ mm\_\-content\_\-paramstostring (struct mm\_\-content $\ast$ {\em ct})}\label{group__contenttype_g792e7d33fbb30e0123408bcef9d3204c} - - -Constructs a MIME conform string of Content-Type parameters. - -\begin{Desc} -\item[Parameters:] -\begin{description} -\item[{\em ct}]A valid Content Type object \end{description} -\end{Desc} -\begin{Desc} -\item[Returns:]A pointer to a string representing the Content-Type parameters in MIME terminology, or NULL if either the Content-Type object is invalid, has no parameters or no memory could be allocated.\end{Desc} -This function constructs a MIME conform string including all the parameters associated with the given Content-Type object. It should NOT be used if you need an opaque copy of the current MIME part (e.g. for PGP purposes). \index{contenttype@{contenttype}!mm_content_setencoding@{mm\_\-content\_\-setencoding}} -\index{mm_content_setencoding@{mm\_\-content\_\-setencoding}!contenttype@{contenttype}} -\subsubsection{\setlength{\rightskip}{0pt plus 5cm}int mm\_\-content\_\-setencoding (struct mm\_\-content $\ast$ {\em ct}, const char $\ast$ {\em encoding})}\label{group__contenttype_gea945e48ac5cca846715543634b9afe4} - - -Set the encoding of a MIME entitity according to a mapping table - -\begin{Desc} -\item[Parameters:] -\begin{description} -\item[{\em ct}]A valid content type object \item[{\em encoding}]A string representing the content encoding \end{description} -\end{Desc} -\begin{Desc} -\item[Returns:]0 if successfull or -1 if not (i.e. unknown content encoding) \end{Desc} -\index{contenttype@{contenttype}!mm_content_setmaintype@{mm\_\-content\_\-setmaintype}} -\index{mm_content_setmaintype@{mm\_\-content\_\-setmaintype}!contenttype@{contenttype}} -\subsubsection{\setlength{\rightskip}{0pt plus 5cm}int mm\_\-content\_\-setmaintype (struct mm\_\-content $\ast$ {\em ct}, char $\ast$ {\em value}, int {\em copy})}\label{group__contenttype_g7bab273d117c6c0cacad20361d8fb1c8} - - -Sets the MIME main type for a MIME Content-Type object - -\begin{Desc} -\item[Parameters:] -\begin{description} -\item[{\em ct}]The MIME Content-Type object \item[{\em value}]The value which to set the main type to \item[{\em copy}]Whether to make a copy of the value (original value must be freed afterwards to prevent memory leaks). \end{description} -\end{Desc} - - -\begin{Desc} -\item[{\bf Bug}]The xfree() call could lead to undesirable results. Do we really need it? \end{Desc} -\index{contenttype@{contenttype}!mm_content_setsubtype@{mm\_\-content\_\-setsubtype}} -\index{mm_content_setsubtype@{mm\_\-content\_\-setsubtype}!contenttype@{contenttype}} -\subsubsection{\setlength{\rightskip}{0pt plus 5cm}int mm\_\-content\_\-setsubtype (struct mm\_\-content $\ast$ {\em ct}, char $\ast$ {\em value}, int {\em copy})}\label{group__contenttype_g14b0738410d566ad2312405946f22212} - - -Sets the MIME sub type for a MIME Content-Type object - -\begin{Desc} -\item[Parameters:] -\begin{description} -\item[{\em ct}]The MIME Content-Type object \item[{\em value}]The value which to set the sub type to \item[{\em copy}]Whether to make a copy of the value (original value must be freed afterwards to prevent memory leaks). \end{description} -\end{Desc} - - -\begin{Desc} -\item[{\bf Bug}]The xfree() call could lead to undesirable results. Do we really need it? \end{Desc} -\index{contenttype@{contenttype}!mm_content_tostring@{mm\_\-content\_\-tostring}} -\index{mm_content_tostring@{mm\_\-content\_\-tostring}!contenttype@{contenttype}} -\subsubsection{\setlength{\rightskip}{0pt plus 5cm}char$\ast$ mm\_\-content\_\-tostring (struct mm\_\-content $\ast$ {\em ct})}\label{group__contenttype_g18a99c95e35a76f13a77a83c4231e738} - - -Creates a Content-Type header according to the object given - -\begin{Desc} -\item[Parameters:] -\begin{description} -\item[{\em ct}]A valid Content-Type object \end{description} -\end{Desc} diff --git a/main/minimime/mm-docs/latex/group__context.tex b/main/minimime/mm-docs/latex/group__context.tex deleted file mode 100644 index aa28a7ba53..0000000000 --- a/main/minimime/mm-docs/latex/group__context.tex +++ /dev/null @@ -1,214 +0,0 @@ -\section{Accessing and manipulating MIME contexts} -\label{group__context}\index{Accessing and manipulating MIME contexts@{Accessing and manipulating MIME contexts}} -\subsection*{Manipulating Mini\-MIME contexts} -\begin{CompactItemize} -\item -MM\_\-CTX $\ast$ {\bf mm\_\-context\_\-new} (void) -\item -void {\bf mm\_\-context\_\-free} (MM\_\-CTX $\ast$ctx) -\item -int {\bf mm\_\-context\_\-attachpart} (MM\_\-CTX $\ast$ctx, struct mm\_\-mimepart $\ast$part) -\item -int {\bf mm\_\-context\_\-attachpart\_\-after} (MM\_\-CTX $\ast$ctx, struct mm\_\-mimepart $\ast$part, int pos) -\item -int {\bf mm\_\-context\_\-deletepart} (MM\_\-CTX $\ast$ctx, int which, int freemem) -\item -int {\bf mm\_\-context\_\-countparts} (MM\_\-CTX $\ast$ctx) -\item -mm\_\-mimepart $\ast$ {\bf mm\_\-context\_\-getpart} (MM\_\-CTX $\ast$ctx, int which) -\item -int {\bf mm\_\-context\_\-iscomposite} (MM\_\-CTX $\ast$ctx) -\item -int {\bf mm\_\-context\_\-haswarnings} (MM\_\-CTX $\ast$ctx) -\item -int {\bf mm\_\-context\_\-generateboundary} (MM\_\-CTX $\ast$ctx) -\item -int {\bf mm\_\-context\_\-setpreamble} (MM\_\-CTX $\ast$ctx, char $\ast$preamble) -\item -char $\ast$ \textbf{mm\_\-context\_\-getpreamble} (MM\_\-CTX $\ast$ctx)\label{group__context_g1ebbdd51106ccdee77ca421f9692bde7} - -\item -int {\bf mm\_\-context\_\-flatten} (MM\_\-CTX $\ast$ctx, char $\ast$$\ast$flat, size\_\-t $\ast$length, int flags) -\end{CompactItemize} - - -\subsection{Detailed Description} -Each message in Mini\-MIME is represented by a so called ``context''. A context holds all necessary information given about a MIME message, such as the envelope, all MIME parts etc. - -\subsection{Function Documentation} -\index{context@{context}!mm_context_attachpart@{mm\_\-context\_\-attachpart}} -\index{mm_context_attachpart@{mm\_\-context\_\-attachpart}!context@{context}} -\subsubsection{\setlength{\rightskip}{0pt plus 5cm}int mm\_\-context\_\-attachpart (MM\_\-CTX $\ast$ {\em ctx}, struct mm\_\-mimepart $\ast$ {\em part})}\label{group__context_gec3ca486a61b392ff68774242086768e} - - -Attaches a MIME part object to a Mini\-MIME context. - -\begin{Desc} -\item[Parameters:] -\begin{description} -\item[{\em ctx}]the Mini\-MIME context \item[{\em part}]the MIME part object to attach \end{description} -\end{Desc} -\begin{Desc} -\item[Returns:]0 on success or -1 on failure. Sets mm\_\-errno on failure.\end{Desc} -This function attaches a MIME part to a context, appending it to the end of the message. - -The MIME part should be initialized before attaching it using \doxyref{mm\_\-mimepart\_\-new()}{p.}{group__mimepart_g417e5dd361e30cddb91e1d9a5e30b223}. \index{context@{context}!mm_context_attachpart_after@{mm\_\-context\_\-attachpart\_\-after}} -\index{mm_context_attachpart_after@{mm\_\-context\_\-attachpart\_\-after}!context@{context}} -\subsubsection{\setlength{\rightskip}{0pt plus 5cm}int mm\_\-context\_\-attachpart\_\-after (MM\_\-CTX $\ast$ {\em ctx}, struct mm\_\-mimepart $\ast$ {\em part}, int {\em pos})}\label{group__context_g73a3dd187053aeabca4836dc28a6c468} - - -Attaches a MIME part object to a Mini\-MIME context at a given position - -\begin{Desc} -\item[Parameters:] -\begin{description} -\item[{\em ctx}]A valid Mini\-MIME context \item[{\em part}]The MIME part object to attach \item[{\em pos}]After which part to attach the object \end{description} -\end{Desc} -\begin{Desc} -\item[Returns:]0 on success or -1 if the given position is invalid \end{Desc} -\begin{Desc} -\item[See also:]\doxyref{mm\_\-context\_\-attachpart}{p.}{group__context_gec3ca486a61b392ff68774242086768e}\end{Desc} -This function attaches a MIME part object after a given position in the specified context. If the position is invalid (out of range), the part will not get attached to the message and the function returns -1. If the index was in range, the MIME part will get attached after the MIME part at the given position, moving any possible following MIME parts one down the hierarchy. \index{context@{context}!mm_context_countparts@{mm\_\-context\_\-countparts}} -\index{mm_context_countparts@{mm\_\-context\_\-countparts}!context@{context}} -\subsubsection{\setlength{\rightskip}{0pt plus 5cm}int mm\_\-context\_\-countparts (MM\_\-CTX $\ast$ {\em ctx})}\label{group__context_gf5bb032ad1c481d31d7b1b0710939712} - - -Counts the number of attached MIME part objects in a given Mini\-MIME context - -\begin{Desc} -\item[Parameters:] -\begin{description} -\item[{\em ctx}]The Mini\-MIME context \end{description} -\end{Desc} -\begin{Desc} -\item[Returns:]The number of attached MIME part objects \end{Desc} -\index{context@{context}!mm_context_deletepart@{mm\_\-context\_\-deletepart}} -\index{mm_context_deletepart@{mm\_\-context\_\-deletepart}!context@{context}} -\subsubsection{\setlength{\rightskip}{0pt plus 5cm}int mm\_\-context\_\-deletepart (MM\_\-CTX $\ast$ {\em ctx}, int {\em which}, int {\em freemem})}\label{group__context_g53d20c33a401539ef1ffa45f3dddb983} - - -Deletes a MIME part object from a Mini\-MIME context - -\begin{Desc} -\item[Parameters:] -\begin{description} -\item[{\em ctx}]A valid Mini\-MIME context object \item[{\em which}]The number of the MIME part object to delete \item[{\em freemem}]Whether to free the memory associated with the MIME part object \end{description} -\end{Desc} -\begin{Desc} -\item[Returns:]0 on success or -1 on failure. Sets mm\_\-errno on failure.\end{Desc} -This function deletes a MIME part from a given context. The MIME part to delete is specified as numerical index by the parameter ``which''. If the parameter ``freemem'' is set to anything greater than 0, the memory that is associated will be free'd by using \doxyref{mm\_\-mimepart\_\-free()}{p.}{group__mimepart_gbf47790a0bb96b22bc5e236bc40cb32e}, otherwise the memory is left untouched (if you still have a pointer to the MIME part around). \index{context@{context}!mm_context_flatten@{mm\_\-context\_\-flatten}} -\index{mm_context_flatten@{mm\_\-context\_\-flatten}!context@{context}} -\subsubsection{\setlength{\rightskip}{0pt plus 5cm}int mm\_\-context\_\-flatten (MM\_\-CTX $\ast$ {\em ctx}, char $\ast$$\ast$ {\em flat}, size\_\-t $\ast$ {\em length}, int {\em flags})}\label{group__context_g5288136ab923605f6508c09359ae5772} - - -Creates an ASCII message of the specified context - -\begin{Desc} -\item[Parameters:] -\begin{description} -\item[{\em ctx}]A valid Mini\-MIME context object \item[{\em flat}]Where to store the message \item[{\em flags}]Flags that affect the flattening process\end{description} -\end{Desc} -This function ``flattens'' a Mini\-MIME context, that is, it creates an ASCII represantation of the message the context contains. The flags can be a bitwise combination of the following constants: - -\begin{itemize} -\item MM\_\-FLATTEN\_\-OPAQUE : use opaque MIME parts when flattening\item MM\_\-FLATTEN\_\-SKIPENVELOPE : do not flatten the envelope part\end{itemize} - - -Great care is taken to not produce invalid MIME output. \index{context@{context}!mm_context_free@{mm\_\-context\_\-free}} -\index{mm_context_free@{mm\_\-context\_\-free}!context@{context}} -\subsubsection{\setlength{\rightskip}{0pt plus 5cm}void mm\_\-context\_\-free (MM\_\-CTX $\ast$ {\em ctx})}\label{group__context_g76392d5269e9ef340c2f5f8336f7193b} - - -Releases a Mini\-MIME context object - -\begin{Desc} -\item[Parameters:] -\begin{description} -\item[{\em ctx}]A valid Mini\-MIME context \end{description} -\end{Desc} -\begin{Desc} -\item[See also:]\doxyref{mm\_\-context\_\-new}{p.}{group__context_g919fd41f85534d9c87c256857faa2610}\end{Desc} -This function releases all memory associated with Mini\-MIME context object that was created using \doxyref{mm\_\-context\_\-new()}{p.}{group__context_g919fd41f85534d9c87c256857faa2610}. It will also release all memory used for the MIME parts attached, and their specific properties (such as Content-Type information, headers, and the body data). \index{context@{context}!mm_context_generateboundary@{mm\_\-context\_\-generateboundary}} -\index{mm_context_generateboundary@{mm\_\-context\_\-generateboundary}!context@{context}} -\subsubsection{\setlength{\rightskip}{0pt plus 5cm}int mm\_\-context\_\-generateboundary (MM\_\-CTX $\ast$ {\em ctx})}\label{group__context_g9710e485f51167099d90f0d659979068} - - -Generates a generic boundary string for a given context - -\begin{Desc} -\item[Parameters:] -\begin{description} -\item[{\em ctx}]A valid Mini\-MIME context \end{description} -\end{Desc} -\begin{Desc} -\item[Returns:]0 on success or -1 on failure\end{Desc} -This function generates a default boundary string for the given context. If there is already a boundary for the context, the memory will be free()'d. \index{context@{context}!mm_context_getpart@{mm\_\-context\_\-getpart}} -\index{mm_context_getpart@{mm\_\-context\_\-getpart}!context@{context}} -\subsubsection{\setlength{\rightskip}{0pt plus 5cm}struct mm\_\-mimepart$\ast$ mm\_\-context\_\-getpart (MM\_\-CTX $\ast$ {\em ctx}, int {\em which})}\label{group__context_g57fea229675f3e56a77eb40bb8193ee3} - - -Gets a specified MIME part object from a Mime\-MIME context - -\begin{Desc} -\item[Parameters:] -\begin{description} -\item[{\em ctx}]The Mini\-MIME context \item[{\em which}]The number of the MIME part object to retrieve \end{description} -\end{Desc} -\begin{Desc} -\item[Returns:]The requested MIME part object on success or a NULL pointer if there is no such part. \end{Desc} -\index{context@{context}!mm_context_haswarnings@{mm\_\-context\_\-haswarnings}} -\index{mm_context_haswarnings@{mm\_\-context\_\-haswarnings}!context@{context}} -\subsubsection{\setlength{\rightskip}{0pt plus 5cm}int mm\_\-context\_\-haswarnings (MM\_\-CTX $\ast$ {\em ctx})}\label{group__context_g8733dee7d83d3205349a7ee4ee5b2750} - - -Checks whether there are any warnings associated with a given context - -\begin{Desc} -\item[Parameters:] -\begin{description} -\item[{\em ctx}]A valid Mini\-MIME context \end{description} -\end{Desc} -\begin{Desc} -\item[Returns:]1 if there are warnings associated with the context, otherwise 0 \end{Desc} -\index{context@{context}!mm_context_iscomposite@{mm\_\-context\_\-iscomposite}} -\index{mm_context_iscomposite@{mm\_\-context\_\-iscomposite}!context@{context}} -\subsubsection{\setlength{\rightskip}{0pt plus 5cm}int mm\_\-context\_\-iscomposite (MM\_\-CTX $\ast$ {\em ctx})}\label{group__context_g1e73cadba4acd3ef9dd148dd0c2c3e70} - - -Checks whether a given context represents a composite (multipart) message - -\begin{Desc} -\item[Parameters:] -\begin{description} -\item[{\em ctx}]A valid Mini\-MIME context object \end{description} -\end{Desc} -\begin{Desc} -\item[Returns:]1 if the context is a composite message or 0 if it's flat \end{Desc} -\index{context@{context}!mm_context_new@{mm\_\-context\_\-new}} -\index{mm_context_new@{mm\_\-context\_\-new}!context@{context}} -\subsubsection{\setlength{\rightskip}{0pt plus 5cm}MM\_\-CTX$\ast$ mm\_\-context\_\-new (void)}\label{group__context_g919fd41f85534d9c87c256857faa2610} - - -Creates a new Mini\-MIME context object. - -\begin{Desc} -\item[Returns:]a new Mini\-MIME context object \end{Desc} -\begin{Desc} -\item[See also:]\doxyref{mm\_\-context\_\-free}{p.}{group__context_g76392d5269e9ef340c2f5f8336f7193b}\end{Desc} -This function creates a new Mini\-MIME context, which will hold a message. The memory needed is allocated dynamically and should later be free'd using \doxyref{mm\_\-context\_\-free()}{p.}{group__context_g76392d5269e9ef340c2f5f8336f7193b}. - -Before a context can be created, the Mini\-MIME library needs to be initialized properly using mm\_\-library\_\-init(). \index{context@{context}!mm_context_setpreamble@{mm\_\-context\_\-setpreamble}} -\index{mm_context_setpreamble@{mm\_\-context\_\-setpreamble}!context@{context}} -\subsubsection{\setlength{\rightskip}{0pt plus 5cm}int mm\_\-context\_\-setpreamble (MM\_\-CTX $\ast$ {\em ctx}, char $\ast$ {\em preamble})}\label{group__context_gc0e7cc297516618d4773830a1988fc8d} - - -Sets a preamble for the given Mini\-MIME context - -\begin{Desc} -\item[Parameters:] -\begin{description} -\item[{\em ctx}]A valid Mini\-MIME context \item[{\em preamble}]The preamble to set \end{description} -\end{Desc} -\begin{Desc} -\item[Returns:]0 on success or -1 on failure\end{Desc} -This function sets the MIME preamble (the text between the end of envelope headers and the beginning of the first MIME part) for a given context object. If preamble is a NULL-pointer then the preamble will be deleted, and the currently associated memory will be free automagically. \ No newline at end of file diff --git a/main/minimime/mm-docs/latex/group__envelope.tex b/main/minimime/mm-docs/latex/group__envelope.tex deleted file mode 100644 index 613c879487..0000000000 --- a/main/minimime/mm-docs/latex/group__envelope.tex +++ /dev/null @@ -1,65 +0,0 @@ -\section{Accessing and manipulating a message's envelope} -\label{group__envelope}\index{Accessing and manipulating a message's envelope@{Accessing and manipulating a message's envelope}} -\subsection*{Accessing and manipulating a message's envelope} -\begin{CompactItemize} -\item -int {\bf mm\_\-envelope\_\-getheaders} (MM\_\-CTX $\ast$ctx, char $\ast$$\ast$result, size\_\-t $\ast$length) -\item -int {\bf mm\_\-envelope\_\-setheader} (MM\_\-CTX $\ast$ctx, const char $\ast$name, const char $\ast$fmt,...) -\item -int {\bf mm\_\-envelope\_\-getrecipients} (MM\_\-CTX $\ast$ctx, char $\ast$$\ast$result, size\_\-t $\ast$length) -\end{CompactItemize} - - -\subsection{Function Documentation} -\index{envelope@{envelope}!mm_envelope_getheaders@{mm\_\-envelope\_\-getheaders}} -\index{mm_envelope_getheaders@{mm\_\-envelope\_\-getheaders}!envelope@{envelope}} -\subsubsection{\setlength{\rightskip}{0pt plus 5cm}int mm\_\-envelope\_\-getheaders (MM\_\-CTX $\ast$ {\em ctx}, char $\ast$$\ast$ {\em result}, size\_\-t $\ast$ {\em length})}\label{group__envelope_g38f1164142cedfc3253b068a81f85563} - - -Gets an ASCII representation of all envelope headers - -\begin{Desc} -\item[Parameters:] -\begin{description} -\item[{\em ctx}]A valid Mini\-MIME context \item[{\em result}]Where to store the resulting ASCII headers \item[{\em length}]Where to store the length of the result \end{description} -\end{Desc} -\begin{Desc} -\item[Returns:]0 on success or -1 on failure. \end{Desc} -\begin{Desc} -\item[Note:]Sets mm\_\-errno on failure\end{Desc} -This is mainly a convinience function. It constructs an ASCII representation from all of the message's envelope headers and stores the result in headers. Memory is allocated dynamically, and the total length of the result is stored in length. This function takes care that the output is MIME conform, and folds long lines according to the MIME standard at position 78 of the string. It also nicely formats all MIME related header fields, such as the Content-Type header. - -Since the memory needed to store the result is allocated dynamically, one should take care of freeing it again when it's not needed anymore. If an error occurs, $\ast$result will be set to NULL, $\ast$length will be set to zero and mm\_\-errno will be set to a reasonable value. \index{envelope@{envelope}!mm_envelope_getrecipients@{mm\_\-envelope\_\-getrecipients}} -\index{mm_envelope_getrecipients@{mm\_\-envelope\_\-getrecipients}!envelope@{envelope}} -\subsubsection{\setlength{\rightskip}{0pt plus 5cm}int mm\_\-envelope\_\-getrecipients (MM\_\-CTX $\ast$ {\em ctx}, char $\ast$$\ast$ {\em result}, size\_\-t $\ast$ {\em length})}\label{group__envelope_ge63da17c56867ca2406a4eaf73230baf} - - -Gets the list of recipients for a MIME message - -\begin{Desc} -\item[Parameters:] -\begin{description} -\item[{\em ctx}]A valid Mini\-MIME context \item[{\em result}]Where to store the result \item[{\em length}]Where to store the length of the result \end{description} -\end{Desc} -\begin{Desc} -\item[Returns:]0 on success or -1 on error \end{Desc} -\begin{Desc} -\item[Note:]Sets mm\_\-errno on error\end{Desc} -This functions gets the list of recipients for a given MIME message. It does so by concatenating the \char`\"{}From\char`\"{} and \char`\"{}Cc\char`\"{} header fields, and storing the results in recipients. The memory needed to store the result is allocated dynamically, and the total length of the result is stored in length. - -One should take care to free() the result once it's not needed anymore. \index{envelope@{envelope}!mm_envelope_setheader@{mm\_\-envelope\_\-setheader}} -\index{mm_envelope_setheader@{mm\_\-envelope\_\-setheader}!envelope@{envelope}} -\subsubsection{\setlength{\rightskip}{0pt plus 5cm}int mm\_\-envelope\_\-setheader (MM\_\-CTX $\ast$ {\em ctx}, const char $\ast$ {\em name}, const char $\ast$ {\em fmt}, {\em ...})}\label{group__envelope_gb2c43c1645e42ae0860c902ce1dda788} - - -Sets a header field in the envelope - -\begin{Desc} -\item[Parameters:] -\begin{description} -\item[{\em ctx}]A valid Mini\-MIME context \item[{\em name}]The name of the header field to set \item[{\em fmt}]A format string specifying the value of the header field \end{description} -\end{Desc} -\begin{Desc} -\item[Returns:]0 on success or -1 on failure\end{Desc} -This function generates a new MIME header and attaches it to the first MIME part (the envelope) found in the given context. If no part is attached already, the function will return an error. The function will store a copy of ``name'' as the header's name field, and dynamically allocate the memory needed to build the format string. \ No newline at end of file diff --git a/main/minimime/mm-docs/latex/group__error.tex b/main/minimime/mm-docs/latex/group__error.tex deleted file mode 100644 index c9c49034e4..0000000000 --- a/main/minimime/mm-docs/latex/group__error.tex +++ /dev/null @@ -1,43 +0,0 @@ -\section{Mini\-MIME error functions} -\label{group__error}\index{MiniMIME error functions@{MiniMIME error functions}} -\subsection*{Functions} -\begin{CompactItemize} -\item -void {\bf mm\_\-error\_\-init} (void) -\item -void {\bf mm\_\-error\_\-setmsg} (const char $\ast$fmt,...) -\item -char $\ast$ {\bf mm\_\-error\_\-string} (void) -\end{CompactItemize} - - -\subsection{Function Documentation} -\index{error@{error}!mm_error_init@{mm\_\-error\_\-init}} -\index{mm_error_init@{mm\_\-error\_\-init}!error@{error}} -\subsubsection{\setlength{\rightskip}{0pt plus 5cm}void mm\_\-error\_\-init (void)}\label{group__error_g69de7c9bee1d535593a55807590de543} - - -Initializes the global error object - -This function initializes the global error object mm\_\-error. This must be done when the library is initialized, and is automatically called from mm\_\-init\_\-library(). \index{error@{error}!mm_error_setmsg@{mm\_\-error\_\-setmsg}} -\index{mm_error_setmsg@{mm\_\-error\_\-setmsg}!error@{error}} -\subsubsection{\setlength{\rightskip}{0pt plus 5cm}void mm\_\-error\_\-setmsg (const char $\ast$ {\em fmt}, {\em ...})}\label{group__error_g92006c97728639d8f32f5bc4c6e2a47f} - - -Sets a descriptive error message - -\begin{Desc} -\item[Parameters:] -\begin{description} -\item[{\em fmt}]The error message as format string\end{description} -\end{Desc} -This function is called from the various Mini\-MIME modules in case an error occured. Should never be called by the user. \index{error@{error}!mm_error_string@{mm\_\-error\_\-string}} -\index{mm_error_string@{mm\_\-error\_\-string}!error@{error}} -\subsubsection{\setlength{\rightskip}{0pt plus 5cm}char$\ast$ mm\_\-error\_\-string (void)}\label{group__error_g8654857a3ac349b87d798902912371a3} - - -Retrieves the current error message - -\begin{Desc} -\item[Returns:]The currently set error message\end{Desc} -This function can be used to retrieve a descriptive error message for the current error, much like strerror() function of libc. When this function is called without an error being set, it returns the string \char`\"{}No error\char`\"{}. The string returned does not need to be freed, since it is not dynamically allocated by the library. \ No newline at end of file diff --git a/main/minimime/mm-docs/latex/group__mimepart.tex b/main/minimime/mm-docs/latex/group__mimepart.tex deleted file mode 100644 index e9f9742d96..0000000000 --- a/main/minimime/mm-docs/latex/group__mimepart.tex +++ /dev/null @@ -1,333 +0,0 @@ -\section{Accessing and manipulating MIME parts} -\label{group__mimepart}\index{Accessing and manipulating MIME parts@{Accessing and manipulating MIME parts}} -\subsection*{Creating and destroying MIME parts} -\begin{CompactItemize} -\item -mm\_\-mimepart $\ast$ {\bf mm\_\-mimepart\_\-new} (void) -\item -mm\_\-mimepart $\ast$ {\bf mm\_\-mimepart\_\-fromfile} (const char $\ast$filename) -\item -void {\bf mm\_\-mimepart\_\-free} (struct mm\_\-mimepart $\ast$part) -\end{CompactItemize} -\subsection*{Accessing the MIME part's mail header} -\begin{CompactItemize} -\item -int {\bf mm\_\-mimepart\_\-attachheader} (struct mm\_\-mimepart $\ast$part, struct mm\_\-mimeheader $\ast$header) -\item -int {\bf mm\_\-mimepart\_\-countheaders} (struct mm\_\-mimepart $\ast$part) -\item -int {\bf mm\_\-mimepart\_\-countheaderbyname} (struct mm\_\-mimepart $\ast$part, const char $\ast$name) -\item -mm\_\-mimeheader $\ast$ {\bf mm\_\-mimepart\_\-getheaderbyname} (struct mm\_\-mimepart $\ast$part, const char $\ast$name, int idx) -\item -const char $\ast$ {\bf mm\_\-mimepart\_\-getheadervalue} (struct mm\_\-mimepart $\ast$part, const char $\ast$name, int idx) -\item -int {\bf mm\_\-mimepart\_\-headers\_\-start} (struct mm\_\-mimepart $\ast$part, struct mm\_\-mimeheader $\ast$$\ast$id) -\item -mm\_\-mimeheader $\ast$ {\bf mm\_\-mimepart\_\-headers\_\-next} (struct mm\_\-mimepart $\ast$part, struct mm\_\-mimeheader $\ast$$\ast$id) -\end{CompactItemize} -\subsection*{Accessing and manipulating the MIME part's body} -\begin{CompactItemize} -\item -char $\ast$ {\bf mm\_\-mimepart\_\-getbody} (struct mm\_\-mimepart $\ast$part, int opaque) -\item -void {\bf mm\_\-mimepart\_\-setbody} (struct mm\_\-mimepart $\ast$part, const char $\ast$data, int opaque) -\item -size\_\-t {\bf mm\_\-mimepart\_\-getlength} (struct mm\_\-mimepart $\ast$part) -\item -char $\ast$ {\bf mm\_\-mimepart\_\-decode} (struct mm\_\-mimepart $\ast$part) -\item -int {\bf mm\_\-mimepart\_\-flatten} (struct mm\_\-mimepart $\ast$part, char $\ast$$\ast$result, size\_\-t $\ast$length, int opaque) -\item -int {\bf mm\_\-mimepart\_\-setdefaultcontenttype} (struct mm\_\-mimepart $\ast$part, int composite) -\end{CompactItemize} -\subsection*{Accessing the MIME part's Content-Type information} -\begin{CompactItemize} -\item -void {\bf mm\_\-mimepart\_\-attachcontenttype} (struct mm\_\-mimepart $\ast$part, struct mm\_\-content $\ast$ct) -\item -mm\_\-content $\ast$ {\bf mm\_\-mimepart\_\-gettype} (struct mm\_\-mimepart $\ast$part) -\end{CompactItemize} - - -\subsection{Detailed Description} -MIME parts, also called entities, represent the structure of a MIME message. ``Normal'' internet messages have only a single part, and are called ``flat'' messages. Multipart messages have more then one part, and each MIME part can have it's own subset of headers. - -Provided here are functions to easily access all informations from a MIME part, including their specific headers and bodies. - -\subsection{Function Documentation} -\index{mimepart@{mimepart}!mm_mimepart_attachcontenttype@{mm\_\-mimepart\_\-attachcontenttype}} -\index{mm_mimepart_attachcontenttype@{mm\_\-mimepart\_\-attachcontenttype}!mimepart@{mimepart}} -\subsubsection{\setlength{\rightskip}{0pt plus 5cm}void mm\_\-mimepart\_\-attachcontenttype (struct mm\_\-mimepart $\ast$ {\em part}, struct mm\_\-content $\ast$ {\em ct})}\label{group__mimepart_g01822bc93b4741af75b5379384354e37} - - -Attaches a context type object to a MIME part - -\begin{Desc} -\item[Parameters:] -\begin{description} -\item[{\em part}]A valid MIME part object \item[{\em ct}]The content type object to attach \end{description} -\end{Desc} -\begin{Desc} -\item[Returns:]Nothing\end{Desc} -This function attaches a Content-Type object to a MIME part. It does not care whether the Content-Type suites the actual content in the MIME part, so the programmer should take care of that. \index{mimepart@{mimepart}!mm_mimepart_attachheader@{mm\_\-mimepart\_\-attachheader}} -\index{mm_mimepart_attachheader@{mm\_\-mimepart\_\-attachheader}!mimepart@{mimepart}} -\subsubsection{\setlength{\rightskip}{0pt plus 5cm}int mm\_\-mimepart\_\-attachheader (struct mm\_\-mimepart $\ast$ {\em part}, struct mm\_\-mimeheader $\ast$ {\em header})}\label{group__mimepart_g46a674ff6b9873c0c45fa4eb5d94fd62} - - -Attaches a mm\_\-mimeheader object to a MIME part - -\begin{Desc} -\item[Parameters:] -\begin{description} -\item[{\em part}]A valid MIME part object \item[{\em header}]A valid MIME header object \end{description} -\end{Desc} -\begin{Desc} -\item[Returns:]0 if successfull or -1 if the header could not be attached \end{Desc} -\index{mimepart@{mimepart}!mm_mimepart_countheaderbyname@{mm\_\-mimepart\_\-countheaderbyname}} -\index{mm_mimepart_countheaderbyname@{mm\_\-mimepart\_\-countheaderbyname}!mimepart@{mimepart}} -\subsubsection{\setlength{\rightskip}{0pt plus 5cm}int mm\_\-mimepart\_\-countheaderbyname (struct mm\_\-mimepart $\ast$ {\em part}, const char $\ast$ {\em name})}\label{group__mimepart_gf89da502ac54306994bdb452448a8026} - - -Retrieves the number of MIME headers with a given name in a MIME part - -\begin{Desc} -\item[Parameters:] -\begin{description} -\item[{\em part}]A valid MIME part object \item[{\em name}]The name of the MIME header which to count for \end{description} -\end{Desc} -\begin{Desc} -\item[Returns:]The number of MIME headers within the MIME part \end{Desc} -\index{mimepart@{mimepart}!mm_mimepart_countheaders@{mm\_\-mimepart\_\-countheaders}} -\index{mm_mimepart_countheaders@{mm\_\-mimepart\_\-countheaders}!mimepart@{mimepart}} -\subsubsection{\setlength{\rightskip}{0pt plus 5cm}int mm\_\-mimepart\_\-countheaders (struct mm\_\-mimepart $\ast$ {\em part})}\label{group__mimepart_g44c78abfb0535312bcb427a2cd220026} - - -Retrieves the number of MIME headers available in a MIME part - -\begin{Desc} -\item[Parameters:] -\begin{description} -\item[{\em part}]A valid MIME part object \end{description} -\end{Desc} -\begin{Desc} -\item[Returns:]The number of MIME headers within the MIME part \end{Desc} -\index{mimepart@{mimepart}!mm_mimepart_decode@{mm\_\-mimepart\_\-decode}} -\index{mm_mimepart_decode@{mm\_\-mimepart\_\-decode}!mimepart@{mimepart}} -\subsubsection{\setlength{\rightskip}{0pt plus 5cm}char$\ast$ mm\_\-mimepart\_\-decode (struct mm\_\-mimepart $\ast$ {\em part})}\label{group__mimepart_g4551bf4460e5d165bbcd9f32d4f625de} - - -Decodes a MIME part according to it's encoding using Mini\-MIME codecs - -\begin{Desc} -\item[Parameters:] -\begin{description} -\item[{\em A}]valid MIME part object \end{description} -\end{Desc} -\begin{Desc} -\item[Returns:]0 if the MIME part could be successfully decoded or -1 if not \end{Desc} -\begin{Desc} -\item[Note:]Sets mm\_\-errno on error\end{Desc} -This function decodes the body of a MIME part with a registered decoder according to it's Content-Transfer-Encoding header field. \index{mimepart@{mimepart}!mm_mimepart_flatten@{mm\_\-mimepart\_\-flatten}} -\index{mm_mimepart_flatten@{mm\_\-mimepart\_\-flatten}!mimepart@{mimepart}} -\subsubsection{\setlength{\rightskip}{0pt plus 5cm}int mm\_\-mimepart\_\-flatten (struct mm\_\-mimepart $\ast$ {\em part}, char $\ast$$\ast$ {\em result}, size\_\-t $\ast$ {\em length}, int {\em opaque})}\label{group__mimepart_gf19d3ace5ae174b3eaa35f9ddbe6e216} - - -Creates an ASCII representation of the given MIME part - -\begin{Desc} -\item[Parameters:] -\begin{description} -\item[{\em part}]A valid MIME part object \item[{\em result}]Where to store the result \item[{\em length}]Where to store the length of the result \item[{\em opaque}]Whether to use the opaque MIME part 0 on success or -1 on error. \end{description} -\end{Desc} -\begin{Desc} -\item[See also:]\doxyref{mm\_\-context\_\-flatten}{p.}{group__context_g5288136ab923605f6508c09359ae5772}\end{Desc} -This function creates an ASCII representation of a given MIME part. It will dynamically allocate the memory needed and stores the result in the memory region pointed to by result. The length of the result will be stored in length. If opaque is set to 1, mm\_\-mimepart\_\-flatten will store an opaque version of the MIME part in result, which means no headers will be created or sanitized. This is particulary useful if the part is digitally signed by e.g. PGP, and the signature spans the header fields of the part in question. \index{mimepart@{mimepart}!mm_mimepart_free@{mm\_\-mimepart\_\-free}} -\index{mm_mimepart_free@{mm\_\-mimepart\_\-free}!mimepart@{mimepart}} -\subsubsection{\setlength{\rightskip}{0pt plus 5cm}void mm\_\-mimepart\_\-free (struct mm\_\-mimepart $\ast$ {\em part})}\label{group__mimepart_gbf47790a0bb96b22bc5e236bc40cb32e} - - -Frees all memory allocated by a mm\_\-mimepart object. - -\begin{Desc} -\item[Parameters:] -\begin{description} -\item[{\em part}]A pointer to an allocated mm\_\-mimepart object \end{description} -\end{Desc} -\begin{Desc} -\item[See also:]\doxyref{mm\_\-mimepart\_\-new}{p.}{group__mimepart_g417e5dd361e30cddb91e1d9a5e30b223} \end{Desc} -\index{mimepart@{mimepart}!mm_mimepart_fromfile@{mm\_\-mimepart\_\-fromfile}} -\index{mm_mimepart_fromfile@{mm\_\-mimepart\_\-fromfile}!mimepart@{mimepart}} -\subsubsection{\setlength{\rightskip}{0pt plus 5cm}struct mm\_\-mimepart$\ast$ mm\_\-mimepart\_\-fromfile (const char $\ast$ {\em filename})}\label{group__mimepart_ged8112012a337371ae8093adb1ab6d27} - - -Creates a MIME part from a file - -\begin{Desc} -\item[Parameters:] -\begin{description} -\item[{\em filename}]The name of the file to create the MIME part from \end{description} -\end{Desc} -\begin{Desc} -\item[Returns:]A pointer to a new MIME part object\end{Desc} -This function creates a new MIME part object from a file. The object should be freed using \doxyref{mm\_\-mimepart\_\-free()}{p.}{group__mimepart_gbf47790a0bb96b22bc5e236bc40cb32e} later on. This function does NOT set the Content-Type and neither does any encoding work. \index{mimepart@{mimepart}!mm_mimepart_getbody@{mm\_\-mimepart\_\-getbody}} -\index{mm_mimepart_getbody@{mm\_\-mimepart\_\-getbody}!mimepart@{mimepart}} -\subsubsection{\setlength{\rightskip}{0pt plus 5cm}char$\ast$ mm\_\-mimepart\_\-getbody (struct mm\_\-mimepart $\ast$ {\em part}, int {\em opaque})}\label{group__mimepart_g52dc9f27a2801e4f6abb1effd2ed838d} - - -Gets the pointer to the MIME part's body data - -\begin{Desc} -\item[Parameters:] -\begin{description} -\item[{\em part}]A valid MIME part object \item[{\em opaque}]Whether to get the opaque part or not \end{description} -\end{Desc} -\begin{Desc} -\item[Returns:]A pointer to the MIME part's body \end{Desc} -\begin{Desc} -\item[See also:]\doxyref{mm\_\-mimepart\_\-setbody}{p.}{group__mimepart_gd1def098c00edc546b03e98e9ff8b27a} \end{Desc} -\index{mimepart@{mimepart}!mm_mimepart_getheaderbyname@{mm\_\-mimepart\_\-getheaderbyname}} -\index{mm_mimepart_getheaderbyname@{mm\_\-mimepart\_\-getheaderbyname}!mimepart@{mimepart}} -\subsubsection{\setlength{\rightskip}{0pt plus 5cm}struct mm\_\-mimeheader$\ast$ mm\_\-mimepart\_\-getheaderbyname (struct mm\_\-mimepart $\ast$ {\em part}, const char $\ast$ {\em name}, int {\em idx})}\label{group__mimepart_ga3ca298eaa82f4ef3ea731511ac84e53} - - -Get a MIME header object from a MIME part - -\begin{Desc} -\item[Parameters:] -\begin{description} -\item[{\em part}]A valid MIME part object \item[{\em name}]The name of the MIME header which to retrieve \item[{\em idx}]Which header field to get (in case of multiple headers of the same name). \end{description} -\end{Desc} -\begin{Desc} -\item[Returns:]A pointer to the requested MIME header on success, or NULL if there either isn't a header with the requested name or idx is out of range. \end{Desc} -\index{mimepart@{mimepart}!mm_mimepart_getheadervalue@{mm\_\-mimepart\_\-getheadervalue}} -\index{mm_mimepart_getheadervalue@{mm\_\-mimepart\_\-getheadervalue}!mimepart@{mimepart}} -\subsubsection{\setlength{\rightskip}{0pt plus 5cm}const char$\ast$ mm\_\-mimepart\_\-getheadervalue (struct mm\_\-mimepart $\ast$ {\em part}, const char $\ast$ {\em name}, int {\em idx})}\label{group__mimepart_g779f11f7a6a54f83763b5ef6ff87e48f} - - -Gets the value of a MIME header object - -\begin{Desc} -\item[Parameters:] -\begin{description} -\item[{\em part}]A valid MIME part object \item[{\em name}]The name of the header field to get the value from \item[{\em idx}]The index of the header field to get, in case there are multiple headers with the same name. \end{description} -\end{Desc} -\begin{Desc} -\item[Returns:]A pointer to the requested value on success, or NULL if there either isn't a header with the requested name or idx is out of range. \end{Desc} -\index{mimepart@{mimepart}!mm_mimepart_getlength@{mm\_\-mimepart\_\-getlength}} -\index{mm_mimepart_getlength@{mm\_\-mimepart\_\-getlength}!mimepart@{mimepart}} -\subsubsection{\setlength{\rightskip}{0pt plus 5cm}size\_\-t mm\_\-mimepart\_\-getlength (struct mm\_\-mimepart $\ast$ {\em part})}\label{group__mimepart_gf8ccae1737dc4b9b91958fe448da677f} - - -Gets the length of a given MIME part object - -\begin{Desc} -\item[Parameters:] -\begin{description} -\item[{\em part}]A valid MIME part object \end{description} -\end{Desc} -\begin{Desc} -\item[Returns:]The size of the part's body in byte.\end{Desc} -This function returns the total length of the given MIME part's body. The length does not include the headers of the MIME parts. If the function returns 0, no body part is set currently. \index{mimepart@{mimepart}!mm_mimepart_gettype@{mm\_\-mimepart\_\-gettype}} -\index{mm_mimepart_gettype@{mm\_\-mimepart\_\-gettype}!mimepart@{mimepart}} -\subsubsection{\setlength{\rightskip}{0pt plus 5cm}struct mm\_\-content$\ast$ mm\_\-mimepart\_\-gettype (struct mm\_\-mimepart $\ast$ {\em part})}\label{group__mimepart_g210e2ceee56f8349f6778006da87d080} - - -Gets the Content-Type of a given MIME part object - -\begin{Desc} -\item[Parameters:] -\begin{description} -\item[{\em part}]A valid MIME part object \end{description} -\end{Desc} -\begin{Desc} -\item[Returns:]The Content-Type object of the specified MIME part\end{Desc} -This function returns a pointer to the Content-Type object of the given MIME part. This pointer might be set to NULL, indicating that there is no Content-Type object for the given MIME part currently. \index{mimepart@{mimepart}!mm_mimepart_headers_next@{mm\_\-mimepart\_\-headers\_\-next}} -\index{mm_mimepart_headers_next@{mm\_\-mimepart\_\-headers\_\-next}!mimepart@{mimepart}} -\subsubsection{\setlength{\rightskip}{0pt plus 5cm}struct mm\_\-mimeheader$\ast$ mm\_\-mimepart\_\-headers\_\-next (struct mm\_\-mimepart $\ast$ {\em part}, struct mm\_\-mimeheader $\ast$$\ast$ {\em id})}\label{group__mimepart_g8e9064736efdeebf4b257cc45f8a6adf} - - -Returns the next MIME header of a given MIME part object - -\begin{Desc} -\item[Parameters:] -\begin{description} -\item[{\em part}]A valid MIME part object \item[{\em id}]A previously initialized MIME header object \end{description} -\end{Desc} -\begin{Desc} -\item[Returns:]A pointer to the MIME header object or NULL if end of headers was reached. \end{Desc} -\begin{Desc} -\item[See also:]\doxyref{mm\_\-mimepart\_\-headers\_\-start}{p.}{group__mimepart_g4440bdcfddf88eb642b6a834a0557176} \end{Desc} -\index{mimepart@{mimepart}!mm_mimepart_headers_start@{mm\_\-mimepart\_\-headers\_\-start}} -\index{mm_mimepart_headers_start@{mm\_\-mimepart\_\-headers\_\-start}!mimepart@{mimepart}} -\subsubsection{\setlength{\rightskip}{0pt plus 5cm}int mm\_\-mimepart\_\-headers\_\-start (struct mm\_\-mimepart $\ast$ {\em part}, struct mm\_\-mimeheader $\ast$$\ast$ {\em id})}\label{group__mimepart_g4440bdcfddf88eb642b6a834a0557176} - - -Initializes a header loop for a given MIME part - -\begin{Desc} -\item[Parameters:] -\begin{description} -\item[{\em part}]A valid MIME part object \item[{\em id}]The address of a MIME header object (to allow reentrance) \end{description} -\end{Desc} -\begin{Desc} -\item[Returns:]0 on success or -1 on failure \end{Desc} -\begin{Desc} -\item[See also:]\doxyref{mm\_\-mimepart\_\-headers\_\-next}{p.}{group__mimepart_g8e9064736efdeebf4b257cc45f8a6adf}\end{Desc} -Looping through headers can be done in the following way: - - - -\begin{Code}\begin{verbatim} struct mm_mimeheader *header, *lheader; - - mm_mimepart_headers_start(part, &lheader); - - while ((header = mm_mimepart_headers_next(part, &lheader)) != NULL) { - printf("%s: %s\n", header->name, header->value); - } -\end{verbatim}\end{Code} - - - -For convienience, the macro mm\_\-mimepart\_\-headers\_\-foreach() can be used to loop through headers in a one-shot manner. \index{mimepart@{mimepart}!mm_mimepart_new@{mm\_\-mimepart\_\-new}} -\index{mm_mimepart_new@{mm\_\-mimepart\_\-new}!mimepart@{mimepart}} -\subsubsection{\setlength{\rightskip}{0pt plus 5cm}struct mm\_\-mimepart$\ast$ mm\_\-mimepart\_\-new (void)}\label{group__mimepart_g417e5dd361e30cddb91e1d9a5e30b223} - - -Allocates memory for a new mm\_\-mimepart structure and initializes it. - -\begin{Desc} -\item[Returns:]A pointer to a struct of type mm\_\-mimeheader or NULL on failure \end{Desc} -\begin{Desc} -\item[See also:]\doxyref{mm\_\-mimepart\_\-free}{p.}{group__mimepart_gbf47790a0bb96b22bc5e236bc40cb32e} \end{Desc} -\begin{Desc} -\item[Note:]The memory must be freed by using \doxyref{mm\_\-mimepart\_\-free()}{p.}{group__mimepart_gbf47790a0bb96b22bc5e236bc40cb32e} later on. \end{Desc} -\index{mimepart@{mimepart}!mm_mimepart_setbody@{mm\_\-mimepart\_\-setbody}} -\index{mm_mimepart_setbody@{mm\_\-mimepart\_\-setbody}!mimepart@{mimepart}} -\subsubsection{\setlength{\rightskip}{0pt plus 5cm}void mm\_\-mimepart\_\-setbody (struct mm\_\-mimepart $\ast$ {\em part}, const char $\ast$ {\em data}, int {\em opaque})}\label{group__mimepart_gd1def098c00edc546b03e98e9ff8b27a} - - -Sets the MIME part's body data - -\begin{Desc} -\item[Parameters:] -\begin{description} -\item[{\em part}]A valid MIME part object \item[{\em data}]A pointer to the data which to set \end{description} -\end{Desc} -\begin{Desc} -\item[See also:]\doxyref{mm\_\-mimepart\_\-getbody}{p.}{group__mimepart_g52dc9f27a2801e4f6abb1effd2ed838d}\end{Desc} -This functions sets the body data for a given MIME part. The string pointed to by data must be NUL-terminated. The data is copied into the MIME part's body, and thus, the memory pointed to by data can be freed after the operation. \index{mimepart@{mimepart}!mm_mimepart_setdefaultcontenttype@{mm\_\-mimepart\_\-setdefaultcontenttype}} -\index{mm_mimepart_setdefaultcontenttype@{mm\_\-mimepart\_\-setdefaultcontenttype}!mimepart@{mimepart}} -\subsubsection{\setlength{\rightskip}{0pt plus 5cm}int mm\_\-mimepart\_\-setdefaultcontenttype (struct mm\_\-mimepart $\ast$ {\em part}, int {\em composite})}\label{group__mimepart_g164bb39a266559574c252f11266809ff} - - -Sets the default Content-Type for a given MIME part - -\begin{Desc} -\item[Parameters:] -\begin{description} -\item[{\em part}]A valid MIME part object \item[{\em part}]Whether the Content-Type should be for composite or not \end{description} -\end{Desc} -\begin{Desc} -\item[Returns:]0 on success or -1 on failure\end{Desc} -This function sets a default Content-Type according to RFC 2045 with a value of \char`\"{}text/plain; charset=\char`\"{}us-ascii\char`\"{}\char`\"{}. This function should only be used if the MIME part in question does not have a valid Content-Type specification. \ No newline at end of file diff --git a/main/minimime/mm-docs/latex/group__mimeutil.tex b/main/minimime/mm-docs/latex/group__mimeutil.tex deleted file mode 100644 index 6de2599760..0000000000 --- a/main/minimime/mm-docs/latex/group__mimeutil.tex +++ /dev/null @@ -1,2 +0,0 @@ -\section{MIME related utility functions} -\label{group__mimeutil}\index{MIME related utility functions@{MIME related utility functions}} diff --git a/main/minimime/mm-docs/latex/group__param.tex b/main/minimime/mm-docs/latex/group__param.tex deleted file mode 100644 index 320dd398cb..0000000000 --- a/main/minimime/mm-docs/latex/group__param.tex +++ /dev/null @@ -1,127 +0,0 @@ -\section{Accessing and manipulating MIME parameters} -\label{group__param}\index{Accessing and manipulating MIME parameters@{Accessing and manipulating MIME parameters}} -\subsection*{Functions for manipulating MIME parameters} -MIME parameters are properties attached to certain MIME headers, such as Content-Type and Content-Disposition. MIME parameters have a textual representations as in {\em name=value\/}. They contain important information about the MIME structure of a message, such as the boundary string used, which charset was used to encode the message and so on. This module provides simple to use functions to query or set MIME parameters. - -Each MIME header may hold an arbitrary amount of such parameters, which are delimeted by each other with a semicolon. \begin{CompactItemize} -\item -mm\_\-param $\ast$ {\bf mm\_\-param\_\-new} (void) -\item -void {\bf mm\_\-param\_\-free} (struct mm\_\-param $\ast$param) -\item -mm\_\-param $\ast$ {\bf mm\_\-param\_\-generate} (const char $\ast$name, const char $\ast$value) -\item -char $\ast$ {\bf mm\_\-param\_\-setname} (struct mm\_\-param $\ast$param, const char $\ast$name, int copy) -\item -char $\ast$ {\bf mm\_\-param\_\-setvalue} (struct mm\_\-param $\ast$param, const char $\ast$value, int copy) -\item -const char $\ast$ {\bf mm\_\-param\_\-getname} (struct mm\_\-param $\ast$param) -\item -const char $\ast$ {\bf mm\_\-param\_\-getvalue} (struct mm\_\-param $\ast$param) -\end{CompactItemize} - - -\subsection{Function Documentation} -\index{param@{param}!mm_param_free@{mm\_\-param\_\-free}} -\index{mm_param_free@{mm\_\-param\_\-free}!param@{param}} -\subsubsection{\setlength{\rightskip}{0pt plus 5cm}void mm\_\-param\_\-free (struct mm\_\-param $\ast$ {\em param})}\label{group__param_g46339038e995799e6a3e37512f442fc9} - - -Releases all memory associated with a MIME parameter object. - -\begin{Desc} -\item[Parameters:] -\begin{description} -\item[{\em param}]A valid MIME parameter object to be freed \end{description} -\end{Desc} -\begin{Desc} -\item[Returns:]Nothing \end{Desc} -\begin{Desc} -\item[See also:]\doxyref{mm\_\-param\_\-new}{p.}{group__param_gd3ac756551bf5a29a07d5992bfdbde09} \end{Desc} -\index{param@{param}!mm_param_generate@{mm\_\-param\_\-generate}} -\index{mm_param_generate@{mm\_\-param\_\-generate}!param@{param}} -\subsubsection{\setlength{\rightskip}{0pt plus 5cm}struct mm\_\-param$\ast$ mm\_\-param\_\-generate (const char $\ast$ {\em name}, const char $\ast$ {\em value})}\label{group__param_gd3970def45b8bede334f4b89a41dec15} - - -Generates a new Content-Type parameter with the given name and value - -\begin{Desc} -\item[Parameters:] -\begin{description} -\item[{\em name}]The name of the MIME parameter \item[{\em value}]The value of the MIME parameter \end{description} -\end{Desc} -\begin{Desc} -\item[Returns:]A new MIME parameter object \end{Desc} -\begin{Desc} -\item[See also:]\doxyref{mm\_\-param\_\-free}{p.}{group__param_g46339038e995799e6a3e37512f442fc9} - -\doxyref{mm\_\-param\_\-new}{p.}{group__param_gd3ac756551bf5a29a07d5992bfdbde09}\end{Desc} -This function generates a new MIME parameter, with the name and value given as the arguments. The needed memory for the operation is allocated dynamically. It stores a copy of name and value in the actual object, so the memory holding the arguments can safely be freed after successfull return of this function. \index{param@{param}!mm_param_getname@{mm\_\-param\_\-getname}} -\index{mm_param_getname@{mm\_\-param\_\-getname}!param@{param}} -\subsubsection{\setlength{\rightskip}{0pt plus 5cm}const char$\ast$ mm\_\-param\_\-getname (struct mm\_\-param $\ast$ {\em param})}\label{group__param_g0e0ddccf47a2b1e0ad5bcc52c7b39753} - - -Gets the name of a MIME parameter object - -\begin{Desc} -\item[Parameters:] -\begin{description} -\item[{\em param}]A valid MIME parameter object \end{description} -\end{Desc} -\begin{Desc} -\item[Returns:]The name of the MIME parameter \end{Desc} -\index{param@{param}!mm_param_getvalue@{mm\_\-param\_\-getvalue}} -\index{mm_param_getvalue@{mm\_\-param\_\-getvalue}!param@{param}} -\subsubsection{\setlength{\rightskip}{0pt plus 5cm}const char$\ast$ mm\_\-param\_\-getvalue (struct mm\_\-param $\ast$ {\em param})}\label{group__param_g3c6f8cddd409de3000c31584e140561e} - - -Gets the value of a MIME parameter object - -\begin{Desc} -\item[Parameters:] -\begin{description} -\item[{\em param}]A valid MIME parameter object \end{description} -\end{Desc} -\begin{Desc} -\item[Returns:]The value of the MIME parameter \end{Desc} -\index{param@{param}!mm_param_new@{mm\_\-param\_\-new}} -\index{mm_param_new@{mm\_\-param\_\-new}!param@{param}} -\subsubsection{\setlength{\rightskip}{0pt plus 5cm}struct mm\_\-param$\ast$ mm\_\-param\_\-new (void)}\label{group__param_gd3ac756551bf5a29a07d5992bfdbde09} - - -Creates a new object to hold a MIME parameter. - -\begin{Desc} -\item[Returns:]An object representing a MIME parameter \end{Desc} -\begin{Desc} -\item[See also:]\doxyref{mm\_\-param\_\-free}{p.}{group__param_g46339038e995799e6a3e37512f442fc9} \end{Desc} -\begin{Desc} -\item[Note:]The allocated memory must later be freed using \doxyref{mm\_\-param\_\-free()}{p.}{group__param_g46339038e995799e6a3e37512f442fc9} \end{Desc} -\index{param@{param}!mm_param_setname@{mm\_\-param\_\-setname}} -\index{mm_param_setname@{mm\_\-param\_\-setname}!param@{param}} -\subsubsection{\setlength{\rightskip}{0pt plus 5cm}char$\ast$ mm\_\-param\_\-setname (struct mm\_\-param $\ast$ {\em param}, const char $\ast$ {\em name}, int {\em copy})}\label{group__param_g2a266c63c7e89cf829b2af8e995e55e8} - - -Sets the name of the given MIME parameter - -\begin{Desc} -\item[Parameters:] -\begin{description} -\item[{\em param}]A valid MIME parameter object \item[{\em name}]The new name of the parameter \item[{\em copy}]If set to $>$ 0, copy the value stored in name \end{description} -\end{Desc} -\begin{Desc} -\item[Returns:]The address of the previous name for passing to free() \end{Desc} -\index{param@{param}!mm_param_setvalue@{mm\_\-param\_\-setvalue}} -\index{mm_param_setvalue@{mm\_\-param\_\-setvalue}!param@{param}} -\subsubsection{\setlength{\rightskip}{0pt plus 5cm}char$\ast$ mm\_\-param\_\-setvalue (struct mm\_\-param $\ast$ {\em param}, const char $\ast$ {\em value}, int {\em copy})}\label{group__param_gca3e636ab5700462eb32ca5bc19e4cc6} - - -Sets the value of the given MIME parameter - -\begin{Desc} -\item[Parameters:] -\begin{description} -\item[{\em param}]A valid MIME parameter object \item[{\em name}]The new value for the parameter \item[{\em copy}]If set to $>$ 0, copy the value stored in value \end{description} -\end{Desc} -\begin{Desc} -\item[Returns:]The address of the previous value for passing to free() \end{Desc} diff --git a/main/minimime/mm-docs/latex/group__util.tex b/main/minimime/mm-docs/latex/group__util.tex deleted file mode 100644 index 00a3c20da3..0000000000 --- a/main/minimime/mm-docs/latex/group__util.tex +++ /dev/null @@ -1,128 +0,0 @@ -\section{General purpose utility functions} -\label{group__util}\index{General purpose utility functions@{General purpose utility functions}} -\subsection*{Utility functions} -\begin{CompactItemize} -\item -void \textbf{xfree} (void $\ast$)\label{group__util_g35c4383ff0dee2de18985e6edfed1ae6} - -\item -char $\ast$ \textbf{xstrdup} (const char $\ast$)\label{group__util_g2961ae74e91b0b28acdf9822438a581c} - -\end{CompactItemize} -\subsection*{Functions} -\begin{CompactItemize} -\item -void $\ast$ {\bf xmalloc} (size\_\-t size) -\item -void $\ast$ {\bf xrealloc} (void $\ast$p, size\_\-t size) -\item -char $\ast$ {\bf mm\_\-unquote} (const char $\ast$string) -\item -char $\ast$ {\bf mm\_\-uncomment} (const char $\ast$string) -\item -char $\ast$ {\bf xstrsep} (char $\ast$$\ast$stringp, const char $\ast$delim) -\item -char $\ast$ {\bf mm\_\-stripchars} (char $\ast$input, char $\ast$strip) -\item -char $\ast$ {\bf mm\_\-addchars} (char $\ast$input, char $\ast$add, u\_\-int16\_\-t linelength) -\end{CompactItemize} - - -\subsection{Function Documentation} -\index{util@{util}!mm_addchars@{mm\_\-addchars}} -\index{mm_addchars@{mm\_\-addchars}!util@{util}} -\subsubsection{\setlength{\rightskip}{0pt plus 5cm}char$\ast$ mm\_\-addchars (char $\ast$ {\em input}, char $\ast$ {\em add}, u\_\-int16\_\-t {\em linelength})}\label{group__util_g0747d4b4e33644263e6d73d2d8d4818b} - - -Adds characters to a string at given positions - -\begin{Desc} -\item[Parameters:] -\begin{description} -\item[{\em input}]The string to which to add characters \item[{\em add}]The character string to add \item[{\em linelength}]The position where to add the character \end{description} -\end{Desc} -\begin{Desc} -\item[Returns:]A copy of the string with characters added\end{Desc} -This function adds the characters add at each linelength positions and returns this new string. \index{util@{util}!mm_stripchars@{mm\_\-stripchars}} -\index{mm_stripchars@{mm\_\-stripchars}!util@{util}} -\subsubsection{\setlength{\rightskip}{0pt plus 5cm}char$\ast$ mm\_\-stripchars (char $\ast$ {\em input}, char $\ast$ {\em strip})}\label{group__util_gf62be7dd21e545f8db72f3c9e3b6a3c3} - - -Strips a given character set from a string - -\begin{Desc} -\item[Parameters:] -\begin{description} -\item[{\em input}]The string which to strip \item[{\em strip}]The character set to strip off \end{description} -\end{Desc} -\begin{Desc} -\item[Returns:]A copy of the original string with all chars stripped \end{Desc} -\index{util@{util}!mm_uncomment@{mm\_\-uncomment}} -\index{mm_uncomment@{mm\_\-uncomment}!util@{util}} -\subsubsection{\setlength{\rightskip}{0pt plus 5cm}char$\ast$ mm\_\-uncomment (const char $\ast$ {\em string})}\label{group__util_g49c016ff4cfd02f1b019c4dce5aac357} - - -Removes MIME comments from a string - -\begin{Desc} -\item[Parameters:] -\begin{description} -\item[{\em string}]The string to uncomment \end{description} -\end{Desc} -\begin{Desc} -\item[Returns:]A pointer to the uncommented string or NULL on error. Sets mm\_\-errno.\end{Desc} -This function removes MIME comments from a string (included in parantheses). It returns a pointer to a newly allocated memory region in which the uncommented string is stored. The returned string needs to be freed when it's not used anymore. \index{util@{util}!mm_unquote@{mm\_\-unquote}} -\index{mm_unquote@{mm\_\-unquote}!util@{util}} -\subsubsection{\setlength{\rightskip}{0pt plus 5cm}char$\ast$ mm\_\-unquote (const char $\ast$ {\em string})}\label{group__util_gf0f89a29a634f6f1f833abb1e214a6b1} - - -Unquotes a string - -\begin{Desc} -\item[Parameters:] -\begin{description} -\item[{\em string}]The quoted string to unquote \end{description} -\end{Desc} -\begin{Desc} -\item[Returns:]A pointer to the unquoted string\end{Desc} -This function unquotes a string. That is, it returns a pointer to a newly allocated memory region in which the unquoted string is stored. Only leading and trailing double-qoutes are removed. The string needs to be freed when it is not needed anymore. \index{util@{util}!xmalloc@{xmalloc}} -\index{xmalloc@{xmalloc}!util@{util}} -\subsubsection{\setlength{\rightskip}{0pt plus 5cm}void$\ast$ xmalloc (size\_\-t {\em size})}\label{group__util_g2ff4ef58da7e543466e75f20f2a2d8b7} - - -Allocates a block of memory - -\begin{Desc} -\item[Parameters:] -\begin{description} -\item[{\em size}]The size of the memory region to allocate \end{description} -\end{Desc} -\begin{Desc} -\item[Returns:]A pointer to the allocated memory region\end{Desc} -\doxyref{xmalloc()}{p.}{group__util_g2ff4ef58da7e543466e75f20f2a2d8b7} calls abort() if either the size argument is negative or the requested memory amount could not be allocated via an assert() call. \index{util@{util}!xrealloc@{xrealloc}} -\index{xrealloc@{xrealloc}!util@{util}} -\subsubsection{\setlength{\rightskip}{0pt plus 5cm}void$\ast$ xrealloc (void $\ast$ {\em p}, size\_\-t {\em size})}\label{group__util_ge14637b4672461f1f0bee822406d68dc} - - -realloc() wrapper - -\begin{Desc} -\item[Parameters:] -\begin{description} -\item[{\em p}]Pointer to a memory region which should be reallocated \item[{\em size}]The new size of the memory region \end{description} -\end{Desc} -\begin{Desc} -\item[Returns:]A pointer to the reallocated memory region\end{Desc} -\doxyref{xrealloc()}{p.}{group__util_ge14637b4672461f1f0bee822406d68dc} is a wrapper around realloc() which calls abort() if either the size argument is negative or the requested memory amount could not be allocated. \index{util@{util}!xstrsep@{xstrsep}} -\index{xstrsep@{xstrsep}!util@{util}} -\subsubsection{\setlength{\rightskip}{0pt plus 5cm}char$\ast$ xstrsep (char $\ast$$\ast$ {\em stringp}, const char $\ast$ {\em delim})}\label{group__util_g3ae25483c8a42f6562f2a916a511228f} - - -separate strings - -\begin{Desc} -\item[Parameters:] -\begin{description} -\item[{\em stringp}]A pointer to the string being splitted \item[{\em delim}]The delimeter string\end{description} -\end{Desc} -This function works similar to strsep(), with the difference that delim is treated as a whole. \ No newline at end of file diff --git a/main/minimime/mm-docs/latex/mm__codecs_8c.tex b/main/minimime/mm-docs/latex/mm__codecs_8c.tex deleted file mode 100644 index 1dad6cf963..0000000000 --- a/main/minimime/mm-docs/latex/mm__codecs_8c.tex +++ /dev/null @@ -1,41 +0,0 @@ -\section{mm\_\-codecs.c File Reference} -\label{mm__codecs_8c}\index{mm_codecs.c@{mm\_\-codecs.c}} -{\tt \#include $<$sys/types.h$>$}\par -{\tt \#include $<$sys/stat.h$>$}\par -{\tt \#include $<$stdio.h$>$}\par -{\tt \#include $<$stdlib.h$>$}\par -{\tt \#include $<$unistd.h$>$}\par -{\tt \#include $<$fcntl.h$>$}\par -{\tt \#include $<$string.h$>$}\par -{\tt \#include $<$assert.h$>$}\par -{\tt \#include \char`\"{}mm\_\-internal.h\char`\"{}}\par -{\tt \#include \char`\"{}mm\_\-util.h\char`\"{}}\par -\subsection*{Functions} -\begin{Indent}{\bf Codec manipulation}\par -\begin{CompactItemize} -\item -int {\bf mm\_\-codec\_\-hasdecoder} (const char $\ast$encoding) -\item -int {\bf mm\_\-codec\_\-hasencoder} (const char $\ast$encoding) -\item -int {\bf mm\_\-codec\_\-isregistered} (const char $\ast$encoding) -\item -int {\bf mm\_\-codec\_\-register} (const char $\ast$encoding, char $\ast$($\ast$encoder)(char $\ast$data, u\_\-int32\_\-t i), char $\ast$($\ast$decoder)(char $\ast$data)) -\item -int {\bf mm\_\-codec\_\-unregister} (const char $\ast$encoding) -\item -int {\bf mm\_\-codec\_\-unregisterall} (void) -\item -void {\bf mm\_\-codec\_\-registerdefaultcodecs} (void) -\end{CompactItemize} -\end{Indent} -\subsection*{Variables} -\begin{CompactItemize} -\item -mm\_\-codecs \textbf{codecs}\label{mm__codecs_8c_b669b6dc7c7d10408d8da81b3f1a30d3} - -\end{CompactItemize} - - -\subsection{Detailed Description} -This module contains functions to manipulate Mini\-MIME codecs \ No newline at end of file diff --git a/main/minimime/mm-docs/latex/mm__contenttype_8c.tex b/main/minimime/mm-docs/latex/mm__contenttype_8c.tex deleted file mode 100644 index 71a88cf626..0000000000 --- a/main/minimime/mm-docs/latex/mm__contenttype_8c.tex +++ /dev/null @@ -1,61 +0,0 @@ -\section{mm\_\-contenttype.c File Reference} -\label{mm__contenttype_8c}\index{mm_contenttype.c@{mm\_\-contenttype.c}} -{\tt \#include $<$stdio.h$>$}\par -{\tt \#include $<$stdlib.h$>$}\par -{\tt \#include $<$stdarg.h$>$}\par -{\tt \#include $<$string.h$>$}\par -{\tt \#include $<$ctype.h$>$}\par -{\tt \#include $<$assert.h$>$}\par -{\tt \#include \char`\"{}mm\_\-internal.h\char`\"{}}\par -{\tt \#include \char`\"{}mm\_\-util.h\char`\"{}}\par -\subsection*{Data Structures} -\begin{CompactItemize} -\item -struct \textbf{mm\_\-encoding\_\-mappings} -\end{CompactItemize} -\subsection*{Functions} -\begin{Indent}{\bf Functions for manipulating Content-Type objects}\par -\begin{CompactItemize} -\item -mm\_\-content $\ast$ {\bf mm\_\-content\_\-new} (void) -\item -void {\bf mm\_\-content\_\-free} (struct mm\_\-content $\ast$ct) -\item -int {\bf mm\_\-content\_\-attachparam} (struct mm\_\-content $\ast$ct, struct mm\_\-param $\ast$param) -\item -char $\ast$ {\bf mm\_\-content\_\-getparambyname} (struct mm\_\-content $\ast$ct, const char $\ast$name) -\item -mm\_\-param $\ast$ \textbf{mm\_\-content\_\-getparamobjbyname} (struct mm\_\-content $\ast$ct, const char $\ast$name)\label{group__contenttype_g1ba63e679d2b49aceb6cfec8a6752581} - -\item -int {\bf mm\_\-content\_\-setmaintype} (struct mm\_\-content $\ast$ct, char $\ast$value, int copy) -\item -char $\ast$ {\bf mm\_\-content\_\-getmaintype} (struct mm\_\-content $\ast$ct) -\item -char $\ast$ {\bf mm\_\-content\_\-getsubtype} (struct mm\_\-content $\ast$ct) -\item -char $\ast$ \textbf{mm\_\-content\_\-gettype} (struct mm\_\-content $\ast$ct)\label{group__contenttype_ga6d8453eb35bd695c4944e53b7040b65} - -\item -int {\bf mm\_\-content\_\-setsubtype} (struct mm\_\-content $\ast$ct, char $\ast$value, int copy) -\item -int \textbf{mm\_\-content\_\-settype} (struct mm\_\-content $\ast$ct, const char $\ast$fmt,...)\label{group__contenttype_g878686678ea2ba97aa8edb1206a564d8} - -\item -int {\bf mm\_\-content\_\-iscomposite} (struct mm\_\-content $\ast$ct) -\item -int {\bf mm\_\-content\_\-isvalidencoding} (const char $\ast$encoding) -\item -int {\bf mm\_\-content\_\-setencoding} (struct mm\_\-content $\ast$ct, const char $\ast$encoding) -\item -int {\bf mm\_\-content\_\-getencoding} (struct mm\_\-content $\ast$ct, const char $\ast$encoding) -\item -char $\ast$ {\bf mm\_\-content\_\-paramstostring} (struct mm\_\-content $\ast$ct) -\item -char $\ast$ {\bf mm\_\-content\_\-tostring} (struct mm\_\-content $\ast$ct) -\end{CompactItemize} -\end{Indent} - - -\subsection{Detailed Description} -This module contains functions for manipulating Content-Type objects. \ No newline at end of file diff --git a/main/minimime/mm-docs/latex/mm__context_8c.tex b/main/minimime/mm-docs/latex/mm__context_8c.tex deleted file mode 100644 index 78ba141e57..0000000000 --- a/main/minimime/mm-docs/latex/mm__context_8c.tex +++ /dev/null @@ -1,44 +0,0 @@ -\section{mm\_\-context.c File Reference} -\label{mm__context_8c}\index{mm_context.c@{mm\_\-context.c}} -{\tt \#include $<$stdio.h$>$}\par -{\tt \#include $<$stdlib.h$>$}\par -{\tt \#include $<$stdarg.h$>$}\par -{\tt \#include $<$string.h$>$}\par -{\tt \#include $<$assert.h$>$}\par -{\tt \#include \char`\"{}mm\_\-internal.h\char`\"{}}\par -\subsection*{Functions} -\begin{Indent}{\bf Manipulating Mini\-MIME contexts}\par -\begin{CompactItemize} -\item -MM\_\-CTX $\ast$ {\bf mm\_\-context\_\-new} (void) -\item -void {\bf mm\_\-context\_\-free} (MM\_\-CTX $\ast$ctx) -\item -int {\bf mm\_\-context\_\-attachpart} (MM\_\-CTX $\ast$ctx, struct mm\_\-mimepart $\ast$part) -\item -int {\bf mm\_\-context\_\-attachpart\_\-after} (MM\_\-CTX $\ast$ctx, struct mm\_\-mimepart $\ast$part, int pos) -\item -int {\bf mm\_\-context\_\-deletepart} (MM\_\-CTX $\ast$ctx, int which, int freemem) -\item -int {\bf mm\_\-context\_\-countparts} (MM\_\-CTX $\ast$ctx) -\item -mm\_\-mimepart $\ast$ {\bf mm\_\-context\_\-getpart} (MM\_\-CTX $\ast$ctx, int which) -\item -int {\bf mm\_\-context\_\-iscomposite} (MM\_\-CTX $\ast$ctx) -\item -int {\bf mm\_\-context\_\-haswarnings} (MM\_\-CTX $\ast$ctx) -\item -int {\bf mm\_\-context\_\-generateboundary} (MM\_\-CTX $\ast$ctx) -\item -int {\bf mm\_\-context\_\-setpreamble} (MM\_\-CTX $\ast$ctx, char $\ast$preamble) -\item -char $\ast$ \textbf{mm\_\-context\_\-getpreamble} (MM\_\-CTX $\ast$ctx)\label{group__context_g1ebbdd51106ccdee77ca421f9692bde7} - -\item -int {\bf mm\_\-context\_\-flatten} (MM\_\-CTX $\ast$ctx, char $\ast$$\ast$flat, size\_\-t $\ast$length, int flags) -\end{CompactItemize} -\end{Indent} - - -\subsection{Detailed Description} -Modules for manipulating Mini\-MIME contexts \ No newline at end of file diff --git a/main/minimime/mm-docs/latex/mm__envelope_8c.tex b/main/minimime/mm-docs/latex/mm__envelope_8c.tex deleted file mode 100644 index 841a6b5501..0000000000 --- a/main/minimime/mm-docs/latex/mm__envelope_8c.tex +++ /dev/null @@ -1,25 +0,0 @@ -\section{mm\_\-envelope.c File Reference} -\label{mm__envelope_8c}\index{mm_envelope.c@{mm\_\-envelope.c}} -{\tt \#include $<$stdio.h$>$}\par -{\tt \#include $<$stdlib.h$>$}\par -{\tt \#include $<$stdarg.h$>$}\par -{\tt \#include $<$string.h$>$}\par -{\tt \#include $<$ctype.h$>$}\par -{\tt \#include $<$assert.h$>$}\par -{\tt \#include \char`\"{}mm\_\-internal.h\char`\"{}}\par -{\tt \#include \char`\"{}mm\_\-util.h\char`\"{}}\par -\subsection*{Functions} -\begin{Indent}{\bf Accessing and manipulating a message's envelope}\par -\begin{CompactItemize} -\item -int {\bf mm\_\-envelope\_\-getheaders} (MM\_\-CTX $\ast$ctx, char $\ast$$\ast$result, size\_\-t $\ast$length) -\item -int {\bf mm\_\-envelope\_\-setheader} (MM\_\-CTX $\ast$ctx, const char $\ast$name, const char $\ast$fmt,...) -\item -int {\bf mm\_\-envelope\_\-getrecipients} (MM\_\-CTX $\ast$ctx, char $\ast$$\ast$result, size\_\-t $\ast$length) -\end{CompactItemize} -\end{Indent} - - -\subsection{Detailed Description} -This module contains functions for accessing a message's envelope. This are mainly wrapper functions for easy access. \ No newline at end of file diff --git a/main/minimime/mm-docs/latex/mm__error_8c.tex b/main/minimime/mm-docs/latex/mm__error_8c.tex deleted file mode 100644 index 47ae033142..0000000000 --- a/main/minimime/mm-docs/latex/mm__error_8c.tex +++ /dev/null @@ -1,29 +0,0 @@ -\section{mm\_\-error.c File Reference} -\label{mm__error_8c}\index{mm_error.c@{mm\_\-error.c}} -{\tt \#include $<$stdio.h$>$}\par -{\tt \#include $<$stdlib.h$>$}\par -{\tt \#include $<$stdarg.h$>$}\par -{\tt \#include $<$string.h$>$}\par -{\tt \#include $<$assert.h$>$}\par -{\tt \#include $<$errno.h$>$}\par -{\tt \#include \char`\"{}mm\_\-internal.h\char`\"{}}\par -{\tt \#include \char`\"{}mm\_\-util.h\char`\"{}}\par -\subsection*{Functions} -\begin{CompactItemize} -\item -void {\bf mm\_\-error\_\-init} (void) -\item -void {\bf mm\_\-error\_\-setmsg} (const char $\ast$fmt,...) -\item -void \textbf{mm\_\-error\_\-setlineno} (int lineno)\label{mm__error_8c_190c991d7bb378b6cd6f995ffc3011f7} - -\item -char $\ast$ {\bf mm\_\-error\_\-string} (void) -\item -int \textbf{mm\_\-error\_\-lineno} (void)\label{mm__error_8c_c84acacac29f1e6efd10bb3a89eab272} - -\end{CompactItemize} - - -\subsection{Detailed Description} -This module contains functions for Mini\-MIME error information/manipulation \ No newline at end of file diff --git a/main/minimime/mm-docs/latex/mm__header_8c.tex b/main/minimime/mm-docs/latex/mm__header_8c.tex deleted file mode 100644 index 651a5a4e95..0000000000 --- a/main/minimime/mm-docs/latex/mm__header_8c.tex +++ /dev/null @@ -1,63 +0,0 @@ -\section{mm\_\-header.c File Reference} -\label{mm__header_8c}\index{mm_header.c@{mm\_\-header.c}} -{\tt \#include $<$stdio.h$>$}\par -{\tt \#include $<$stdlib.h$>$}\par -{\tt \#include $<$stdarg.h$>$}\par -{\tt \#include $<$string.h$>$}\par -{\tt \#include $<$ctype.h$>$}\par -{\tt \#include $<$assert.h$>$}\par -{\tt \#include \char`\"{}mm\_\-internal.h\char`\"{}}\par -{\tt \#include \char`\"{}mm\_\-util.h\char`\"{}}\par -\subsection*{Functions} -\begin{CompactItemize} -\item -mm\_\-mimeheader $\ast$ {\bf mm\_\-mimeheader\_\-new} (void) -\item -void {\bf mm\_\-mimeheader\_\-free} (struct mm\_\-mimeheader $\ast$header) -\item -mm\_\-mimeheader $\ast$ {\bf mm\_\-mimeheader\_\-generate} (const char $\ast$name, const char $\ast$value) -\item -int \textbf{mm\_\-mimeheader\_\-uncomment} (struct mm\_\-mimeheader $\ast$header)\label{mm__header_8c_26657e44385646fde63712d7110492d7} - -\item -int \textbf{mm\_\-mimeheader\_\-uncommentbyname} (struct mm\_\-mimepart $\ast$part, const char $\ast$name)\label{mm__header_8c_2081ee4c43e88d5a318a783069a5d471} - -\item -int \textbf{mm\_\-mimeheader\_\-uncommentall} (struct mm\_\-mimepart $\ast$part)\label{mm__header_8c_9f9bcb0fb26461bd349c15366748ecb7} - -\end{CompactItemize} - - -\subsection{Detailed Description} -This module contains functions for manipulating MIME headers - -\subsection{Function Documentation} -\index{mm_header.c@{mm\_\-header.c}!mm_mimeheader_free@{mm\_\-mimeheader\_\-free}} -\index{mm_mimeheader_free@{mm\_\-mimeheader\_\-free}!mm_header.c@{mm\_\-header.c}} -\subsubsection{\setlength{\rightskip}{0pt plus 5cm}void mm\_\-mimeheader\_\-free (struct mm\_\-mimeheader $\ast$ {\em header})}\label{mm__header_8c_61e3e62728f720ac381196ec59303064} - - -Frees a MIME header object - -\begin{Desc} -\item[Parameters:] -\begin{description} -\item[{\em header}]The MIME header object which to free \end{description} -\end{Desc} -\index{mm_header.c@{mm\_\-header.c}!mm_mimeheader_generate@{mm\_\-mimeheader\_\-generate}} -\index{mm_mimeheader_generate@{mm\_\-mimeheader\_\-generate}!mm_header.c@{mm\_\-header.c}} -\subsubsection{\setlength{\rightskip}{0pt plus 5cm}struct mm\_\-mimeheader$\ast$ mm\_\-mimeheader\_\-generate (const char $\ast$ {\em name}, const char $\ast$ {\em value})}\label{mm__header_8c_07a7f7dcebc91aa86f5478e1d84341a1} - - -Creates a new MIME header, but does no checks whatsoever (create as-is) \index{mm_header.c@{mm\_\-header.c}!mm_mimeheader_new@{mm\_\-mimeheader\_\-new}} -\index{mm_mimeheader_new@{mm\_\-mimeheader\_\-new}!mm_header.c@{mm\_\-header.c}} -\subsubsection{\setlength{\rightskip}{0pt plus 5cm}struct mm\_\-mimeheader$\ast$ mm\_\-mimeheader\_\-new (void)}\label{mm__header_8c_2f2c5f2f640111caf3096ed46b5986a4} - - -Creates a new MIME header object - -\begin{Desc} -\item[Returns:]A new and initialized MIME header object \end{Desc} -\begin{Desc} -\item[See also:]\doxyref{mm\_\-mimeheader\_\-free}{p.}{mm__header_8c_61e3e62728f720ac381196ec59303064}\end{Desc} -This function creates and initializes a new MIME header object, which must later be freed using \doxyref{mm\_\-mimeheader\_\-free()}{p.}{mm__header_8c_61e3e62728f720ac381196ec59303064} \ No newline at end of file diff --git a/main/minimime/mm-docs/latex/mm__internal_8h.tex b/main/minimime/mm-docs/latex/mm__internal_8h.tex deleted file mode 100644 index 017f05bc00..0000000000 --- a/main/minimime/mm-docs/latex/mm__internal_8h.tex +++ /dev/null @@ -1,45 +0,0 @@ -\section{mm\_\-internal.h File Reference} -\label{mm__internal_8h}\index{mm_internal.h@{mm\_\-internal.h}} -{\tt \#include \char`\"{}mm.h\char`\"{}}\par -\subsection*{Defines} -\begin{CompactItemize} -\item -\#define \textbf{debugp}(m,...) -\end{CompactItemize} -\subsection*{Functions} -\begin{Indent}{\bf Utility functions}\par -\begin{CompactItemize} -\item -void $\ast$ {\bf xmalloc} (size\_\-t) -\item -void $\ast$ {\bf xrealloc} (void $\ast$, size\_\-t) -\item -void \textbf{xfree} (void $\ast$)\label{group__util_g35c4383ff0dee2de18985e6edfed1ae6} - -\item -char $\ast$ \textbf{xstrdup} (const char $\ast$)\label{group__util_g2961ae74e91b0b28acdf9822438a581c} - -\item -char $\ast$ {\bf xstrsep} (char $\ast$$\ast$, const char $\ast$) -\end{CompactItemize} -\end{Indent} - - -\subsection{Detailed Description} -Data definitions for Mini\-MIME - -\subsection{Define Documentation} -\index{mm_internal.h@{mm\_\-internal.h}!debugp@{debugp}} -\index{debugp@{debugp}!mm_internal.h@{mm\_\-internal.h}} -\subsubsection{\setlength{\rightskip}{0pt plus 5cm}\#define debugp(m, {\em ...})}\label{mm__internal_8h_089dd7bda22f552c35ebdc06a8849c56} - - -\textbf{Value:} - -\begin{Code}\begin{verbatim}do { \ - fprintf(stderr, "%s:%d:: ", __FILE__, __LINE__); \ - fprintf(stderr, m, ## __VA_ARGS__); \ - fprintf(stderr, "\n"); \ - fflush(stderr); \ -} while (0); -\end{verbatim}\end{Code} diff --git a/main/minimime/mm-docs/latex/mm__mimepart_8c.tex b/main/minimime/mm-docs/latex/mm__mimepart_8c.tex deleted file mode 100644 index 247887efda..0000000000 --- a/main/minimime/mm-docs/latex/mm__mimepart_8c.tex +++ /dev/null @@ -1,69 +0,0 @@ -\section{mm\_\-mimepart.c File Reference} -\label{mm__mimepart_8c}\index{mm_mimepart.c@{mm\_\-mimepart.c}} -{\tt \#include $<$sys/types.h$>$}\par -{\tt \#include $<$sys/stat.h$>$}\par -{\tt \#include $<$stdio.h$>$}\par -{\tt \#include $<$stdlib.h$>$}\par -{\tt \#include $<$string.h$>$}\par -{\tt \#include $<$unistd.h$>$}\par -{\tt \#include $<$fcntl.h$>$}\par -{\tt \#include $<$ctype.h$>$}\par -{\tt \#include $<$assert.h$>$}\par -{\tt \#include \char`\"{}mm\_\-internal.h\char`\"{}}\par -\subsection*{Functions} -\begin{Indent}{\bf Creating and destroying MIME parts}\par -\begin{CompactItemize} -\item -mm\_\-mimepart $\ast$ {\bf mm\_\-mimepart\_\-new} (void) -\item -mm\_\-mimepart $\ast$ {\bf mm\_\-mimepart\_\-fromfile} (const char $\ast$filename) -\item -void {\bf mm\_\-mimepart\_\-free} (struct mm\_\-mimepart $\ast$part) -\end{CompactItemize} -\end{Indent} -\begin{Indent}{\bf Accessing the MIME part's mail header}\par -\begin{CompactItemize} -\item -int {\bf mm\_\-mimepart\_\-attachheader} (struct mm\_\-mimepart $\ast$part, struct mm\_\-mimeheader $\ast$header) -\item -int {\bf mm\_\-mimepart\_\-countheaders} (struct mm\_\-mimepart $\ast$part) -\item -int {\bf mm\_\-mimepart\_\-countheaderbyname} (struct mm\_\-mimepart $\ast$part, const char $\ast$name) -\item -mm\_\-mimeheader $\ast$ {\bf mm\_\-mimepart\_\-getheaderbyname} (struct mm\_\-mimepart $\ast$part, const char $\ast$name, int idx) -\item -const char $\ast$ {\bf mm\_\-mimepart\_\-getheadervalue} (struct mm\_\-mimepart $\ast$part, const char $\ast$name, int idx) -\item -int {\bf mm\_\-mimepart\_\-headers\_\-start} (struct mm\_\-mimepart $\ast$part, struct mm\_\-mimeheader $\ast$$\ast$id) -\item -mm\_\-mimeheader $\ast$ {\bf mm\_\-mimepart\_\-headers\_\-next} (struct mm\_\-mimepart $\ast$part, struct mm\_\-mimeheader $\ast$$\ast$id) -\end{CompactItemize} -\end{Indent} -\begin{Indent}{\bf Accessing and manipulating the MIME part's body}\par -\begin{CompactItemize} -\item -char $\ast$ {\bf mm\_\-mimepart\_\-getbody} (struct mm\_\-mimepart $\ast$part, int opaque) -\item -void {\bf mm\_\-mimepart\_\-setbody} (struct mm\_\-mimepart $\ast$part, const char $\ast$data, int opaque) -\item -size\_\-t {\bf mm\_\-mimepart\_\-getlength} (struct mm\_\-mimepart $\ast$part) -\item -char $\ast$ {\bf mm\_\-mimepart\_\-decode} (struct mm\_\-mimepart $\ast$part) -\item -int {\bf mm\_\-mimepart\_\-flatten} (struct mm\_\-mimepart $\ast$part, char $\ast$$\ast$result, size\_\-t $\ast$length, int opaque) -\item -int {\bf mm\_\-mimepart\_\-setdefaultcontenttype} (struct mm\_\-mimepart $\ast$part, int composite) -\end{CompactItemize} -\end{Indent} -\begin{Indent}{\bf Accessing the MIME part's Content-Type information}\par -\begin{CompactItemize} -\item -void {\bf mm\_\-mimepart\_\-attachcontenttype} (struct mm\_\-mimepart $\ast$part, struct mm\_\-content $\ast$ct) -\item -mm\_\-content $\ast$ {\bf mm\_\-mimepart\_\-gettype} (struct mm\_\-mimepart $\ast$part) -\end{CompactItemize} -\end{Indent} - - -\subsection{Detailed Description} -This module contains functions for manipulating MIME header objects. \ No newline at end of file diff --git a/main/minimime/mm-docs/latex/mm__mimeutil_8c.tex b/main/minimime/mm-docs/latex/mm__mimeutil_8c.tex deleted file mode 100644 index 5ac2599b65..0000000000 --- a/main/minimime/mm-docs/latex/mm__mimeutil_8c.tex +++ /dev/null @@ -1,50 +0,0 @@ -\section{mm\_\-mimeutil.c File Reference} -\label{mm__mimeutil_8c}\index{mm_mimeutil.c@{mm\_\-mimeutil.c}} -{\tt \#include $<$sys/time.h$>$}\par -{\tt \#include $<$stdio.h$>$}\par -{\tt \#include $<$stdlib.h$>$}\par -{\tt \#include $<$string.h$>$}\par -{\tt \#include $<$time.h$>$}\par -{\tt \#include $<$assert.h$>$}\par -{\tt \#include \char`\"{}mm\_\-internal.h\char`\"{}}\par -\subsection*{Defines} -\begin{CompactItemize} -\item -\#define \textbf{MM\_\-DATE\_\-LENGTH}~50\label{mm__mimeutil_8c_257774e1a30f8190b3d99891be64210a} - -\end{CompactItemize} -\subsection*{Functions} -\begin{CompactItemize} -\item -int {\bf mm\_\-mimeutil\_\-gendate} (char $\ast$$\ast$result) -\item -int \textbf{mm\_\-mimeutil\_\-genboundary} (char $\ast$prefix, size\_\-t length, char $\ast$$\ast$result)\label{mm__mimeutil_8c_a72e503ba7ce2552456c6bd5935febe9} - -\end{CompactItemize} - - -\subsection{Detailed Description} -This module contains various MIME related utility functions. - -\subsection{Function Documentation} -\index{mm_mimeutil.c@{mm\_\-mimeutil.c}!mm_mimeutil_gendate@{mm\_\-mimeutil\_\-gendate}} -\index{mm_mimeutil_gendate@{mm\_\-mimeutil\_\-gendate}!mm_mimeutil.c@{mm\_\-mimeutil.c}} -\subsubsection{\setlength{\rightskip}{0pt plus 5cm}int mm\_\-mimeutil\_\-gendate (char $\ast$$\ast$ {\em result})}\label{mm__mimeutil_8c_a7b7f63b42dfa7a7f907b615aa4cd057} - - -Generates an RFC 2822 conform date string - -\begin{Desc} -\item[Parameters:] -\begin{description} -\item[{\em timezone}]Whether to include timezone information \end{description} -\end{Desc} -\begin{Desc} -\item[Returns:]A pointer to the actual date string \end{Desc} -\begin{Desc} -\item[Note:]The pointer returned must be freed some time\end{Desc} -This function generates an RFC 2822 conform date string to use in message headers. It allocates memory to hold the string and returns a pointer to it. The generated date is in the format (example): - -Thu, 25 December 2003 16:35:22 +0100 (CET) - -This function dynamically allocates memory and returns a pointer to it. This memory should be released with free() once not needed anymore. \ No newline at end of file diff --git a/main/minimime/mm-docs/latex/mm__param_8c.tex b/main/minimime/mm-docs/latex/mm__param_8c.tex deleted file mode 100644 index a3bc27e192..0000000000 --- a/main/minimime/mm-docs/latex/mm__param_8c.tex +++ /dev/null @@ -1,38 +0,0 @@ -\section{mm\_\-param.c File Reference} -\label{mm__param_8c}\index{mm_param.c@{mm\_\-param.c}} -{\tt \#include $<$sys/types.h$>$}\par -{\tt \#include $<$sys/stat.h$>$}\par -{\tt \#include $<$stdio.h$>$}\par -{\tt \#include $<$stdlib.h$>$}\par -{\tt \#include $<$unistd.h$>$}\par -{\tt \#include $<$fcntl.h$>$}\par -{\tt \#include $<$string.h$>$}\par -{\tt \#include $<$ctype.h$>$}\par -{\tt \#include $<$assert.h$>$}\par -{\tt \#include \char`\"{}mm\_\-internal.h\char`\"{}}\par -{\tt \#include \char`\"{}mm\_\-util.h\char`\"{}}\par -\subsection*{Functions} -\begin{Indent}{\bf Functions for manipulating MIME parameters}\par -{\em MIME parameters are properties attached to certain MIME headers, such as Content-Type and Content-Disposition. MIME parameters have a textual representations as in {\em name=value\/}. They contain important information about the MIME structure of a message, such as the boundary string used, which charset was used to encode the message and so on. This module provides simple to use functions to query or set MIME parameters. - -Each MIME header may hold an arbitrary amount of such parameters, which are delimeted by each other with a semicolon. }\begin{CompactItemize} -\item -mm\_\-param $\ast$ {\bf mm\_\-param\_\-new} (void) -\item -void {\bf mm\_\-param\_\-free} (struct mm\_\-param $\ast$param) -\item -mm\_\-param $\ast$ {\bf mm\_\-param\_\-generate} (const char $\ast$name, const char $\ast$value) -\item -char $\ast$ {\bf mm\_\-param\_\-setname} (struct mm\_\-param $\ast$param, const char $\ast$name, int copy) -\item -char $\ast$ {\bf mm\_\-param\_\-setvalue} (struct mm\_\-param $\ast$param, const char $\ast$value, int copy) -\item -const char $\ast$ {\bf mm\_\-param\_\-getname} (struct mm\_\-param $\ast$param) -\item -const char $\ast$ {\bf mm\_\-param\_\-getvalue} (struct mm\_\-param $\ast$param) -\end{CompactItemize} -\end{Indent} - - -\subsection{Detailed Description} -Functions to manipulate MIME parameters \ No newline at end of file diff --git a/main/minimime/mm-docs/latex/mm__parse_8c.tex b/main/minimime/mm-docs/latex/mm__parse_8c.tex deleted file mode 100644 index 36613ad6cd..0000000000 --- a/main/minimime/mm-docs/latex/mm__parse_8c.tex +++ /dev/null @@ -1,90 +0,0 @@ -\section{mm\_\-parse.c File Reference} -\label{mm__parse_8c}\index{mm_parse.c@{mm\_\-parse.c}} -{\tt \#include $<$sys/types.h$>$}\par -{\tt \#include $<$sys/stat.h$>$}\par -{\tt \#include $<$stdio.h$>$}\par -{\tt \#include $<$stdlib.h$>$}\par -{\tt \#include $<$unistd.h$>$}\par -{\tt \#include $<$fcntl.h$>$}\par -{\tt \#include $<$string.h$>$}\par -{\tt \#include $<$ctype.h$>$}\par -{\tt \#include $<$assert.h$>$}\par -{\tt \#include \char`\"{}mm\_\-internal.h\char`\"{}}\par -{\tt \#include \char`\"{}mm\_\-util.h\char`\"{}}\par -{\tt \#include \char`\"{}mimeparser.h\char`\"{}}\par -{\tt \#include \char`\"{}mimeparser.tab.h\char`\"{}}\par -\subsection*{Functions} -\begin{CompactItemize} -\item -void {\bf PARSER\_\-initialize} (MM\_\-CTX $\ast$, int) -\item -void \textbf{PARSER\_\-setbuffer} (const char $\ast$)\label{mm__parse_8c_92d7d8e20b6def16fcf2649e0d88651f} - -\item -void \textbf{PARSER\_\-setfp} (FILE $\ast$)\label{mm__parse_8c_04446354e4248226578b90007d728a7b} - -\item -int {\bf mm\_\-parse\_\-mem} (MM\_\-CTX $\ast$ctx, const char $\ast$text, int parsemode, int flags) -\item -int {\bf mm\_\-parse\_\-file} (MM\_\-CTX $\ast$ctx, const char $\ast$filename, int parsemode, int flags) -\end{CompactItemize} - - -\subsection{Detailed Description} -Functions to parse MIME messages - -\subsection{Function Documentation} -\index{mm_parse.c@{mm\_\-parse.c}!mm_parse_file@{mm\_\-parse\_\-file}} -\index{mm_parse_file@{mm\_\-parse\_\-file}!mm_parse.c@{mm\_\-parse.c}} -\subsubsection{\setlength{\rightskip}{0pt plus 5cm}int mm\_\-parse\_\-file (MM\_\-CTX $\ast$ {\em ctx}, const char $\ast$ {\em filename}, int {\em parsemode}, int {\em flags})}\label{mm__parse_8c_cc9f623682b05f330c46e72e4e9d66cc} - - -Parses a file into a Mini\-MIME context - -\begin{Desc} -\item[Parameters:] -\begin{description} -\item[{\em ctx}]A valid Mini\-MIME context object \item[{\em filename}]The name of the file to parse \item[{\em parsemode}]The parsemode \item[{\em flags}]The flags to pass to the parser \end{description} -\end{Desc} -\begin{Desc} -\item[Returns:]0 on success or -1 on failure \end{Desc} -\begin{Desc} -\item[Note:]Sets mm\_\-errno if an error occurs\end{Desc} -This function parses a MIME message, stored in the filesystem according to the parseflags and stores the results in the Mini\-MIME context specified by ctx. - -The following modes can be used to specify how the message should be parsed: - -\begin{itemize} -\item MM\_\-PARSE\_\-STRICT: Do not tolerate MIME violations\item MM\_\-PARSE\_\-LOOSE: Tolerate as much MIME violations as possible\end{itemize} - - -The context needs to be initialized before using \doxyref{mm\_\-context\_\-new()}{p.}{group__context_g919fd41f85534d9c87c256857faa2610} and may be freed using \doxyref{mm\_\-context\_\-free()}{p.}{group__context_g76392d5269e9ef340c2f5f8336f7193b}. \index{mm_parse.c@{mm\_\-parse.c}!mm_parse_mem@{mm\_\-parse\_\-mem}} -\index{mm_parse_mem@{mm\_\-parse\_\-mem}!mm_parse.c@{mm\_\-parse.c}} -\subsubsection{\setlength{\rightskip}{0pt plus 5cm}int mm\_\-parse\_\-mem (MM\_\-CTX $\ast$ {\em ctx}, const char $\ast$ {\em text}, int {\em parsemode}, int {\em flags})}\label{mm__parse_8c_58c960b6017f13d4e4ec5f09b3c38495} - - -Parses a NUL-terminated string into a Mini\-MIME context - -\begin{Desc} -\item[Parameters:] -\begin{description} -\item[{\em ctx}]A valid Mini\-MIME context object \item[{\em text}]The NUL-terminated string to parse \item[{\em parsemode}]The parsemode \item[{\em flags}]The flags to pass to the parser \end{description} -\end{Desc} -\begin{Desc} -\item[Returns:]0 on success or -1 on failure \end{Desc} -\begin{Desc} -\item[Note:]Sets mm\_\-errno if an error occurs\end{Desc} -This function parses a MIME message, stored in the memory region pointed to by text (must be NUL-terminated) according to the parseflags and stores the results in the Mini\-MIME context specified by ctx. - -The following modes can be used to specify how the message should be parsed: - -\begin{itemize} -\item MM\_\-PARSE\_\-STRICT: Do not tolerate MIME violations\item MM\_\-PARSE\_\-LOOSE: Tolerate as much MIME violations as possible\end{itemize} - - -The context needs to be initialized before using \doxyref{mm\_\-context\_\-new()}{p.}{group__context_g919fd41f85534d9c87c256857faa2610} and may be freed using \doxyref{mm\_\-context\_\-free()}{p.}{group__context_g76392d5269e9ef340c2f5f8336f7193b}. \index{mm_parse.c@{mm\_\-parse.c}!PARSER_initialize@{PARSER\_\-initialize}} -\index{PARSER_initialize@{PARSER\_\-initialize}!mm_parse.c@{mm\_\-parse.c}} -\subsubsection{\setlength{\rightskip}{0pt plus 5cm}void PARSER\_\-initialize (MM\_\-CTX $\ast$ {\em newctx}, int {\em mode})}\label{mm__parse_8c_187cf71c0f6c2da1384823e3f20aa1a2} - - -Initializes the parser engine. \ No newline at end of file diff --git a/main/minimime/mm-docs/latex/mm__util_8c.tex b/main/minimime/mm-docs/latex/mm__util_8c.tex deleted file mode 100644 index 929efe9bcf..0000000000 --- a/main/minimime/mm-docs/latex/mm__util_8c.tex +++ /dev/null @@ -1,38 +0,0 @@ -\section{mm\_\-util.c File Reference} -\label{mm__util_8c}\index{mm_util.c@{mm\_\-util.c}} -{\tt \#include $<$stdio.h$>$}\par -{\tt \#include $<$stdlib.h$>$}\par -{\tt \#include $<$string.h$>$}\par -{\tt \#include $<$time.h$>$}\par -{\tt \#include $<$assert.h$>$}\par -{\tt \#include \char`\"{}mm\_\-internal.h\char`\"{}}\par -\subsection*{Functions} -\begin{CompactItemize} -\item -void $\ast$ {\bf xmalloc} (size\_\-t size) -\item -void $\ast$ {\bf xrealloc} (void $\ast$p, size\_\-t size) -\item -char $\ast$ \textbf{xstrdup} (const char $\ast$str)\label{mm__util_8c_700bf3013e33311eacdd1f20d13bdc9a} - -\item -void \textbf{xfree} (void $\ast$p)\label{mm__util_8c_91fc771d8aa78ca2ac43244c491da52d} - -\item -char $\ast$ {\bf mm\_\-unquote} (const char $\ast$string) -\item -char $\ast$ {\bf mm\_\-uncomment} (const char $\ast$string) -\item -char $\ast$ {\bf xstrsep} (char $\ast$$\ast$stringp, const char $\ast$delim) -\item -char $\ast$ {\bf mm\_\-stripchars} (char $\ast$input, char $\ast$strip) -\item -char $\ast$ {\bf mm\_\-addchars} (char $\ast$input, char $\ast$add, u\_\-int16\_\-t linelength) -\item -void \textbf{mm\_\-striptrailing} (char $\ast$$\ast$what, const char $\ast$charset)\label{mm__util_8c_a965d3d1c625253beffd53051b38548e} - -\end{CompactItemize} - - -\subsection{Detailed Description} -This module contains utility functions for the Mini\-MIME library \ No newline at end of file diff --git a/main/minimime/mm-docs/latex/modules.tex b/main/minimime/mm-docs/latex/modules.tex deleted file mode 100644 index 95e134be32..0000000000 --- a/main/minimime/mm-docs/latex/modules.tex +++ /dev/null @@ -1,12 +0,0 @@ -\section{Mini\-MIME Modules} -Here is a list of all modules:\begin{CompactList} -\item \contentsline{section}{Manipulating Mini\-MIME codecs}{\pageref{group__codecs}}{} -\item \contentsline{section}{Accessing and manipulating Content-Type objects}{\pageref{group__contenttype}}{} -\item \contentsline{section}{Accessing and manipulating MIME contexts}{\pageref{group__context}}{} -\item \contentsline{section}{Accessing and manipulating a message's envelope}{\pageref{group__envelope}}{} -\item \contentsline{section}{Mini\-MIME error functions}{\pageref{group__error}}{} -\item \contentsline{section}{Accessing and manipulating MIME parts}{\pageref{group__mimepart}}{} -\item \contentsline{section}{MIME related utility functions}{\pageref{group__mimeutil}}{} -\item \contentsline{section}{Accessing and manipulating MIME parameters}{\pageref{group__param}}{} -\item \contentsline{section}{General purpose utility functions}{\pageref{group__util}}{} -\end{CompactList} diff --git a/main/minimime/mm-docs/latex/pages.tex b/main/minimime/mm-docs/latex/pages.tex deleted file mode 100644 index 9fdec66bc0..0000000000 --- a/main/minimime/mm-docs/latex/pages.tex +++ /dev/null @@ -1,5 +0,0 @@ -\section{Mini\-MIME Related Pages} -Here is a list of all related documentation pages:\begin{CompactList} -\item \contentsline{section}{Bug List}{\pageref{bug}}{} - -\end{CompactList} diff --git a/main/minimime/mm-docs/latex/refman.tex b/main/minimime/mm-docs/latex/refman.tex deleted file mode 100644 index 0346dcdc7d..0000000000 --- a/main/minimime/mm-docs/latex/refman.tex +++ /dev/null @@ -1,62 +0,0 @@ -\documentclass[a4paper]{book} -\usepackage{a4wide} -\usepackage{makeidx} -\usepackage{fancyhdr} -\usepackage{graphicx} -\usepackage{multicol} -\usepackage{float} -\usepackage{textcomp} -\usepackage{alltt} -\usepackage{doxygen} -\makeindex -\setcounter{tocdepth}{1} -\renewcommand{\footrulewidth}{0.4pt} -\begin{document} -\begin{titlepage} -\vspace*{7cm} -\begin{center} -{\Large Mini\-MIME Reference Manual}\\ -\vspace*{1cm} -{\large Generated by Doxygen 1.5.1}\\ -\vspace*{0.5cm} -{\small Thu Mar 29 17:59:08 2007}\\ -\end{center} -\end{titlepage} -\clearemptydoublepage -\pagenumbering{roman} -\tableofcontents -\clearemptydoublepage -\pagenumbering{arabic} -\chapter{Mini\-MIME Module Index} -\input{modules} -\chapter{Mini\-MIME File Index} -\input{files} -\chapter{Mini\-MIME Page Index} -\input{pages} -\chapter{Mini\-MIME Module Documentation} -\input{group__codecs} -\include{group__contenttype} -\include{group__context} -\include{group__envelope} -\include{group__error} -\include{group__mimepart} -\include{group__mimeutil} -\include{group__param} -\include{group__util} -\chapter{Mini\-MIME File Documentation} -\input{mm__codecs_8c} -\include{mm__contenttype_8c} -\include{mm__context_8c} -\include{mm__envelope_8c} -\include{mm__error_8c} -\include{mm__header_8c} -\include{mm__internal_8h} -\include{mm__mimepart_8c} -\include{mm__mimeutil_8c} -\include{mm__param_8c} -\include{mm__parse_8c} -\include{mm__util_8c} -\chapter{Mini\-MIME Page Documentation} -\input{bug} -\printindex -\end{document} diff --git a/main/minimime/mm-docs/refman.pdf b/main/minimime/mm-docs/refman.pdf deleted file mode 100644 index dc77d05e7a..0000000000 Binary files a/main/minimime/mm-docs/refman.pdf and /dev/null differ diff --git a/main/minimime/mytest_files/ast_postdata b/main/minimime/mytest_files/ast_postdata deleted file mode 100644 index c3776c6f46..0000000000 --- a/main/minimime/mytest_files/ast_postdata +++ /dev/null @@ -1,38 +0,0 @@ -MyHeader1: blah1 -MyHeader2: blah2 -MyHeader3: blah3 -MyHeader4: blah4 -Content-Type: multipart/form-data; boundary=---------------------------175757342718946221771693683144 - ------------------------------175757342718946221771693683144 -Content-Disposition: form-data; name="MAX_FILE_SIZE" - -30000 ------------------------------175757342718946221771693683144 -Content-Disposition: form-data; name="userfile"; filename="BUGS" -Content-Type: application/octet-stream - -Asterisk Bug Tracking Information -================================= - -To learn about and report Asterisk bugs, please visit -the official Asterisk Bug Tracker at: - - http://bugs.digium.com - -For more information on using the bug tracker, or to -learn how you can contribute by acting as a bug marshall -please see: - - http://www.asterisk.org/developers/bug-guidelines - -If you would like to submit a feature request, please -resist the temptation to post it to the bug tracker. -Feature requests should be posted to the asterisk-dev -mailing list, located at: - - http://lists.digium.com - -Thank you! - ------------------------------175757342718946221771693683144-- diff --git a/main/minimime/mytest_files/ast_postdata2 b/main/minimime/mytest_files/ast_postdata2 deleted file mode 100644 index 8f91e7a51b..0000000000 Binary files a/main/minimime/mytest_files/ast_postdata2 and /dev/null differ diff --git a/main/minimime/mytest_files/ast_postdata3.gz b/main/minimime/mytest_files/ast_postdata3.gz deleted file mode 100644 index d8d3894ad3..0000000000 Binary files a/main/minimime/mytest_files/ast_postdata3.gz and /dev/null differ diff --git a/main/minimime/mytest_files/mytest.c b/main/minimime/mytest_files/mytest.c deleted file mode 100644 index ccbeddc853..0000000000 --- a/main/minimime/mytest_files/mytest.c +++ /dev/null @@ -1,71 +0,0 @@ -#include -#include - -#include "mm.h" - -int main(int argc, char *argv[]) -{ - const char *filename = "mytest_files/ast_postdata3"; - MM_CTX *ctx; - struct mm_mimepart *part; - struct mm_content *cont; - - int res = 0; - const char *disp; - int i; - - mm_library_init(); - mm_codec_registerdefaultcodecs(); - - printf("\nThe test should run 2 times with the same results.\n\n"); - - for (i = 0; i < 2; i++) { - printf("\nTest run #%d ...\n", i + 1); - - if (!(ctx = mm_context_new())) { - printf("Failed to create MiniMIME context!\n\n"); - break; - } - - res = mm_parse_file(ctx, filename, MM_PARSE_LOOSE, 0); - if (res == -1) { - printf("Error parsing file %s\n\n", filename); - mm_context_free(ctx); - break; - } - - res = mm_context_countparts(ctx); - if (res != 3) { - printf("This file should have 3 parts, but parser says %d\n\n", res); - res = -1; - mm_context_free(ctx); - break; - } - - /* Part 2 is the file */ - if (!(part = mm_context_getpart(ctx, 2))) { - printf("Failed to get a reference to part 2 of the MIME data\n\n"); - res = -1; - mm_context_free(ctx); - break; - } - - /* This is where the problems are demonstrated. */ - cont = mm_mimepart_getcontent(part); - - if ((disp = mm_content_getdispositiontype(cont))) - printf("SUCCESS: Got the Content-Disposition: %s\n", disp); - else - printf("FAILURE: Could not get the Content-Disposition value!\n"); - - res = mm_mimepart_getlength(part); - if (res == 1279) - printf("SUCCESS: Got the correct value for the body length: %d\n\n", res); - else - printf("FAILURE: The parser says this MIME part has %d length, but it should be 1279\n\n", res); - - mm_context_free(ctx); - } - - exit(res); -} diff --git a/main/minimime/sys/CVS/Entries b/main/minimime/sys/CVS/Entries deleted file mode 100644 index 138d3a245e..0000000000 --- a/main/minimime/sys/CVS/Entries +++ /dev/null @@ -1,2 +0,0 @@ -/mm_queue.h/1.1.1.1/Mon May 3 22:06:00 2004// -D diff --git a/main/minimime/sys/CVS/Repository b/main/minimime/sys/CVS/Repository deleted file mode 100644 index b81e7fdb9d..0000000000 --- a/main/minimime/sys/CVS/Repository +++ /dev/null @@ -1 +0,0 @@ -minimime/src/sys diff --git a/main/minimime/sys/CVS/Root b/main/minimime/sys/CVS/Root deleted file mode 100644 index 4c379009cb..0000000000 --- a/main/minimime/sys/CVS/Root +++ /dev/null @@ -1 +0,0 @@ -:pserver:anonymous@cvs.minimime.berlios.de:/cvsroot/minimime diff --git a/main/minimime/test/CVS/Entries b/main/minimime/test/CVS/Entries deleted file mode 100644 index 1784810501..0000000000 --- a/main/minimime/test/CVS/Entries +++ /dev/null @@ -1 +0,0 @@ -D diff --git a/main/minimime/test/CVS/Repository b/main/minimime/test/CVS/Repository deleted file mode 100644 index c4c9417ccf..0000000000 --- a/main/minimime/test/CVS/Repository +++ /dev/null @@ -1 +0,0 @@ -minimime/src/test diff --git a/main/minimime/test/CVS/Root b/main/minimime/test/CVS/Root deleted file mode 100644 index 4c379009cb..0000000000 --- a/main/minimime/test/CVS/Root +++ /dev/null @@ -1 +0,0 @@ -:pserver:anonymous@cvs.minimime.berlios.de:/cvsroot/minimime