# HG changeset patch # User Paul Boddie # Date 1384106874 -3600 # Node ID 06bd68b1338c0ca0f34a063bb5fa878eb1ff7f25 # Parent 2b340a609c913177ac3ebe285a7334ff58ddd840 Added public key export for key exchange in messages. diff -r 2b340a609c91 -r 06bd68b1338c MoinMessage.py --- a/MoinMessage.py Sun Nov 10 18:39:11 2013 +0100 +++ b/MoinMessage.py Sun Nov 10 19:07:54 2013 +0100 @@ -347,6 +347,17 @@ return encrypted_message + def exportKey(self, keyid): + + """ + Return the "armoured" public key text for 'keyid' as a message part with + a suitable media type. + See: https://tools.ietf.org/html/rfc3156#section-7 + """ + + text = self.run(["--armor", "--export", keyid]) + return MIMEApplication(text, "pgp-keys", encode_noop) + # Message decoding functions. # Detect PGP/GPG-encoded payloads. diff -r 2b340a609c91 -r 06bd68b1338c tests/test_export.py --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/tests/test_export.py Sun Nov 10 19:07:54 2013 +0100 @@ -0,0 +1,16 @@ +#!/usr/bin/env python + +from MoinMessage import GPG +import sys + +if __name__ == "__main__": + keyid = sys.argv[1] + + gpg = GPG() + text = gpg.exportKey(keyid) + + # Show the resulting text. + + print text + +# vim: tabstop=4 expandtab shiftwidth=4