Initialize the gmime for upstream
[platform/upstream/gmime.git] / docs / reference / html / gmime-gmime-utils.html
1 <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
2 <html>
3 <head>
4 <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
5 <title>gmime-utils</title>
6 <meta name="generator" content="DocBook XSL Stylesheets V1.76.1">
7 <link rel="home" href="index.html" title="GMime 2.6 Reference Manual">
8 <link rel="up" href="core.html" title="Part III. GMime Core Reference">
9 <link rel="prev" href="gmime-gmime-encodings.html" title="gmime-encodings">
10 <link rel="next" href="classes.html" title="Part IV. GMime Classes">
11 <meta name="generator" content="GTK-Doc V1.18 (XML mode)">
12 <link rel="stylesheet" href="style.css" type="text/css">
13 </head>
14 <body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
15 <table class="navigation" id="top" width="100%" summary="Navigation header" cellpadding="2" cellspacing="2">
16 <tr valign="middle">
17 <td><a accesskey="p" href="gmime-gmime-encodings.html"><img src="left.png" width="24" height="24" border="0" alt="Prev"></a></td>
18 <td><a accesskey="u" href="core.html"><img src="up.png" width="24" height="24" border="0" alt="Up"></a></td>
19 <td><a accesskey="h" href="index.html"><img src="home.png" width="24" height="24" border="0" alt="Home"></a></td>
20 <th width="100%" align="center">GMime 2.6 Reference Manual</th>
21 <td><a accesskey="n" href="classes.html"><img src="right.png" width="24" height="24" border="0" alt="Next"></a></td>
22 </tr>
23 <tr><td colspan="5" class="shortcuts">
24 <a href="#gmime-gmime-utils.synopsis" class="shortcut">Top</a>
25                    | 
26                   <a href="#gmime-gmime-utils.description" class="shortcut">Description</a>
27 </td></tr>
28 </table>
29 <div class="refentry">
30 <a name="gmime-gmime-utils"></a><div class="titlepage"></div>
31 <div class="refnamediv"><table width="100%"><tr>
32 <td valign="top">
33 <h2><span class="refentrytitle"><a name="gmime-gmime-utils.top_of_page"></a>gmime-utils</span></h2>
34 <p>gmime-utils — MIME utility functions</p>
35 </td>
36 <td valign="top" align="right"></td>
37 </tr></table></div>
38 <div class="refsynopsisdiv">
39 <a name="gmime-gmime-utils.synopsis"></a><h2>Synopsis</h2>
40 <pre class="synopsis">struct              <a class="link" href="gmime-gmime-utils.html#GMimeReferences" title="struct GMimeReferences">GMimeReferences</a>;
41 <span class="returnvalue">time_t</span>              <a class="link" href="gmime-gmime-utils.html#g-mime-utils-header-decode-date" title="g_mime_utils_header_decode_date ()">g_mime_utils_header_decode_date</a>     (<em class="parameter"><code>const <span class="type">char</span> *str</code></em>,
42                                                          <em class="parameter"><code><span class="type">int</span> *tz_offset</code></em>);
43 <span class="returnvalue">char</span> *              <a class="link" href="gmime-gmime-utils.html#g-mime-utils-header-format-date" title="g_mime_utils_header_format_date ()">g_mime_utils_header_format_date</a>     (<em class="parameter"><code><span class="type">time_t</span> date</code></em>,
44                                                          <em class="parameter"><code><span class="type">int</span> tz_offset</code></em>);
45 <span class="returnvalue">char</span> *              <a class="link" href="gmime-gmime-utils.html#g-mime-utils-generate-message-id" title="g_mime_utils_generate_message_id ()">g_mime_utils_generate_message_id</a>    (<em class="parameter"><code>const <span class="type">char</span> *fqdn</code></em>);
46 <span class="returnvalue">char</span> *              <a class="link" href="gmime-gmime-utils.html#g-mime-utils-decode-message-id" title="g_mime_utils_decode_message_id ()">g_mime_utils_decode_message_id</a>      (<em class="parameter"><code>const <span class="type">char</span> *message_id</code></em>);
47 const <span class="returnvalue">char</span> *        <a class="link" href="gmime-gmime-utils.html#g-mime-references-get-message-id" title="g_mime_references_get_message_id ()">g_mime_references_get_message_id</a>    (<em class="parameter"><code>const <a class="link" href="gmime-gmime-utils.html#GMimeReferences" title="struct GMimeReferences"><span class="type">GMimeReferences</span></a> *ref</code></em>);
48 const <a class="link" href="gmime-gmime-utils.html#GMimeReferences" title="struct GMimeReferences"><span class="returnvalue">GMimeReferences</span></a> * <a class="link" href="gmime-gmime-utils.html#g-mime-references-get-next" title="g_mime_references_get_next ()">g_mime_references_get_next</a>      (<em class="parameter"><code>const <a class="link" href="gmime-gmime-utils.html#GMimeReferences" title="struct GMimeReferences"><span class="type">GMimeReferences</span></a> *ref</code></em>);
49 <a class="link" href="gmime-gmime-utils.html#GMimeReferences" title="struct GMimeReferences"><span class="returnvalue">GMimeReferences</span></a> *   <a class="link" href="gmime-gmime-utils.html#g-mime-references-decode" title="g_mime_references_decode ()">g_mime_references_decode</a>            (<em class="parameter"><code>const <span class="type">char</span> *text</code></em>);
50 <span class="returnvalue">void</span>                <a class="link" href="gmime-gmime-utils.html#g-mime-references-append" title="g_mime_references_append ()">g_mime_references_append</a>            (<em class="parameter"><code><a class="link" href="gmime-gmime-utils.html#GMimeReferences" title="struct GMimeReferences"><span class="type">GMimeReferences</span></a> **refs</code></em>,
51                                                          <em class="parameter"><code>const <span class="type">char</span> *msgid</code></em>);
52 <span class="returnvalue">void</span>                <a class="link" href="gmime-gmime-utils.html#g-mime-references-clear" title="g_mime_references_clear ()">g_mime_references_clear</a>             (<em class="parameter"><code><a class="link" href="gmime-gmime-utils.html#GMimeReferences" title="struct GMimeReferences"><span class="type">GMimeReferences</span></a> **refs</code></em>);
53 <span class="returnvalue">void</span>                <a class="link" href="gmime-gmime-utils.html#g-mime-references-free" title="g_mime_references_free ()">g_mime_references_free</a>              (<em class="parameter"><code><a class="link" href="gmime-gmime-utils.html#GMimeReferences" title="struct GMimeReferences"><span class="type">GMimeReferences</span></a> *refs</code></em>);
54 <span class="returnvalue">char</span> *              <a class="link" href="gmime-gmime-utils.html#g-mime-utils-header-fold" title="g_mime_utils_header_fold ()">g_mime_utils_header_fold</a>            (<em class="parameter"><code>const <span class="type">char</span> *str</code></em>);
55 <span class="returnvalue">char</span> *              <a class="link" href="gmime-gmime-utils.html#g-mime-utils-header-printf" title="g_mime_utils_header_printf ()">g_mime_utils_header_printf</a>          (<em class="parameter"><code>const <span class="type">char</span> *format</code></em>,
56                                                          <em class="parameter"><code>...</code></em>);
57 <span class="returnvalue">char</span> *              <a class="link" href="gmime-gmime-utils.html#g-mime-utils-quote-string" title="g_mime_utils_quote_string ()">g_mime_utils_quote_string</a>           (<em class="parameter"><code>const <span class="type">char</span> *str</code></em>);
58 <span class="returnvalue">void</span>                <a class="link" href="gmime-gmime-utils.html#g-mime-utils-unquote-string" title="g_mime_utils_unquote_string ()">g_mime_utils_unquote_string</a>         (<em class="parameter"><code><span class="type">char</span> *str</code></em>);
59 <span class="returnvalue">gboolean</span>            <a class="link" href="gmime-gmime-utils.html#g-mime-utils-text-is-8bit" title="g_mime_utils_text_is_8bit ()">g_mime_utils_text_is_8bit</a>           (<em class="parameter"><code>const unsigned <span class="type">char</span> *text</code></em>,
60                                                          <em class="parameter"><code><span class="type">size_t</span> len</code></em>);
61 <a class="link" href="gmime-gmime-encodings.html#GMimeContentEncoding" title="enum GMimeContentEncoding"><span class="returnvalue">GMimeContentEncoding</span></a> <a class="link" href="gmime-gmime-utils.html#g-mime-utils-best-encoding" title="g_mime_utils_best_encoding ()">g_mime_utils_best_encoding</a>         (<em class="parameter"><code>const unsigned <span class="type">char</span> *text</code></em>,
62                                                          <em class="parameter"><code><span class="type">size_t</span> len</code></em>);
63 <span class="returnvalue">char</span> *              <a class="link" href="gmime-gmime-utils.html#g-mime-utils-decode-8bit" title="g_mime_utils_decode_8bit ()">g_mime_utils_decode_8bit</a>            (<em class="parameter"><code>const <span class="type">char</span> *text</code></em>,
64                                                          <em class="parameter"><code><span class="type">size_t</span> len</code></em>);
65 <span class="returnvalue">char</span> *              <a class="link" href="gmime-gmime-utils.html#g-mime-utils-header-decode-text" title="g_mime_utils_header_decode_text ()">g_mime_utils_header_decode_text</a>     (<em class="parameter"><code>const <span class="type">char</span> *text</code></em>);
66 <span class="returnvalue">char</span> *              <a class="link" href="gmime-gmime-utils.html#g-mime-utils-header-encode-text" title="g_mime_utils_header_encode_text ()">g_mime_utils_header_encode_text</a>     (<em class="parameter"><code>const <span class="type">char</span> *text</code></em>);
67 <span class="returnvalue">char</span> *              <a class="link" href="gmime-gmime-utils.html#g-mime-utils-header-decode-phrase" title="g_mime_utils_header_decode_phrase ()">g_mime_utils_header_decode_phrase</a>   (<em class="parameter"><code>const <span class="type">char</span> *phrase</code></em>);
68 <span class="returnvalue">char</span> *              <a class="link" href="gmime-gmime-utils.html#g-mime-utils-header-encode-phrase" title="g_mime_utils_header_encode_phrase ()">g_mime_utils_header_encode_phrase</a>   (<em class="parameter"><code>const <span class="type">char</span> *phrase</code></em>);
69 <span class="returnvalue">char</span> *              <a class="link" href="gmime-gmime-utils.html#g-mime-utils-structured-header-fold" title="g_mime_utils_structured_header_fold ()">g_mime_utils_structured_header_fold</a> (<em class="parameter"><code>const <span class="type">char</span> *str</code></em>);
70 <span class="returnvalue">char</span> *              <a class="link" href="gmime-gmime-utils.html#g-mime-utils-unstructured-header-fold" title="g_mime_utils_unstructured_header_fold ()">g_mime_utils_unstructured_header_fold</a>
71                                                         (<em class="parameter"><code>const <span class="type">char</span> *str</code></em>);
72 </pre>
73 </div>
74 <div class="refsect1">
75 <a name="gmime-gmime-utils.description"></a><h2>Description</h2>
76 <p>
77 Utility functions to parse, encode and decode various MIME tokens
78 and encodings.
79 </p>
80 </div>
81 <div class="refsect1">
82 <a name="gmime-gmime-utils.details"></a><h2>Details</h2>
83 <div class="refsect2">
84 <a name="GMimeReferences"></a><h3>struct GMimeReferences</h3>
85 <pre class="programlisting">struct GMimeReferences {
86         GMimeReferences *next;
87         char *msgid;
88 };
89 </pre>
90 <p>
91 A List of references, as per the References or In-Reply-To header
92 fields.
93 </p>
94 <div class="variablelist"><table border="0">
95 <col align="left" valign="top">
96 <tbody>
97 <tr>
98 <td><p><span class="term"><a class="link" href="gmime-gmime-utils.html#GMimeReferences" title="struct GMimeReferences"><span class="type">GMimeReferences</span></a> *<em class="structfield"><code><a name="GMimeReferences.next"></a>next</code></em>;</span></p></td>
99 <td>Pointer to the next reference.</td>
100 </tr>
101 <tr>
102 <td><p><span class="term"><span class="type">char</span> *<em class="structfield"><code><a name="GMimeReferences.msgid"></a>msgid</code></em>;</span></p></td>
103 <td>Reference message-id.</td>
104 </tr>
105 </tbody>
106 </table></div>
107 </div>
108 <hr>
109 <div class="refsect2">
110 <a name="g-mime-utils-header-decode-date"></a><h3>g_mime_utils_header_decode_date ()</h3>
111 <pre class="programlisting"><span class="returnvalue">time_t</span>              g_mime_utils_header_decode_date     (<em class="parameter"><code>const <span class="type">char</span> *str</code></em>,
112                                                          <em class="parameter"><code><span class="type">int</span> *tz_offset</code></em>);</pre>
113 <p>
114 Decodes the rfc822 date string and saves the GMT offset into
115 <em class="parameter"><code>tz_offset</code></em> if non-NULL.
116 </p>
117 <div class="variablelist"><table border="0">
118 <col align="left" valign="top">
119 <tbody>
120 <tr>
121 <td><p><span class="term"><em class="parameter"><code>str</code></em> :</span></p></td>
122 <td>input date string</td>
123 </tr>
124 <tr>
125 <td><p><span class="term"><em class="parameter"><code>tz_offset</code></em> :</span></p></td>
126 <td>timezone offset</td>
127 </tr>
128 <tr>
129 <td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
130 <td>the time_t representation of the date string specified by
131 <em class="parameter"><code>str</code></em> or (time_t) <code class="literal">0</code> on error. If <em class="parameter"><code>tz_offset</code></em> is non-NULL, the value
132 of the timezone offset will be stored.</td>
133 </tr>
134 </tbody>
135 </table></div>
136 </div>
137 <hr>
138 <div class="refsect2">
139 <a name="g-mime-utils-header-format-date"></a><h3>g_mime_utils_header_format_date ()</h3>
140 <pre class="programlisting"><span class="returnvalue">char</span> *              g_mime_utils_header_format_date     (<em class="parameter"><code><span class="type">time_t</span> date</code></em>,
141                                                          <em class="parameter"><code><span class="type">int</span> tz_offset</code></em>);</pre>
142 <p>
143 Allocates a string buffer containing the rfc822 formatted date
144 string represented by <em class="parameter"><code>time</code></em> and <em class="parameter"><code>tz_offset</code></em>.
145 </p>
146 <div class="variablelist"><table border="0">
147 <col align="left" valign="top">
148 <tbody>
149 <tr>
150 <td><p><span class="term"><em class="parameter"><code>date</code></em> :</span></p></td>
151 <td>time_t date representation</td>
152 </tr>
153 <tr>
154 <td><p><span class="term"><em class="parameter"><code>tz_offset</code></em> :</span></p></td>
155 <td>Timezone offset</td>
156 </tr>
157 <tr>
158 <td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
159 <td>a valid string representation of the date.</td>
160 </tr>
161 </tbody>
162 </table></div>
163 </div>
164 <hr>
165 <div class="refsect2">
166 <a name="g-mime-utils-generate-message-id"></a><h3>g_mime_utils_generate_message_id ()</h3>
167 <pre class="programlisting"><span class="returnvalue">char</span> *              g_mime_utils_generate_message_id    (<em class="parameter"><code>const <span class="type">char</span> *fqdn</code></em>);</pre>
168 <p>
169 Generates a unique Message-Id.
170 </p>
171 <div class="variablelist"><table border="0">
172 <col align="left" valign="top">
173 <tbody>
174 <tr>
175 <td><p><span class="term"><em class="parameter"><code>fqdn</code></em> :</span></p></td>
176 <td>Fully qualified domain name</td>
177 </tr>
178 <tr>
179 <td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
180 <td>a unique string in an addr-spec format suitable for use as
181 a Message-Id.</td>
182 </tr>
183 </tbody>
184 </table></div>
185 </div>
186 <hr>
187 <div class="refsect2">
188 <a name="g-mime-utils-decode-message-id"></a><h3>g_mime_utils_decode_message_id ()</h3>
189 <pre class="programlisting"><span class="returnvalue">char</span> *              g_mime_utils_decode_message_id      (<em class="parameter"><code>const <span class="type">char</span> *message_id</code></em>);</pre>
190 <p>
191 Decodes a msg-id as defined by rfc822.
192 </p>
193 <div class="variablelist"><table border="0">
194 <col align="left" valign="top">
195 <tbody>
196 <tr>
197 <td><p><span class="term"><em class="parameter"><code>message_id</code></em> :</span></p></td>
198 <td>string containing a message-id</td>
199 </tr>
200 <tr>
201 <td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
202 <td>the addr-spec portion of the msg-id.</td>
203 </tr>
204 </tbody>
205 </table></div>
206 </div>
207 <hr>
208 <div class="refsect2">
209 <a name="g-mime-references-get-message-id"></a><h3>g_mime_references_get_message_id ()</h3>
210 <pre class="programlisting">const <span class="returnvalue">char</span> *        g_mime_references_get_message_id    (<em class="parameter"><code>const <a class="link" href="gmime-gmime-utils.html#GMimeReferences" title="struct GMimeReferences"><span class="type">GMimeReferences</span></a> *ref</code></em>);</pre>
211 <p>
212 Gets the Message-Id reference from the <a class="link" href="gmime-gmime-utils.html#GMimeReferences" title="struct GMimeReferences"><span class="type">GMimeReferences</span></a> node.
213 </p>
214 <div class="variablelist"><table border="0">
215 <col align="left" valign="top">
216 <tbody>
217 <tr>
218 <td><p><span class="term"><em class="parameter"><code>ref</code></em> :</span></p></td>
219 <td>a <a class="link" href="gmime-gmime-utils.html#GMimeReferences" title="struct GMimeReferences"><span class="type">GMimeReferences</span></a> list</td>
220 </tr>
221 <tr>
222 <td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
223 <td>the Message-Id reference from the <a class="link" href="gmime-gmime-utils.html#GMimeReferences" title="struct GMimeReferences"><span class="type">GMimeReferences</span></a> node.</td>
224 </tr>
225 </tbody>
226 </table></div>
227 </div>
228 <hr>
229 <div class="refsect2">
230 <a name="g-mime-references-get-next"></a><h3>g_mime_references_get_next ()</h3>
231 <pre class="programlisting">const <a class="link" href="gmime-gmime-utils.html#GMimeReferences" title="struct GMimeReferences"><span class="returnvalue">GMimeReferences</span></a> * g_mime_references_get_next      (<em class="parameter"><code>const <a class="link" href="gmime-gmime-utils.html#GMimeReferences" title="struct GMimeReferences"><span class="type">GMimeReferences</span></a> *ref</code></em>);</pre>
232 <p>
233 Advances to the next reference node in the <a class="link" href="gmime-gmime-utils.html#GMimeReferences" title="struct GMimeReferences"><span class="type">GMimeReferences</span></a> list.
234 </p>
235 <div class="variablelist"><table border="0">
236 <col align="left" valign="top">
237 <tbody>
238 <tr>
239 <td><p><span class="term"><em class="parameter"><code>ref</code></em> :</span></p></td>
240 <td>a <a class="link" href="gmime-gmime-utils.html#GMimeReferences" title="struct GMimeReferences"><span class="type">GMimeReferences</span></a> list</td>
241 </tr>
242 <tr>
243 <td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
244 <td>the next reference node in the <a class="link" href="gmime-gmime-utils.html#GMimeReferences" title="struct GMimeReferences"><span class="type">GMimeReferences</span></a> list.</td>
245 </tr>
246 </tbody>
247 </table></div>
248 </div>
249 <hr>
250 <div class="refsect2">
251 <a name="g-mime-references-decode"></a><h3>g_mime_references_decode ()</h3>
252 <pre class="programlisting"><a class="link" href="gmime-gmime-utils.html#GMimeReferences" title="struct GMimeReferences"><span class="returnvalue">GMimeReferences</span></a> *   g_mime_references_decode            (<em class="parameter"><code>const <span class="type">char</span> *text</code></em>);</pre>
253 <p>
254 Decodes a list of msg-ids as in the References and/or In-Reply-To
255 headers defined in rfc822.
256 </p>
257 <div class="variablelist"><table border="0">
258 <col align="left" valign="top">
259 <tbody>
260 <tr>
261 <td><p><span class="term"><em class="parameter"><code>text</code></em> :</span></p></td>
262 <td>string containing a list of msg-ids</td>
263 </tr>
264 <tr>
265 <td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
266 <td>a list of referenced msg-ids.</td>
267 </tr>
268 </tbody>
269 </table></div>
270 </div>
271 <hr>
272 <div class="refsect2">
273 <a name="g-mime-references-append"></a><h3>g_mime_references_append ()</h3>
274 <pre class="programlisting"><span class="returnvalue">void</span>                g_mime_references_append            (<em class="parameter"><code><a class="link" href="gmime-gmime-utils.html#GMimeReferences" title="struct GMimeReferences"><span class="type">GMimeReferences</span></a> **refs</code></em>,
275                                                          <em class="parameter"><code>const <span class="type">char</span> *msgid</code></em>);</pre>
276 <p>
277 Appends a reference to msgid to the list of references.
278 </p>
279 <div class="variablelist"><table border="0">
280 <col align="left" valign="top">
281 <tbody>
282 <tr>
283 <td><p><span class="term"><em class="parameter"><code>refs</code></em> :</span></p></td>
284 <td>the address of a <a class="link" href="gmime-gmime-utils.html#GMimeReferences" title="struct GMimeReferences"><span class="type">GMimeReferences</span></a> list</td>
285 </tr>
286 <tr>
287 <td><p><span class="term"><em class="parameter"><code>msgid</code></em> :</span></p></td>
288 <td>a message-id string</td>
289 </tr>
290 </tbody>
291 </table></div>
292 </div>
293 <hr>
294 <div class="refsect2">
295 <a name="g-mime-references-clear"></a><h3>g_mime_references_clear ()</h3>
296 <pre class="programlisting"><span class="returnvalue">void</span>                g_mime_references_clear             (<em class="parameter"><code><a class="link" href="gmime-gmime-utils.html#GMimeReferences" title="struct GMimeReferences"><span class="type">GMimeReferences</span></a> **refs</code></em>);</pre>
297 <p>
298 Clears the <a class="link" href="gmime-gmime-utils.html#GMimeReferences" title="struct GMimeReferences"><span class="type">GMimeReferences</span></a> list and resets it to <code class="literal">NULL</code>.
299 </p>
300 <div class="variablelist"><table border="0">
301 <col align="left" valign="top">
302 <tbody><tr>
303 <td><p><span class="term"><em class="parameter"><code>refs</code></em> :</span></p></td>
304 <td>address of a <a class="link" href="gmime-gmime-utils.html#GMimeReferences" title="struct GMimeReferences"><span class="type">GMimeReferences</span></a> list</td>
305 </tr></tbody>
306 </table></div>
307 </div>
308 <hr>
309 <div class="refsect2">
310 <a name="g-mime-references-free"></a><h3>g_mime_references_free ()</h3>
311 <pre class="programlisting"><span class="returnvalue">void</span>                g_mime_references_free              (<em class="parameter"><code><a class="link" href="gmime-gmime-utils.html#GMimeReferences" title="struct GMimeReferences"><span class="type">GMimeReferences</span></a> *refs</code></em>);</pre>
312 <p>
313 Frees the <a class="link" href="gmime-gmime-utils.html#GMimeReferences" title="struct GMimeReferences"><span class="type">GMimeReferences</span></a> list.
314 </p>
315 <div class="variablelist"><table border="0">
316 <col align="left" valign="top">
317 <tbody><tr>
318 <td><p><span class="term"><em class="parameter"><code>refs</code></em> :</span></p></td>
319 <td>a <a class="link" href="gmime-gmime-utils.html#GMimeReferences" title="struct GMimeReferences"><span class="type">GMimeReferences</span></a> list</td>
320 </tr></tbody>
321 </table></div>
322 </div>
323 <hr>
324 <div class="refsect2">
325 <a name="g-mime-utils-header-fold"></a><h3>g_mime_utils_header_fold ()</h3>
326 <pre class="programlisting"><span class="returnvalue">char</span> *              g_mime_utils_header_fold            (<em class="parameter"><code>const <span class="type">char</span> *str</code></em>);</pre>
327 <p>
328 Folds a structured header according to the rules in rfc822.
329 </p>
330 <div class="variablelist"><table border="0">
331 <col align="left" valign="top">
332 <tbody>
333 <tr>
334 <td><p><span class="term"><em class="parameter"><code>str</code></em> :</span></p></td>
335 <td>input string</td>
336 </tr>
337 <tr>
338 <td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
339 <td>an allocated string containing the folded header.</td>
340 </tr>
341 </tbody>
342 </table></div>
343 </div>
344 <hr>
345 <div class="refsect2">
346 <a name="g-mime-utils-header-printf"></a><h3>g_mime_utils_header_printf ()</h3>
347 <pre class="programlisting"><span class="returnvalue">char</span> *              g_mime_utils_header_printf          (<em class="parameter"><code>const <span class="type">char</span> *format</code></em>,
348                                                          <em class="parameter"><code>...</code></em>);</pre>
349 <p>
350 Allocates a buffer containing a formatted header specified by the
351 <em class="parameter"><code>Varargs</code></em>.
352 </p>
353 <div class="variablelist"><table border="0">
354 <col align="left" valign="top">
355 <tbody>
356 <tr>
357 <td><p><span class="term"><em class="parameter"><code>format</code></em> :</span></p></td>
358 <td>string format</td>
359 </tr>
360 <tr>
361 <td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
362 <td>an allocated string containing the folded header specified
363 by <em class="parameter"><code>format</code></em> and the following arguments.</td>
364 </tr>
365 </tbody>
366 </table></div>
367 </div>
368 <hr>
369 <div class="refsect2">
370 <a name="g-mime-utils-quote-string"></a><h3>g_mime_utils_quote_string ()</h3>
371 <pre class="programlisting"><span class="returnvalue">char</span> *              g_mime_utils_quote_string           (<em class="parameter"><code>const <span class="type">char</span> *str</code></em>);</pre>
372 <p>
373 Quotes <em class="parameter"><code>string</code></em> as needed according to the rules in rfc2045.
374 </p>
375 <div class="variablelist"><table border="0">
376 <col align="left" valign="top">
377 <tbody>
378 <tr>
379 <td><p><span class="term"><em class="parameter"><code>str</code></em> :</span></p></td>
380 <td>input string</td>
381 </tr>
382 <tr>
383 <td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
384 <td>an allocated string containing the escaped and quoted (if
385 needed to be) input string. The decision to quote the string is
386 based on whether or not the input string contains any 'tspecials'
387 as defined by rfc2045.</td>
388 </tr>
389 </tbody>
390 </table></div>
391 </div>
392 <hr>
393 <div class="refsect2">
394 <a name="g-mime-utils-unquote-string"></a><h3>g_mime_utils_unquote_string ()</h3>
395 <pre class="programlisting"><span class="returnvalue">void</span>                g_mime_utils_unquote_string         (<em class="parameter"><code><span class="type">char</span> *str</code></em>);</pre>
396 <p>
397 Unquotes and unescapes a string.
398 </p>
399 <div class="variablelist"><table border="0">
400 <col align="left" valign="top">
401 <tbody><tr>
402 <td><p><span class="term"><em class="parameter"><code>str</code></em> :</span></p></td>
403 <td>input string</td>
404 </tr></tbody>
405 </table></div>
406 </div>
407 <hr>
408 <div class="refsect2">
409 <a name="g-mime-utils-text-is-8bit"></a><h3>g_mime_utils_text_is_8bit ()</h3>
410 <pre class="programlisting"><span class="returnvalue">gboolean</span>            g_mime_utils_text_is_8bit           (<em class="parameter"><code>const unsigned <span class="type">char</span> *text</code></em>,
411                                                          <em class="parameter"><code><span class="type">size_t</span> len</code></em>);</pre>
412 <p>
413 Determines if <em class="parameter"><code>text</code></em> contains 8bit characters within the first <em class="parameter"><code>len</code></em>
414 bytes.
415 </p>
416 <div class="variablelist"><table border="0">
417 <col align="left" valign="top">
418 <tbody>
419 <tr>
420 <td><p><span class="term"><em class="parameter"><code>text</code></em> :</span></p></td>
421 <td>text to check for 8bit chars</td>
422 </tr>
423 <tr>
424 <td><p><span class="term"><em class="parameter"><code>len</code></em> :</span></p></td>
425 <td>text length</td>
426 </tr>
427 <tr>
428 <td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
429 <td>
430 <code class="literal">TRUE</code> if the text contains 8bit characters or <code class="literal">FALSE</code>
431 otherwise.</td>
432 </tr>
433 </tbody>
434 </table></div>
435 </div>
436 <hr>
437 <div class="refsect2">
438 <a name="g-mime-utils-best-encoding"></a><h3>g_mime_utils_best_encoding ()</h3>
439 <pre class="programlisting"><a class="link" href="gmime-gmime-encodings.html#GMimeContentEncoding" title="enum GMimeContentEncoding"><span class="returnvalue">GMimeContentEncoding</span></a> g_mime_utils_best_encoding         (<em class="parameter"><code>const unsigned <span class="type">char</span> *text</code></em>,
440                                                          <em class="parameter"><code><span class="type">size_t</span> len</code></em>);</pre>
441 <p>
442 Determines the best content encoding for the first <em class="parameter"><code>len</code></em> bytes of
443 <em class="parameter"><code>text</code></em>.
444 </p>
445 <div class="variablelist"><table border="0">
446 <col align="left" valign="top">
447 <tbody>
448 <tr>
449 <td><p><span class="term"><em class="parameter"><code>text</code></em> :</span></p></td>
450 <td>text to encode</td>
451 </tr>
452 <tr>
453 <td><p><span class="term"><em class="parameter"><code>len</code></em> :</span></p></td>
454 <td>text length</td>
455 </tr>
456 <tr>
457 <td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
458 <td>a <a class="link" href="gmime-gmime-encodings.html#GMimeContentEncoding" title="enum GMimeContentEncoding"><span class="type">GMimeContentEncoding</span></a> that is determined to be the best
459 encoding type for the specified block of text. ("best" in this
460 particular case means smallest output size)</td>
461 </tr>
462 </tbody>
463 </table></div>
464 </div>
465 <hr>
466 <div class="refsect2">
467 <a name="g-mime-utils-decode-8bit"></a><h3>g_mime_utils_decode_8bit ()</h3>
468 <pre class="programlisting"><span class="returnvalue">char</span> *              g_mime_utils_decode_8bit            (<em class="parameter"><code>const <span class="type">char</span> *text</code></em>,
469                                                          <em class="parameter"><code><span class="type">size_t</span> len</code></em>);</pre>
470 <p>
471 Attempts to convert text in an unknown 8bit/multibyte charset into
472 UTF-8 by finding the charset which will convert the most bytes into
473 valid UTF-8 characters as possible. If no exact match can be found,
474 it will choose the best match and convert invalid byte sequences
475 into question-marks (?) in the returned string buffer.
476 </p>
477 <div class="variablelist"><table border="0">
478 <col align="left" valign="top">
479 <tbody>
480 <tr>
481 <td><p><span class="term"><em class="parameter"><code>text</code></em> :</span></p></td>
482 <td>input text in unknown 8bit/multibyte character set</td>
483 </tr>
484 <tr>
485 <td><p><span class="term"><em class="parameter"><code>len</code></em> :</span></p></td>
486 <td>input text length</td>
487 </tr>
488 <tr>
489 <td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
490 <td>a UTF-8 string representation of <em class="parameter"><code>text</code></em>.</td>
491 </tr>
492 </tbody>
493 </table></div>
494 </div>
495 <hr>
496 <div class="refsect2">
497 <a name="g-mime-utils-header-decode-text"></a><h3>g_mime_utils_header_decode_text ()</h3>
498 <pre class="programlisting"><span class="returnvalue">char</span> *              g_mime_utils_header_decode_text     (<em class="parameter"><code>const <span class="type">char</span> *text</code></em>);</pre>
499 <p>
500 Decodes an rfc2047 encoded 'text' header.
501 </p>
502 <p>
503 Note: See <a class="link" href="gmime-gmime-charset.html#g-mime-set-user-charsets" title="g_mime_set_user_charsets ()"><code class="function">g_mime_set_user_charsets()</code></a> for details on how charset
504 conversion is handled for unencoded 8bit text and/or wrongly
505 specified rfc2047 encoded-word tokens.
506 </p>
507 <div class="variablelist"><table border="0">
508 <col align="left" valign="top">
509 <tbody>
510 <tr>
511 <td><p><span class="term"><em class="parameter"><code>text</code></em> :</span></p></td>
512 <td>header text to decode</td>
513 </tr>
514 <tr>
515 <td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
516 <td>a newly allocated UTF-8 string representing the the decoded
517 header.</td>
518 </tr>
519 </tbody>
520 </table></div>
521 </div>
522 <hr>
523 <div class="refsect2">
524 <a name="g-mime-utils-header-encode-text"></a><h3>g_mime_utils_header_encode_text ()</h3>
525 <pre class="programlisting"><span class="returnvalue">char</span> *              g_mime_utils_header_encode_text     (<em class="parameter"><code>const <span class="type">char</span> *text</code></em>);</pre>
526 <p>
527 Encodes a 'text' header according to the rules in rfc2047.
528 </p>
529 <div class="variablelist"><table border="0">
530 <col align="left" valign="top">
531 <tbody>
532 <tr>
533 <td><p><span class="term"><em class="parameter"><code>text</code></em> :</span></p></td>
534 <td>text to encode</td>
535 </tr>
536 <tr>
537 <td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
538 <td>the encoded header. Useful for encoding
539 headers like "Subject".</td>
540 </tr>
541 </tbody>
542 </table></div>
543 </div>
544 <hr>
545 <div class="refsect2">
546 <a name="g-mime-utils-header-decode-phrase"></a><h3>g_mime_utils_header_decode_phrase ()</h3>
547 <pre class="programlisting"><span class="returnvalue">char</span> *              g_mime_utils_header_decode_phrase   (<em class="parameter"><code>const <span class="type">char</span> *phrase</code></em>);</pre>
548 <p>
549 Decodes an rfc2047 encoded 'phrase' header.
550 </p>
551 <p>
552 Note: See <a class="link" href="gmime-gmime-charset.html#g-mime-set-user-charsets" title="g_mime_set_user_charsets ()"><code class="function">g_mime_set_user_charsets()</code></a> for details on how charset
553 conversion is handled for unencoded 8bit text and/or wrongly
554 specified rfc2047 encoded-word tokens.
555 </p>
556 <div class="variablelist"><table border="0">
557 <col align="left" valign="top">
558 <tbody>
559 <tr>
560 <td><p><span class="term"><em class="parameter"><code>phrase</code></em> :</span></p></td>
561 <td>header to decode</td>
562 </tr>
563 <tr>
564 <td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
565 <td>a newly allocated UTF-8 string representing the the decoded
566 header.</td>
567 </tr>
568 </tbody>
569 </table></div>
570 </div>
571 <hr>
572 <div class="refsect2">
573 <a name="g-mime-utils-header-encode-phrase"></a><h3>g_mime_utils_header_encode_phrase ()</h3>
574 <pre class="programlisting"><span class="returnvalue">char</span> *              g_mime_utils_header_encode_phrase   (<em class="parameter"><code>const <span class="type">char</span> *phrase</code></em>);</pre>
575 <p>
576 Encodes a 'phrase' header according to the rules in rfc2047.
577 </p>
578 <div class="variablelist"><table border="0">
579 <col align="left" valign="top">
580 <tbody>
581 <tr>
582 <td><p><span class="term"><em class="parameter"><code>phrase</code></em> :</span></p></td>
583 <td>phrase to encode</td>
584 </tr>
585 <tr>
586 <td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
587 <td>the encoded 'phrase'. Useful for encoding internet
588 addresses.</td>
589 </tr>
590 </tbody>
591 </table></div>
592 </div>
593 <hr>
594 <div class="refsect2">
595 <a name="g-mime-utils-structured-header-fold"></a><h3>g_mime_utils_structured_header_fold ()</h3>
596 <pre class="programlisting"><span class="returnvalue">char</span> *              g_mime_utils_structured_header_fold (<em class="parameter"><code>const <span class="type">char</span> *str</code></em>);</pre>
597 <p>
598 Folds a structured header according to the rules in rfc822.
599 </p>
600 <div class="variablelist"><table border="0">
601 <col align="left" valign="top">
602 <tbody>
603 <tr>
604 <td><p><span class="term"><em class="parameter"><code>str</code></em> :</span></p></td>
605 <td>input string</td>
606 </tr>
607 <tr>
608 <td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
609 <td>an allocated string containing the folded header.</td>
610 </tr>
611 </tbody>
612 </table></div>
613 </div>
614 <hr>
615 <div class="refsect2">
616 <a name="g-mime-utils-unstructured-header-fold"></a><h3>g_mime_utils_unstructured_header_fold ()</h3>
617 <pre class="programlisting"><span class="returnvalue">char</span> *              g_mime_utils_unstructured_header_fold
618                                                         (<em class="parameter"><code>const <span class="type">char</span> *str</code></em>);</pre>
619 <p>
620 Folds an unstructured header according to the rules in rfc822.
621 </p>
622 <div class="variablelist"><table border="0">
623 <col align="left" valign="top">
624 <tbody>
625 <tr>
626 <td><p><span class="term"><em class="parameter"><code>str</code></em> :</span></p></td>
627 <td>input string</td>
628 </tr>
629 <tr>
630 <td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
631 <td>an allocated string containing the folded header.</td>
632 </tr>
633 </tbody>
634 </table></div>
635 </div>
636 </div>
637 </div>
638 <div class="footer">
639 <hr>
640           Generated by GTK-Doc V1.18</div>
641 </body>
642 </html>