gmime-extra: drop compat layer for g_mime_multipart_encrypted_decrypt
authorDaniel Kahn Gillmor <dkg@fifthhorseman.net>
Tue, 10 Oct 2017 05:49:10 +0000 (01:49 -0400)
committerDavid Bremner <david@tethera.net>
Sat, 14 Oct 2017 13:57:06 +0000 (10:57 -0300)
In practice, we're going to see this function invoked differently
depending on which gmime we build against.  The compatibility layer
forces our code into the lowest-common-denominator -- unable to make
use of new features even when built against a newer version.

Dropping the compatibility layer paves the way for clearer use of
features from GMime 3.0 in future commits.

mime-node.c
util/gmime-extra.h

index 02e3df48b48b28feeba83dbab325232e97125063..d48be4c46695c072197505c9ed7413a64c089af0 100644 (file)
@@ -200,7 +200,11 @@ node_decrypt_and_verify (mime_node_t *node, GMimeObject *part,
 
     node->decrypt_attempted = true;
     node->decrypted_child = g_mime_multipart_encrypted_decrypt
+#if (GMIME_MAJOR_VERSION < 3)
        (encrypteddata, cryptoctx, &decrypt_result, &err);
+#else
+        (encrypteddata, GMIME_DECRYPT_NONE, NULL, &decrypt_result, &err);
+#endif
     if (! node->decrypted_child) {
        fprintf (stderr, "Failed to decrypt part: %s\n",
                 err ? err->message : "no error explanation given");
index e060bcc264efed670a06fed48f2d96c2af2588ad..40bf1454d00dfee0496fd186b60db9a03c1d93c4 100644 (file)
@@ -29,7 +29,6 @@ GMimeStream *g_mime_stream_stdout_new(void);
 #define g_mime_init(flags) g_mime_init()
 #define g_mime_message_add_recipient(m,t,n,a) g_mime_message_add_mailbox (m,t,n,a)
 #define g_mime_message_set_subject(m,s) g_mime_message_set_subject(m,s,NULL)
-#define g_mime_multipart_encrypted_decrypt(mpe,ctx,out,err) g_mime_multipart_encrypted_decrypt(mpe, GMIME_DECRYPT_NONE, NULL, out, err)
 #define g_mime_multipart_signed_verify(mps,ctx,err) g_mime_multipart_signed_verify(mps, GMIME_ENCRYPT_NONE, err)
 #define g_mime_object_write_to_stream(o,s) g_mime_object_write_to_stream (o,NULL,s)
 #define g_mime_object_set_header(o,h,v) g_mime_object_set_header (o,h,v,NULL)