X-Git-Url: https://git.notmuchmail.org/git?a=blobdiff_plain;f=test%2FT355-smime.sh;h=12ac2525345a2196e6ce8f8ecc2036d3c15eeb7a;hb=25da4a13407c0634d5b59fc2e1f3c2fe17db4438;hp=7c28282a4c1a95737edf73ac4a8dbf8cfa2b063d;hpb=ad60e5d4e8a6736af28f326803dbd38620e71ae8;p=notmuch diff --git a/test/T355-smime.sh b/test/T355-smime.sh index 7c28282a..12ac2525 100755 --- a/test/T355-smime.sh +++ b/test/T355-smime.sh @@ -3,10 +3,11 @@ test_description='S/MIME signature verification and decryption' . $(dirname "$0")/test-lib.sh || exit 1 +test_require_emacs test_require_external_prereq openssl test_require_external_prereq gpgsm -FINGERPRINT=$(openssl x509 -fingerprint -in "$NOTMUCH_SRCDIR/test/smime/key+cert.pem" -noout | sed -e 's/^.*=//' -e s/://g) +FINGERPRINT=$(openssl x509 -sha1 -fingerprint -in "$NOTMUCH_SRCDIR/test/smime/key+cert.pem" -noout | sed -e 's/^.*=//' -e s/://g) add_gpgsm_home @@ -80,7 +81,6 @@ EOF test_expect_equal_file EXPECTED OUTPUT test_begin_subtest "Decryption (notmuch CLI)" -test_subtest_known_broken notmuch show --decrypt=true subject:"test encrypted message 001" |\ grep "^This is a" > OUTPUT cat < EXPECTED @@ -89,7 +89,6 @@ EOF test_expect_equal_file EXPECTED OUTPUT test_begin_subtest "Cryptographic message status (encrypted+signed)" -test_subtest_known_broken output=$(notmuch show --format=json --decrypt=true subject:"test encrypted message 001") test_json_nodes <<<"$output" \ 'crypto_encrypted:[0][0][0]["crypto"]["decrypted"]["status"]="full"' \ @@ -109,12 +108,10 @@ test_begin_subtest "Reindex cleartext" test_expect_success "notmuch reindex --decrypt=true subject:'test encrypted message 001'" test_begin_subtest "signature is now known" -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 signed)" test_begin_subtest "Encrypted body is indexed" -test_subtest_known_broken output=$(notmuch search 'this is a test encrypted message') test_expect_equal "$output" "thread:0000000000000002 2000-01-01 [1/1] Notmuch Test Suite; test encrypted message 001 (encrypted inbox signed)" @@ -142,7 +139,6 @@ expected='#notmuch-dump batch-tag:3 config,properties,tags test_expect_equal "$expected" "$output" test_begin_subtest "show contents of PKCS#7 SignedData message" -test_subtest_known_broken output=$(notmuch show --format=raw --part=2 id:smime-onepart-signed@protected-headers.example) whitespace=' ' expected="Bob, we need to cancel this contract. @@ -157,7 +153,6 @@ OpenPGP Example Corp" test_expect_equal "$expected" "$output" test_begin_subtest "reply to PKCS#7 SignedData message with proper quoting and attribution" -test_subtest_known_broken output=$(notmuch reply id:smime-onepart-signed@protected-headers.example) expected="From: Notmuch Test Suite Subject: Re: The FooCorp contract @@ -182,7 +177,9 @@ output=$(notmuch show --format=json id:smime-onepart-signed@protected-headers.ex test_valid_json "$output" test_begin_subtest "Verify signature on PKCS#7 SignedData message" -test_subtest_known_broken +if [ $NOTMUCH_HAVE_64BIT_TIME_T -ne 1 ]; then + test_subtest_known_broken +fi output=$(notmuch show --format=json id:smime-onepart-signed@protected-headers.example) test_json_nodes <<<"$output" \ @@ -192,7 +189,9 @@ test_json_nodes <<<"$output" \ 'status:[0][0][0]["crypto"]["signed"]["status"][0]["status"]="good"' test_begin_subtest "Verify signature on PKCS#7 SignedData message signer User ID" -test_subtest_known_broken +if [ $NOTMUCH_GMIME_X509_CERT_VALIDITY -ne 1 ]; then + test_subtest_known_broken +fi test_json_nodes <<<"$output" \ 'userid:[0][0][0]["crypto"]["signed"]["status"][0]["userid"]="CN=Alice Lovelace"'