2008-06-06 Jeffrey Stedfast * README: Bumped version * configure.in: Bumped version to 2.3.1 * gmime/*.[c,h]: Updated a bunch of gtk-doc documentation. 2008-06-05 Jeffrey Stedfast * gmime/gmime-message.c (g_mime_message_get_date_as_string): Renamed from g_mime_message_get_date_string(). (g_mime_message_set_date_as_string): New function to provide another means of setting a date (might help with some bindings where time_t and tz_offsets are more difficult to work with). * mono/GMime.metadata: Fixed MessagePartial.ReconstructMessage binding, thanks to Mike Kestner for helping me figure out the proper metadata kung-fu to achieve this. * gmime/gmime-object.c: Get rid of the 'init' class method, GObject already has an initializer (must be a leftover from before the port to GObject). (g_mime_object_new_type): Don't call GMimeObject->init(), g_object_new() has already initialized the object. * gmime/gmime-multipart.c (g_mime_multipart_remove_part): Now returns TRUE or FALSE. 2008-06-04 Jeffrey Stedfast * tests/test-pgp.c (main): Test encrypt+sign and decrypt+verify as well. 2008-06-03 Jeffrey Stedfast * tests/test-pgpmime.c: Updated to test for multipart/encrypted+sign * gmime/gmime-multipart-encrypted.c (g_mime_multipart_encrypted_encrypt): Changed to take 'sign' and 'userid' arguments so that it is possible to both sign and encrypt the content. (g_mime_multipart_encrypted_decrypt): Updated to save the GMimeSignatureValidity from our call ot g_mime_cipher_context_decrypt() so that callers can choose to get the signer validity (in the case where the encrypted part was also signed). (g_mime_multipart_encrypted_get_signature_validity): New function. * gmime/gmime-gpg-context.c (gpg_decrypt): Updated to return a GMimeSignatureValidity. (gpg_ctx_parse_signer_info): Split out from gpg_ctx_parse_status() to parse signer info. (gpg_ctx_parse_status): Updated VERIFY mode to call gpg_ctx_parse_signer_info() and made DECRYPT also call it so that we properly collect signer info when the encrypted stream was also signed. (gpg_encrypt): Respect the 'sign' argument. * gmime/gmime-cipher-context.c (g_mime_cipher_context_decrypt): Now returns a GMimeSignatureValidity in case the encrypted stream was also signed. 2008-06-02 Jeffrey Stedfast * gmime/gmime-message-partial.c (message_partial_message_new): Use an iter on the stack. * gmime/gmime-header.[c,h]: Changed iters again. Iters are now able to be allocated on the stack by making the struct public, however this means that they are more sensitive to changes in the HeaderList (e.g. all iters other than the one used to remove a header become invalid regardless of whether or not the header they refer to still exists). 2008-06-01 Jeffrey Stedfast * gmime/gmime-header.c (g_mime_header_iter_new): New function to allocate an iter on the heap. (g_mime_header_iter_copy_to): New copy function so that you can copy to a pre-allocated destination iter. (g_mime_header_list_get_iter): Changed the API a bit. Instead of returning a newly allocated iter, instead return bool and take an iter arg to initialize. 2008-06-01 Jeffrey Stedfast * tools/gmime-port-2-2-to-2-4.sh: New helper tool to port existing GMime 2.0 and 2.2 based applications over to GMime 2.4. * gmime/gmime-part.c: Updated for GMimeFilterCRLF changes. * gmime/gmime-multipart-signed.c: Updated for GMimeFilterCRLF changes. * gmime/gmime-multipart-encrypted.c: Updated for GMimeFilterCRLF changes. * gmime/gmime-filter-crlf.c (g_mime_filter_crlf_new): No longer takes 2 enum arguments, rather it now takes 2 bool arguments which makes the API simpler to understand. * gmime/gmime-filter-best.c (g_mime_filter_best_new): Changed the unsigned int flags argument to be an enum so developers could more easily figure out what the argument was. * gmime/gmime-param.c (g_mime_param_next): New helper function for bindings. (g_mime_param_get_name): Same. (g_mime_param_get_value): Same. 2008-05-31 Jeffrey Stedfast * tests/test-html.c (main): Updated. * tests/test-best.c (main): Updated. * src/uuencode.c (uuencode): Updated. * gmime/gmime-part.c: Updated for filter stream change. * gmime/gmime-multipart-signed.c (g_mime_multipart_signed_sign): Updated for filter stream change. * gmime/gmime-multipart-encrypted.c: Updated for filter stream change. * gmime/gmime-gpg-context.c (gpg_ctx_new): Updated for filter stream change. * gmime/gmime-filter-yenc.c (g_mime_filter_yenc_new): Now takes a bool encode argument rather than a GMimeFilterYencDirection - no sense making this more complicated than it needs to be. * gmime/gmime-stream-filter.c (g_mime_stream_filter_new): Renamed from g_mime_stream_filter_new_with_stream(). This is the only constructor, so should be named _new().