Re: Decryption fails

Subject: Re: Decryption fails

Date: Tue, 31 May 2011 19:33:29 +0200

To: Jameson Graef Rollins, notmuch@notmuchmail.org

Cc:

From: Felix Geller


On Tue, 31 May 2011 00:18:26 -0700, Jameson Graef Rollins <jrollins@finestructure.net> wrote:
> Hey, Felix.  As David said, all crypto tests should be passing with
> libgmime 2.4.24.  It would probably be instructive to know which crypto
> tests failed and why.  Maybe you could supply some output from the
> failed crypto tests.

Ok, so the following tests pass:

 PASS   emacs delivery of signed message
 PASS   emacs delivery of encrypted + signed message
 PASS   emacs delivery of encrypted message with attachment

I'm attaching the full output for the cypto tests.

I get the following trace when using show --decrypt to decrypt a
specific message (have to kill the process to actually get the trace):

#0  0x00000001006121a6 in poll ()
#1  0x000000010006d3d2 in gpg_ctx_op_step ()
#2  0x000000010006e5c7 in gpg_decrypt ()
#3  0x00000001000566cf in g_mime_multipart_encrypted_decrypt ()
#4  0x000000010000a413 in show_message_part (part=0x10606fc20,
#state=0x7fff5fbfd1c0, format=0x10002ef80, params=0x7fff5fbfd2c0,
#first=1) at show-message.c:71

So I guess it ends up looping or waiting in poll(), but I can't tell why
it would do that. I guess the next step is to post to the gmime mailing
list, or?


Cheers,
Felix


