aboutsummaryrefslogtreecommitdiff
path: root/src/mailman_pgp/pgp/mime.py
diff options
context:
space:
mode:
authorJ08nY2017-06-26 23:36:29 +0200
committerJ08nY2017-06-26 23:36:29 +0200
commit1e7fcefa467e32ab54967e78ffc8485a46d3eaeb (patch)
tree24d9d5e58823f25120b2f7daaf5d5bb4ea5a8349 /src/mailman_pgp/pgp/mime.py
parente071f25345dbb8e52c4f22c93da7b1eb7d330793 (diff)
downloadmailman-pgp-1e7fcefa467e32ab54967e78ffc8485a46d3eaeb.tar.gz
mailman-pgp-1e7fcefa467e32ab54967e78ffc8485a46d3eaeb.tar.zst
mailman-pgp-1e7fcefa467e32ab54967e78ffc8485a46d3eaeb.zip
Fixup MIMEWrapper decryption.
Diffstat (limited to 'src/mailman_pgp/pgp/mime.py')
-rw-r--r--src/mailman_pgp/pgp/mime.py5
1 files changed, 4 insertions, 1 deletions
diff --git a/src/mailman_pgp/pgp/mime.py b/src/mailman_pgp/pgp/mime.py
index 92ee72b..c36cc37 100644
--- a/src/mailman_pgp/pgp/mime.py
+++ b/src/mailman_pgp/pgp/mime.py
@@ -171,6 +171,8 @@ class MIMEWrapper:
:rtype: mailman.email.message.Message
"""
payload = self.msg.as_string()
+ # Wrap payload in PGPMessage with cleartext=True to get a signature
+ # of a canonical document.
pmsg = PGPMessage.new(payload, cleartext=True)
signature = key.sign(pmsg, hash=hash)
@@ -203,7 +205,8 @@ class MIMEWrapper:
:rtype: mailman.email.message.Message
"""
msg_text = self.msg.get_payload(1).get_payload()
- pmsg = PGPMessage.from_blob(msg_text)
+ pmsg = PGPMessage()
+ pmsg.parse(msg_text)
decrypted = key.decrypt(pmsg)
out = message_from_string(decrypted.message, _class=Message)
copy_headers(self.msg, out)