summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authordrebs <drebs@leap.se>2013-11-21 10:25:28 -0200
committerdrebs <drebs@leap.se>2013-11-21 17:35:38 -0200
commit6ced546f8787fb952297c6281192c73b5b78194f (patch)
tree88b8c651abd52f03c267e3ab12d602a3bfe7472e
parent46ccf635c44aeffb75c95845b8b4cc9ce2b1c4a4 (diff)
Add a footer to outgoing messages that point to where sender keys can be feched. Closes #4526.
-rw-r--r--changes/feature_4526_add-footer-to-outgoing-email2
-rw-r--r--src/leap/mail/smtp/gateway.py13
2 files changed, 14 insertions, 1 deletions
diff --git a/changes/feature_4526_add-footer-to-outgoing-email b/changes/feature_4526_add-footer-to-outgoing-email
new file mode 100644
index 0000000..60308ad
--- /dev/null
+++ b/changes/feature_4526_add-footer-to-outgoing-email
@@ -0,0 +1,2 @@
+ o Add a footer to outgoing email pointing to the address where sender keys
+ can be fetched. Closes #4526.
diff --git a/src/leap/mail/smtp/gateway.py b/src/leap/mail/smtp/gateway.py
index f09ee14..523ac0d 100644
--- a/src/leap/mail/smtp/gateway.py
+++ b/src/leap/mail/smtp/gateway.py
@@ -333,6 +333,8 @@ class EncryptedMessage(object):
"""
implements(smtp.IMessage)
+ FOOTER_STRING = "I prefer encrypted email"
+
def __init__(self, fromAddress, user, keymanager, host, port, cert, key):
"""
Initialize the encrypted message.
@@ -597,7 +599,16 @@ class EncryptedMessage(object):
self._msg = self._origmsg
return
+ # add a nice footer to the outgoing message
from_address = validate_address(self._fromAddress.addrstr)
+ username, domain = from_address.split('@')
+ self.lines.append('--')
+ self.lines.append('%s - https://%s/key/%s.' %
+ (self.FOOTER_STRING, domain, username))
+ self.lines.append('')
+ self._origmsg = self.parseMessage()
+
+ # get sender and recipient data
signkey = self._km.get_key(from_address, OpenPGPKey, private=True)
log.msg("Will sign the message with %s." % signkey.fingerprint)
to_address = validate_address(self._user.dest.addrstr)
@@ -672,6 +683,6 @@ class EncryptedMessage(object):
username, domain = signkey.address.split('@')
newmsg.add_header(
'OpenPGP', 'id=%s' % signkey.key_id,
- url='https://%s/openpgp/%s' % (domain, username))
+ url='https://%s/key/%s' % (domain, username))
# delete user-agent from origmsg
del(origmsg['user-agent'])