aboutsummaryrefslogtreecommitdiff
path: root/src/mailman_pgp/workflows
diff options
context:
space:
mode:
authorJ08nY2017-07-11 21:31:40 +0200
committerJ08nY2017-07-11 21:31:40 +0200
commitbeff82c480fa4f9acaede60a5f789e880721cc81 (patch)
treec08fb6ccd208097411eb6c2cab38281ab82fea7a /src/mailman_pgp/workflows
parent32cbc0b7da7e62fb4acdd4ce9e484a7109a32317 (diff)
downloadmailman-pgp-beff82c480fa4f9acaede60a5f789e880721cc81.tar.gz
mailman-pgp-beff82c480fa4f9acaede60a5f789e880721cc81.tar.zst
mailman-pgp-beff82c480fa4f9acaede60a5f789e880721cc81.zip
Diffstat (limited to 'src/mailman_pgp/workflows')
-rw-r--r--src/mailman_pgp/workflows/base.py18
1 files changed, 14 insertions, 4 deletions
diff --git a/src/mailman_pgp/workflows/base.py b/src/mailman_pgp/workflows/base.py
index 4ca1525..ace8f91 100644
--- a/src/mailman_pgp/workflows/base.py
+++ b/src/mailman_pgp/workflows/base.py
@@ -65,11 +65,21 @@ class PubkeyMixin:
def _step_pubkey_checks(self):
self.push('restore_subscriber')
- if not self.pubkey:
- self.push('send_key_request')
+
+ pgp_address = PGPAddress.for_address(self.address)
+
+ if pgp_address is not None:
+ if not pgp_address.key:
+ self.push('send_key_request')
+ else:
+ if not pgp_address.key_confirmed:
+ self.push('send_key_confirm_request')
else:
- if not self.pubkey_confirmed:
- self.push('send_key_confirm_request')
+ if not self.pubkey:
+ self.push('send_key_request')
+ else:
+ if not self.pubkey_confirmed:
+ self.push('send_key_confirm_request')
def _step_send_key_request(self):
self._set_token(TokenOwner.subscriber)