Initialize the gmime for upstream
[platform/upstream/gmime.git] / docs / reference / html / gmime-changes-2-6.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>Changes from 2.4 to 2.6</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="gmime.html" title="Part I. GMime Overview">
9 <link rel="prev" href="gmime-changes-2-4.html" title="Changes from 2.2 to 2.4">
10 <link rel="next" href="gmime-resources.html" title="Mailing lists and bug reports">
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"><tr valign="middle">
16 <td><a accesskey="p" href="gmime-changes-2-4.html"><img src="left.png" width="24" height="24" border="0" alt="Prev"></a></td>
17 <td><a accesskey="u" href="gmime.html"><img src="up.png" width="24" height="24" border="0" alt="Up"></a></td>
18 <td><a accesskey="h" href="index.html"><img src="home.png" width="24" height="24" border="0" alt="Home"></a></td>
19 <th width="100%" align="center">GMime 2.6 Reference Manual</th>
20 <td><a accesskey="n" href="gmime-resources.html"><img src="right.png" width="24" height="24" border="0" alt="Next"></a></td>
21 </tr></table>
22 <div class="refentry">
23 <a name="gmime-changes-2-6"></a><div class="titlepage"></div>
24 <div class="refnamediv"><table width="100%"><tr>
25 <td valign="top">
26 <h2><span class="refentrytitle">Changes from 2.4 to 2.6</span></h2>
27 <p>Changes from 2.4 to 2.6 — Changes made between version 2.4 and version 2.6</p>
28 </td>
29 <td valign="top" align="right"></td>
30 </tr></table></div>
31 <div class="refsect1">
32 <a name="idp5123568"></a><h2>Changes from 2.4 to 2.6</h2>
33 <p>After releasing GMime 2.4, it was discovered that
34 g_mime_stream_length() still returned ssize_t which, on 32bit systems,
35 meant that the function was useless if the actual stream was larger
36 than 2GB (which could happen if GMime was built with large file
37 support).</p>
38 <p>As I fixed this, I also found some API inconsistencies which I felt I
39 might as well fix up since I had to break API/ABI compatibility with
40 2.4 anyway.</p>
41 <p>Most notable in GMime 2.6 is the lack of GMimeSession which has been
42 dropped in favor of a much simpler callback
43 mechanism. GMimeCipherContexts constructors now take a
44 password_request callback function rather than forcing you to subclass
45 GMimeSession to get this functionality.</p>
46 <p>Other API changes include:</p>
47 <div class="itemizedlist"><ul class="itemizedlist" type="disc">
48 <li class="listitem"><p>GMimeBestEncoding has been renamed to
49       GMimeEncodingConstraint</p></li>
50 <li class="listitem"><p>GMimeSignatureValidity has been dropped in favor
51       of GMimeSignatureList which is simply a collection of
52       signatures.
53       </p></li>
54 <li class="listitem"><p>GMimeSigner has been replaced by GMimeSignature
55       and GMimeCertificate which added a number of new fields and
56       accessors making it much more complete.
57       </p></li>
58 <li class="listitem"><p>GMimeCipherContext has been renamed to
59       GMimeCryptoContext and the method names for this class have also
60       been renamed in a similar fashion.
61       </p></li>
62 <li class="listitem"><p><code class="function">g_mime_crypto_context_encrypt()</code>
63       now takes a digest algorithm argument which is used when the
64       'sign' argument is TRUE.
65       </p></li>
66 <li class="listitem"><p><code class="function">g_mime_multipart_encrypted_encrypt()</code>
67       also now takes a digest algorithm argument which it passes along
68       to <code class="function">g_mime_crypto_context_encrypt()</code>.
69       </p></li>
70 <li class="listitem"><p><code class="function">g_mime_crypto_context_decrypt()</code>
71       now returns a GMimeDecryptResult which contains a list of
72       signatures (if signed), a list of recipients that the stream had
73       been encrypted to, and also the cipher and digest algorithms
74       used.
75       </p></li>
76 <li class="listitem"><p><code class="function">g_mime_multipart_encrypted_decrypt()</code>
77       no longer caches the decrypted part and also now takes a
78       GMimeSignatureList** output argument which it sets in place of
79       having to call
80       <code class="function">g_mime_multipart_encrypted_get_signature_validity()</code>
81       afterward.
82       </p></li>
83 </ul></div>
84 </div>
85 </div>
86 <div class="footer">
87 <hr>
88           Generated by GTK-Doc V1.18</div>
89 </body>
90 </html>