You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
asterisk/main/minimime/mm-docs/html/group__param.html

274 lines
13 KiB

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html><head><meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1">
<title>MiniMIME: Accessing and manipulating MIME parameters</title>
<link href="doxygen.css" rel="stylesheet" type="text/css">
<link href="tabs.css" rel="stylesheet" type="text/css">
</head><body>
<!-- Generated by Doxygen 1.5.1 -->
<div class="tabs">
<ul>
<li><a href="index.html"><span>Main&nbsp;Page</span></a></li>
<li><a href="modules.html"><span>Modules</span></a></li>
<li><a href="files.html"><span>Files</span></a></li>
<li><a href="pages.html"><span>Related&nbsp;Pages</span></a></li>
</ul></div>
<h1>Accessing and manipulating MIME parameters</h1><table border="0" cellpadding="0" cellspacing="0">
<tr><td></td></tr>
<tr><td colspan="2"><br><h2>Functions for manipulating MIME parameters</h2></td></tr>
<tr><td colspan="2">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</em>. 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.<p>
Each MIME header may hold an arbitrary amount of such parameters, which are delimeted by each other with a semicolon. <br><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">mm_param *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__param.html#gd3ac756551bf5a29a07d5992bfdbde09">mm_param_new</a> (void)</td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__param.html#g46339038e995799e6a3e37512f442fc9">mm_param_free</a> (struct mm_param *param)</td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">mm_param *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__param.html#gd3970def45b8bede334f4b89a41dec15">mm_param_generate</a> (const char *name, const char *value)</td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">char *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__param.html#g2a266c63c7e89cf829b2af8e995e55e8">mm_param_setname</a> (struct mm_param *param, const char *name, int copy)</td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">char *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__param.html#gca3e636ab5700462eb32ca5bc19e4cc6">mm_param_setvalue</a> (struct mm_param *param, const char *value, int copy)</td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">const char *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__param.html#g0e0ddccf47a2b1e0ad5bcc52c7b39753">mm_param_getname</a> (struct mm_param *param)</td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">const char *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__param.html#g3c6f8cddd409de3000c31584e140561e">mm_param_getvalue</a> (struct mm_param *param)</td></tr>
</table>
<hr><h2>Function Documentation</h2>
<a class="anchor" name="g46339038e995799e6a3e37512f442fc9"></a><!-- doxytag: member="mm_param.c::mm_param_free" ref="g46339038e995799e6a3e37512f442fc9" args="(struct mm_param *param)" -->
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">void mm_param_free </td>
<td>(</td>
<td class="paramtype">struct mm_param *&nbsp;</td>
<td class="paramname"> <em>param</em> </td>
<td>&nbsp;)&nbsp;</td>
<td width="100%"></td>
</tr>
</table>
</div>
<div class="memdoc">
<p>
Releases all memory associated with a MIME parameter object.<p>
<dl compact><dt><b>Parameters:</b></dt><dd>
<table border="0" cellspacing="2" cellpadding="0">
<tr><td valign="top"></td><td valign="top"><em>param</em>&nbsp;</td><td>A valid MIME parameter object to be freed </td></tr>
</table>
</dl>
<dl class="return" compact><dt><b>Returns:</b></dt><dd>Nothing </dd></dl>
<dl class="see" compact><dt><b>See also:</b></dt><dd><a class="el" href="group__param.html#gd3ac756551bf5a29a07d5992bfdbde09">mm_param_new</a> </dd></dl>
</div>
</div><p>
<a class="anchor" name="gd3970def45b8bede334f4b89a41dec15"></a><!-- doxytag: member="mm_param.c::mm_param_generate" ref="gd3970def45b8bede334f4b89a41dec15" args="(const char *name, const char *value)" -->
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">struct mm_param* mm_param_generate </td>
<td>(</td>
<td class="paramtype">const char *&nbsp;</td>
<td class="paramname"> <em>name</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">const char *&nbsp;</td>
<td class="paramname"> <em>value</em></td><td>&nbsp;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td><td width="100%"></td>
</tr>
</table>
</div>
<div class="memdoc">
<p>
Generates a new Content-Type parameter with the given name and value<p>
<dl compact><dt><b>Parameters:</b></dt><dd>
<table border="0" cellspacing="2" cellpadding="0">
<tr><td valign="top"></td><td valign="top"><em>name</em>&nbsp;</td><td>The name of the MIME parameter </td></tr>
<tr><td valign="top"></td><td valign="top"><em>value</em>&nbsp;</td><td>The value of the MIME parameter </td></tr>
</table>
</dl>
<dl class="return" compact><dt><b>Returns:</b></dt><dd>A new MIME parameter object </dd></dl>
<dl class="see" compact><dt><b>See also:</b></dt><dd><a class="el" href="group__param.html#g46339038e995799e6a3e37512f442fc9">mm_param_free</a> <p>
<a class="el" href="group__param.html#gd3ac756551bf5a29a07d5992bfdbde09">mm_param_new</a></dd></dl>
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.
</div>
</div><p>
<a class="anchor" name="g0e0ddccf47a2b1e0ad5bcc52c7b39753"></a><!-- doxytag: member="mm_param.c::mm_param_getname" ref="g0e0ddccf47a2b1e0ad5bcc52c7b39753" args="(struct mm_param *param)" -->
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">const char* mm_param_getname </td>
<td>(</td>
<td class="paramtype">struct mm_param *&nbsp;</td>
<td class="paramname"> <em>param</em> </td>
<td>&nbsp;)&nbsp;</td>
<td width="100%"></td>
</tr>
</table>
</div>
<div class="memdoc">
<p>
Gets the name of a MIME parameter object<p>
<dl compact><dt><b>Parameters:</b></dt><dd>
<table border="0" cellspacing="2" cellpadding="0">
<tr><td valign="top"></td><td valign="top"><em>param</em>&nbsp;</td><td>A valid MIME parameter object </td></tr>
</table>
</dl>
<dl class="return" compact><dt><b>Returns:</b></dt><dd>The name of the MIME parameter </dd></dl>
</div>
</div><p>
<a class="anchor" name="g3c6f8cddd409de3000c31584e140561e"></a><!-- doxytag: member="mm_param.c::mm_param_getvalue" ref="g3c6f8cddd409de3000c31584e140561e" args="(struct mm_param *param)" -->
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">const char* mm_param_getvalue </td>
<td>(</td>
<td class="paramtype">struct mm_param *&nbsp;</td>
<td class="paramname"> <em>param</em> </td>
<td>&nbsp;)&nbsp;</td>
<td width="100%"></td>
</tr>
</table>
</div>
<div class="memdoc">
<p>
Gets the value of a MIME parameter object<p>
<dl compact><dt><b>Parameters:</b></dt><dd>
<table border="0" cellspacing="2" cellpadding="0">
<tr><td valign="top"></td><td valign="top"><em>param</em>&nbsp;</td><td>A valid MIME parameter object </td></tr>
</table>
</dl>
<dl class="return" compact><dt><b>Returns:</b></dt><dd>The value of the MIME parameter </dd></dl>
</div>
</div><p>
<a class="anchor" name="gd3ac756551bf5a29a07d5992bfdbde09"></a><!-- doxytag: member="mm_param.c::mm_param_new" ref="gd3ac756551bf5a29a07d5992bfdbde09" args="(void)" -->
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">struct mm_param* mm_param_new </td>
<td>(</td>
<td class="paramtype">void&nbsp;</td>
<td class="paramname"> </td>
<td>&nbsp;)&nbsp;</td>
<td width="100%"></td>
</tr>
</table>
</div>
<div class="memdoc">
<p>
Creates a new object to hold a MIME parameter.<p>
<dl class="return" compact><dt><b>Returns:</b></dt><dd>An object representing a MIME parameter </dd></dl>
<dl class="see" compact><dt><b>See also:</b></dt><dd><a class="el" href="group__param.html#g46339038e995799e6a3e37512f442fc9">mm_param_free</a> </dd></dl>
<dl class="note" compact><dt><b>Note:</b></dt><dd>The allocated memory must later be freed using <a class="el" href="group__param.html#g46339038e995799e6a3e37512f442fc9">mm_param_free()</a> </dd></dl>
</div>
</div><p>
<a class="anchor" name="g2a266c63c7e89cf829b2af8e995e55e8"></a><!-- doxytag: member="mm_param.c::mm_param_setname" ref="g2a266c63c7e89cf829b2af8e995e55e8" args="(struct mm_param *param, const char *name, int copy)" -->
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">char* mm_param_setname </td>
<td>(</td>
<td class="paramtype">struct mm_param *&nbsp;</td>
<td class="paramname"> <em>param</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">const char *&nbsp;</td>
<td class="paramname"> <em>name</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">int&nbsp;</td>
<td class="paramname"> <em>copy</em></td><td>&nbsp;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td><td width="100%"></td>
</tr>
</table>
</div>
<div class="memdoc">
<p>
Sets the name of the given MIME parameter<p>
<dl compact><dt><b>Parameters:</b></dt><dd>
<table border="0" cellspacing="2" cellpadding="0">
<tr><td valign="top"></td><td valign="top"><em>param</em>&nbsp;</td><td>A valid MIME parameter object </td></tr>
<tr><td valign="top"></td><td valign="top"><em>name</em>&nbsp;</td><td>The new name of the parameter </td></tr>
<tr><td valign="top"></td><td valign="top"><em>copy</em>&nbsp;</td><td>If set to &gt; 0, copy the value stored in name </td></tr>
</table>
</dl>
<dl class="return" compact><dt><b>Returns:</b></dt><dd>The address of the previous name for passing to free() </dd></dl>
</div>
</div><p>
<a class="anchor" name="gca3e636ab5700462eb32ca5bc19e4cc6"></a><!-- doxytag: member="mm_param.c::mm_param_setvalue" ref="gca3e636ab5700462eb32ca5bc19e4cc6" args="(struct mm_param *param, const char *value, int copy)" -->
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">char* mm_param_setvalue </td>
<td>(</td>
<td class="paramtype">struct mm_param *&nbsp;</td>
<td class="paramname"> <em>param</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">const char *&nbsp;</td>
<td class="paramname"> <em>value</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">int&nbsp;</td>
<td class="paramname"> <em>copy</em></td><td>&nbsp;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td><td width="100%"></td>
</tr>
</table>
</div>
<div class="memdoc">
<p>
Sets the value of the given MIME parameter<p>
<dl compact><dt><b>Parameters:</b></dt><dd>
<table border="0" cellspacing="2" cellpadding="0">
<tr><td valign="top"></td><td valign="top"><em>param</em>&nbsp;</td><td>A valid MIME parameter object </td></tr>
<tr><td valign="top"></td><td valign="top"><em>name</em>&nbsp;</td><td>The new value for the parameter </td></tr>
<tr><td valign="top"></td><td valign="top"><em>copy</em>&nbsp;</td><td>If set to &gt; 0, copy the value stored in value </td></tr>
</table>
</dl>
<dl class="return" compact><dt><b>Returns:</b></dt><dd>The address of the previous value for passing to free() </dd></dl>
</div>
</div><p>
<hr size="1"><address style="align: right;"><small>Generated on Thu Mar 29 17:59:09 2007 for MiniMIME by&nbsp;
<a href="http://www.doxygen.org/index.html">
<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.5.1 </small></address>
</body>
</html>