crypto: Testing PGP/MIME signature verification and decryption
 PASS   emacs delivery of signed message
 FAIL   signature verification
	--- crypto.2.expected	2011-05-31 17:30:47.000000000 +0000
	+++ crypto.2.output	2011-05-31 17:30:47.000000000 +0000
	@@ -1,23 +1 @@
	-[[[{"id": "XXXXX",
	- "match": true,
	- "filename": "YYYYY",
	- "timestamp": 946728000,
	- "date_relative": "2000-01-01",
	- "tags": ["inbox","signed"],
	- "headers": {"Subject": "test signed message 001",
	- "From": "Notmuch Test Suite <test_suite@notmuchmail.org>",
	- "To": "test_suite@notmuchmail.org",
	- "Cc": "",
	- "Bcc": "",
	- "Date": "01 Jan 2000 12:00:00 -0000"},
	- "body": [{"id": 1,
	- "sigstatus": [{"status": "good",
	- "fingerprint": "5AEAB11F5E33DCE875DDB75B6D92612D94E46381",
	- "created": 946728000}],
	- "content-type": "multipart/signed",
	- "content": [{"id": 2,
	- "content-type": "text/plain",
	- "content": "This is a test signed message.\n"},
	- {"id": 3,
	- "content-type": "application/pgp-signature"}]}]},
	- []]]]
	+[]
 FAIL   signature verification with full owner trust
	--- crypto.3.expected	2011-05-31 17:30:47.000000000 +0000
	+++ crypto.3.output	2011-05-31 17:30:47.000000000 +0000
	@@ -1,24 +1 @@
	-[[[{"id": "XXXXX",
	- "match": true,
	- "filename": "YYYYY",
	- "timestamp": 946728000,
	- "date_relative": "2000-01-01",
	- "tags": ["inbox","signed"],
	- "headers": {"Subject": "test signed message 001",
	- "From": "Notmuch Test Suite <test_suite@notmuchmail.org>",
	- "To": "test_suite@notmuchmail.org",
	- "Cc": "",
	- "Bcc": "",
	- "Date": "01 Jan 2000 12:00:00 -0000"},
	- "body": [{"id": 1,
	- "sigstatus": [{"status": "good",
	- "fingerprint": "5AEAB11F5E33DCE875DDB75B6D92612D94E46381",
	- "created": 946728000,
	- "userid": " Notmuch Test Suite <test_suite@notmuchmail.org> (INSECURE!)"}],
	- "content-type": "multipart/signed",
	- "content": [{"id": 2,
	- "content-type": "text/plain",
	- "content": "This is a test signed message.\n"},
	- {"id": 3,
	- "content-type": "application/pgp-signature"}]}]},
	- []]]]
	+[]
 FAIL   signature verification with signer key unavailable
	--- crypto.4.expected	2011-05-31 17:30:47.000000000 +0000
	+++ crypto.4.output	2011-05-31 17:30:47.000000000 +0000
	@@ -1,23 +1 @@
	-[[[{"id": "XXXXX",
	- "match": true,
	- "filename": "YYYYY",
	- "timestamp": 946728000,
	- "date_relative": "2000-01-01",
	- "tags": ["inbox","signed"],
	- "headers": {"Subject": "test signed message 001",
	- "From": "Notmuch Test Suite <test_suite@notmuchmail.org>",
	- "To": "test_suite@notmuchmail.org",
	- "Cc": "",
	- "Bcc": "",
	- "Date": "01 Jan 2000 12:00:00 -0000"},
	- "body": [{"id": 1,
	- "sigstatus": [{"status": "error",
	- "keyid": "6D92612D94E46381",
	- "errors": 2}],
	- "content-type": "multipart/signed",
	- "content": [{"id": 2,
	- "content-type": "text/plain",
	- "content": "This is a test signed message.\n"},
	- {"id": 3,
	- "content-type": "application/pgp-signature"}]}]},
	- []]]]
	+[]
 PASS   emacs delivery of encrypted message with attachment
 FAIL   decryption, --format=text
	--- crypto.6.expected	2011-05-31 17:30:48.000000000 +0000
	+++ crypto.6.output	2011-05-31 17:30:48.000000000 +0000
	@@ -1,25 +1 @@
	-message{ id:XXXXX depth:0 match:1 filename:XXXXX
	-header{
	-Notmuch Test Suite <test_suite@notmuchmail.org> (2000-01-01) (encrypted inbox)
	-Subject: test encrypted message 001
	-From: Notmuch Test Suite <test_suite@notmuchmail.org>
	-To: test_suite@notmuchmail.org
	-Date: 01 Jan 2000 12:00:00 -0000
	-header}
	-body{
	-part{ ID: 1, Content-type: multipart/encrypted
	-part{ ID: 2, Content-type: application/pgp-encrypted
	-Non-text part: application/pgp-encrypted
	-part}
	-part{ ID: 3, Content-type: multipart/mixed
	-part{ ID: 4, Content-type: text/plain
	-This is a test encrypted message.
	-part}
	-attachment{ ID: 5, Content-type: application/octet-stream
	-Attachment: TESTATTACHMENT (application/octet-stream)
	-Non-text part: application/octet-stream
	-attachment}
	-part}
	-part}
	-body}
	-message}
	+
 FAIL   decryption, --format=json
	--- crypto.7.expected	2011-05-31 17:30:48.000000000 +0000
	+++ crypto.7.output	2011-05-31 17:30:48.000000000 +0000
	@@ -1,27 +1 @@
	-[[[{"id": "XXXXX",
	- "match": true,
	- "filename": "YYYYY",
	- "timestamp": 946728000,
	- "date_relative": "2000-01-01",
	- "tags": ["encrypted","inbox"],
	- "headers": {"Subject": "test encrypted message 001",
	- "From": "Notmuch Test Suite <test_suite@notmuchmail.org>",
	- "To": "test_suite@notmuchmail.org",
	- "Cc": "",
	- "Bcc": "",
	- "Date": "01 Jan 2000 12:00:00 -0000"},
	- "body": [{"id": 1,
	- "encstatus": [{"status": "good"}],
	- "sigstatus": [],
	- "content-type": "multipart/encrypted",
	- "content": [{"id": 2,
	- "content-type": "application/pgp-encrypted"},
	- {"id": 3,
	- "content-type": "multipart/mixed",
	- "content": [{"id": 4,
	- "content-type": "text/plain",
	- "content": "This is a test encrypted message.\n"},
	- {"id": 5,
	- "content-type": "application/octet-stream",
	- "filename": "TESTATTACHMENT"}]}]}]},
	- []]]]
	+[]
 FAIL   decryption, --format=json, --part=4
	--- crypto.8.expected	2011-05-31 17:30:48.000000000 +0000
	+++ crypto.8.output	2011-05-31 17:30:48.000000000 +0000
	@@ -1,3 +1 @@
	-{"id": 4,
	- "content-type": "text/plain",
	- "content": "This is a test encrypted message.\n"}
	+
Error: search term did not match precisely one message.
 FAIL   decrypt attachment (--part=5 --format=raw)
	--- crypto.9.expected	2011-05-31 17:30:47.000000000 +0000
	+++ crypto.9.output	2011-05-31 17:30:48.000000000 +0000
	@@ -1 +0,0 @@
	-This is a test file.
