With a few others, I've been attempting to get S/MIME supported in notmuch (which as you might or might not remember is using gmime underneath). The signature verification part is working OK, but I've gotten a bit bogged down trying to get decryption working.
What I have learned is that according RFC5751, smime message (parts) look like Media type: application/pkcs7-mime parameters: any file suffix: any Media type: multipart/signed parameters: protocol="application/pkcs7-signature" file suffix: any Media type: application/octet-stream parameters: any file suffix: p7m, p7s, p7c, p7z Unless I miss something, out of the box there is only support for decrypting multipart/encrypted. In particular the gmime tests for S/MIME use this "container format" [1]. So I'm wondering if I'm confused about the RFC(s), or about GMIME, or is one suppose to write analogs of g_mime_multipart_encrypted_decrypt for other top level parts? Cheers, David [1]: https://github.com/GNOME/gmime/blob/master/tests/test-smime.c