summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--changes/bug_importascii3
-rw-r--r--src/leap/mx/mail_receiver.py10
2 files changed, 9 insertions, 4 deletions
diff --git a/changes/bug_importascii b/changes/bug_importascii
new file mode 100644
index 0000000..902df95
--- /dev/null
+++ b/changes/bug_importascii
@@ -0,0 +1,3 @@
+ o Use the new API to import a new ascii armored public key. Fixes
+ #3352.
+ o Add "incoming" index for ease of listing new email. \ No newline at end of file
diff --git a/src/leap/mx/mail_receiver.py b/src/leap/mx/mail_receiver.py
index b4e0d18..43925df 100644
--- a/src/leap/mx/mail_receiver.py
+++ b/src/leap/mx/mail_receiver.py
@@ -116,18 +116,20 @@ class MailReceiver(Service):
if pubkey is None or len(pubkey) == 0:
doc.content = {
+ "incoming": True,
"_enc_scheme": EncryptionSchemes.NONE,
"_enc_json": json.dumps(data)
}
return uuid, doc
- def _ascii_to_openpgp_cb(gpg):
+ openpgp_key = None
+ with openpgp.temporary_gpgwrapper() as gpg:
+ gpg.import_keys(pubkey)
key = gpg.list_keys().pop()
- return openpgp._build_key_from_gpg(address, key, pubkey)
-
- openpgp_key = openpgp._safe_call(_ascii_to_openpgp_cb, pubkey)
+ openpgp_key = openpgp._build_key_from_gpg(address, key, pubkey)
doc.content = {
+ "incoming": True,
"_enc_scheme": EncryptionSchemes.PUBKEY,
"_enc_json": openpgp.encrypt_asym(json.dumps(data),
openpgp_key)