upgrade key when signed by old key
[keymanager.git] / src / leap / keymanager / validation.py
index b3aff3e..c6fe478 100644 (file)
@@ -60,8 +60,6 @@ def can_upgrade(new_key, old_key):
     :type old_key: EncryptionKey
     :rtype: bool
     """
-    # XXX implement key signature checking (#6120)
-
     # First contact
     if old_key is None:
         return True
@@ -90,4 +88,8 @@ def can_upgrade(new_key, old_key):
             new_key.validation > old_key.validation):
         return True
 
+    # New key signed by the old key
+    if old_key.key_id in new_key.signatures:
+        return True
+
     return False