From: Daniel Kahn Gillmor Date: Tue, 12 May 2020 22:29:32 +0000 (-0400) Subject: smime: Identify encrypted S/MIME parts during indexing X-Git-Tag: archive/debian/0.30_rc0-1~20 X-Git-Url: https://git.notmuchmail.org/git?p=notmuch;a=commitdiff_plain;h=ad60e5d4e8a6736af28f326803dbd38620e71ae8 smime: Identify encrypted S/MIME parts during indexing We don't handle them correctly yet, but we can at least mark them as being encrypted. Signed-off-by: Daniel Kahn Gillmor --- diff --git a/lib/index.cc b/lib/index.cc index bbf13dc5..f029b334 100644 --- a/lib/index.cc +++ b/lib/index.cc @@ -654,6 +654,10 @@ _index_pkcs7_part (notmuch_message_t *message, notmuch_message_add_property (message, "index.repaired", "skip-protected-headers-legacy-display"); } _index_mime_part (message, indexopts, toindex, msg_crypto); + } else if (p7type == GMIME_SECURE_MIME_TYPE_ENVELOPED_DATA) { + _notmuch_message_add_term (message, "tag", "encrypted"); + if (notmuch_indexopts_get_decrypt_policy (indexopts) != NOTMUCH_DECRYPT_FALSE) + _notmuch_database_log (notmuch, "Cannot decrypt PKCS#7 envelopedData (S/MIME encrypted messages)\n"); } else { _notmuch_database_log (notmuch, "Cannot currently handle PKCS#7 smime-type '%s'\n", g_mime_object_get_content_type_parameter (part, "smime-type")); diff --git a/test/T355-smime.sh b/test/T355-smime.sh index a7eecedf..7c28282a 100755 --- a/test/T355-smime.sh +++ b/test/T355-smime.sh @@ -98,7 +98,6 @@ test_json_nodes <<<"$output" \ 'crypto_uid:[0][0][0]["crypto"]["signed"]["status"][0]["userid"]="CN=Notmuch Test Suite"' test_begin_subtest "encrypted+signed message is known to be encrypted, but signature is unknown" -test_subtest_known_broken output=$(notmuch search subject:"test encrypted message 001") test_expect_equal "$output" "thread:0000000000000002 2000-01-01 [1/1] Notmuch Test Suite; test encrypted message 001 (encrypted inbox)"