1 <refentry id="gmime-changes-2-6" revision="06 Feb 2010">
3 <refentrytitle>Changes from 2.4 to 2.6</refentrytitle>
4 <manvolnum>3</manvolnum>
5 <refmiscinfo>Changes from 2.4 to 2.6</refmiscinfo>
8 <refname>Changes from 2.4 to 2.6</refname>
9 <refpurpose>Changes made between version 2.4 and version 2.6</refpurpose>
12 <title>Changes from 2.4 to 2.6</title>
13 <para>After releasing GMime 2.4, it was discovered that
14 g_mime_stream_length() still returned ssize_t which, on 32bit systems,
15 meant that the function was useless if the actual stream was larger
16 than 2GB (which could happen if GMime was built with large file
18 <para>As I fixed this, I also found some API inconsistencies which I felt I
19 might as well fix up since I had to break API/ABI compatibility with
21 <para>Most notable in GMime 2.6 is the lack of GMimeSession which has been
22 dropped in favor of a much simpler callback
23 mechanism. GMimeCipherContexts constructors now take a
24 password_request callback function rather than forcing you to subclass
25 GMimeSession to get this functionality.</para>
26 <para>Other API changes include:</para>
28 <listitem><para>GMimeBestEncoding has been renamed to
29 GMimeEncodingConstraint</para></listitem>
30 <listitem><para>GMimeSignatureValidity has been dropped in favor
31 of GMimeSignatureList which is simply a collection of
34 <listitem><para>GMimeSigner has been replaced by GMimeSignature
35 and GMimeCertificate which added a number of new fields and
36 accessors making it much more complete.
38 <listitem><para>GMimeCipherContext has been renamed to
39 GMimeCryptoContext and the method names for this class have also
40 been renamed in a similar fashion.
42 <listitem><para><function>g_mime_crypto_context_encrypt()</function>
43 now takes a digest algorithm argument which is used when the
44 'sign' argument is TRUE.
46 <listitem><para><function>g_mime_multipart_encrypted_encrypt()</function>
47 also now takes a digest algorithm argument which it passes along
48 to <function>g_mime_crypto_context_encrypt()</function>.
50 <listitem><para><function>g_mime_crypto_context_decrypt()</function>
51 now returns a GMimeDecryptResult which contains a list of
52 signatures (if signed), a list of recipients that the stream had
53 been encrypted to, and also the cipher and digest algorithms
56 <listitem><para><function>g_mime_multipart_encrypted_decrypt()</function>
57 no longer caches the decrypted part and also now takes a
58 GMimeSignatureList** output argument which it sets in place of
60 <function>g_mime_multipart_encrypted_get_signature_validity()</function>