Error: search term did not match precisely one message.
 FAIL   decryption failure with missing key
	--- crypto.10.expected	2011-05-31 17:30:49.000000000 +0000
	+++ crypto.10.output	2011-05-31 17:30:49.000000000 +0000
	@@ -1,20 +1 @@
	-[[[{"id": "XXXXX",
	- "match": true,
	- "filename": "YYYYY",
	- "timestamp": 946728000,
	- "date_relative": "2000-01-01",
	- "tags": ["encrypted","inbox"],
	- "headers": {"Subject": "test encrypted message 001",
	- "From": "Notmuch Test Suite <test_suite@notmuchmail.org>",
	- "To": "test_suite@notmuchmail.org",
	- "Cc": "",
	- "Bcc": "",
	- "Date": "01 Jan 2000 12:00:00 -0000"},
	- "body": [{"id": 1,
	- "encstatus": [{"status": "bad"}],
	- "content-type": "multipart/encrypted",
	- "content": [{"id": 2,
	- "content-type": "application/pgp-encrypted"},
	- {"id": 3,
	- "content-type": "application/octet-stream"}]}]},
	- []]]]
	+[]
 PASS   emacs delivery of encrypted + signed message
 FAIL   decryption + signature verification
	--- crypto.12.expected	2011-05-31 17:30:50.000000000 +0000
	+++ crypto.12.output	2011-05-31 17:30:50.000000000 +0000
	@@ -1,25 +1 @@
	-[[[{"id": "XXXXX",
	- "match": true,
	- "filename": "YYYYY",
	- "timestamp": 946728000,
	- "date_relative": "2000-01-01",
	- "tags": ["encrypted","inbox"],
	- "headers": {"Subject": "test encrypted message 002",
	- "From": "Notmuch Test Suite <test_suite@notmuchmail.org>",
	- "To": "test_suite@notmuchmail.org",
	- "Cc": "",
	- "Bcc": "",
	- "Date": "01 Jan 2000 12:00:00 -0000"},
	- "body": [{"id": 1,
	- "encstatus": [{"status": "good"}],
	- "sigstatus": [{"status": "good",
	- "fingerprint": "5AEAB11F5E33DCE875DDB75B6D92612D94E46381",
	- "created": 946728000,
	- "userid": " Notmuch Test Suite <test_suite@notmuchmail.org> (INSECURE!)"}],
	- "content-type": "multipart/encrypted",
	- "content": [{"id": 2,
	- "content-type": "application/pgp-encrypted"},
	- {"id": 3,
	- "content-type": "text/plain",
	- "content": "This is another test encrypted message.\n"}]}]},
	- []]]]
	+[]
 FAIL   reply to encrypted message
	--- crypto.13.expected	2011-05-31 17:30:50.000000000 +0000
	+++ crypto.13.output	2011-05-31 17:30:50.000000000 +0000
	@@ -1,7 +1 @@
	-From: Notmuch Test Suite <test_suite@notmuchmail.org>
	-Subject: Re: test encrypted message 002
	 
	-On 01 Jan 2000 12:00:00 -0000, Notmuch Test Suite <test_suite@notmuchmail.org> wrote:
	-Non-text part: multipart/encrypted
	-Non-text part: application/pgp-encrypted
	-> This is another test encrypted message.
 FAIL   signature verification with revoked key
	--- crypto.14.expected	2011-05-31 17:30:50.000000000 +0000
	+++ crypto.14.output	2011-05-31 17:30:50.000000000 +0000
	@@ -1,23 +1 @@
	-[[[{"id": "XXXXX",
	- "match": true,
	- "filename": "YYYYY",
	- "timestamp": 946728000,
	- "date_relative": "2000-01-01",
	- "tags": ["inbox","signed"],
	- "headers": {"Subject": "test signed message 001",
	- "From": "Notmuch Test Suite <test_suite@notmuchmail.org>",
	- "To": "test_suite@notmuchmail.org",
	- "Cc": "",
	- "Bcc": "",
	- "Date": "01 Jan 2000 12:00:00 -0000"},
	- "body": [{"id": 1,
	- "sigstatus": [{"status": "error",
	- "keyid": "6D92612D94E46381",
	- "errors": 8}],
	- "content-type": "multipart/signed",
	- "content": [{"id": 2,
	- "content-type": "text/plain",
	- "content": "This is a test signed message.\n"},
	- {"id": 3,
	- "content-type": "application/pgp-signature"}]}]},
	- []]]]
	+[]
gpg: 3 marginal(s) needed, 1 complete(s) needed, PGP trust model
gpg: depth: 0  valid:   1  signed:   0  trust: 0-, 0q, 0n, 0m, 0f, 1u
part-000.sig (application/pgp-signature)

Thread: