search for pub keys in inline signatures
authorAndrew Engelbrecht <sudoman@ninthfloor.org>
Wed, 12 Aug 2015 16:50:20 +0000 (12:50 -0400)
committerAndrew Engelbrecht <sudoman@ninthfloor.org>
Mon, 7 Dec 2015 18:29:55 +0000 (13:29 -0500)
these ascii-armored signature blocks are obfuscated until they are
decoded. they may contain public keys, so edward now looks inside.

edward

diff --git a/edward b/edward
index 7809b8b3986fee1219b47ea04862c80e31c063a4..3dd4d5b1a94825c7af9090673dca31eb3207ce40 100755 (executable)
--- a/edward
+++ b/edward
@@ -810,6 +810,10 @@ def prepare_for_reply_sig (piece, replyinfo_obj):
         if replyinfo_obj.fallback_target_key == None:
             replyinfo_obj.fallback_target_key = piece.gpg_data.sigs[0]
 
+    if (piece.piece_type == TxtType.signature):
+        # to catch public keys in signature blocks
+        prepare_for_reply(piece.gpg_data.plainobj, replyinfo_obj)
+
 
 def flatten_decrypted_payloads (eddymsg_obj, replyinfo_obj, get_signed_part):
     """For creating a string representation of a signed, encrypted part.