diff options
| author | J08nY | 2017-08-02 20:48:31 +0200 |
|---|---|---|
| committer | J08nY | 2017-08-02 20:48:31 +0200 |
| commit | ffafcc3d57eba95095b64dbaad78bb6785266dc2 (patch) | |
| tree | 3dbb983f9c34b038a25f561ffc92fbe5781f130c /src/mailman_pgp/commands/eml_key.py | |
| parent | 7d75ff06f2601dbc43327ccdb383a8ecdbf73720 (diff) | |
| download | mailman-pgp-ffafcc3d57eba95095b64dbaad78bb6785266dc2.tar.gz mailman-pgp-ffafcc3d57eba95095b64dbaad78bb6785266dc2.tar.zst mailman-pgp-ffafcc3d57eba95095b64dbaad78bb6785266dc2.zip | |
Diffstat (limited to 'src/mailman_pgp/commands/eml_key.py')
| -rw-r--r-- | src/mailman_pgp/commands/eml_key.py | 12 |
1 files changed, 3 insertions, 9 deletions
diff --git a/src/mailman_pgp/commands/eml_key.py b/src/mailman_pgp/commands/eml_key.py index 0d5fa1e..e182451 100644 --- a/src/mailman_pgp/commands/eml_key.py +++ b/src/mailman_pgp/commands/eml_key.py @@ -23,7 +23,6 @@ from mailman.interfaces.command import ContinueProcessing, IEmailCommand from mailman.interfaces.pending import IPendings from mailman.interfaces.subscriptions import ISubscriptionManager from mailman.interfaces.usermanager import IUserManager -from pgpy.constants import KeyFlags from public import public from zope.component import getUtility from zope.interface import implementer @@ -35,6 +34,7 @@ from mailman_pgp.model.list import PGPMailingList from mailman_pgp.pgp.mime import MIMEWrapper from mailman_pgp.pgp.wrapper import PGPWrapper from mailman_pgp.utils.email import get_email +from mailman_pgp.utils.pgp import key_usable from mailman_pgp.workflows.key_change import (CHANGE_CONFIRM_REQUEST, KeyChangeModWorkflow, KeyChangeWorkflow) @@ -77,10 +77,7 @@ def _cmd_set(pgp_list, mlist, msg, msgdata, arguments, results): file=results) return ContinueProcessing.no - usage_flags = key.usage_flags() - for subkey in key.subkeys.values(): - usage_flags |= subkey.usage_flags() - if KeyFlags.EncryptCommunications not in usage_flags: + if not key_usable(key): print('Need a key which can be used to encrypt communications.', file=results) return ContinueProcessing.no @@ -231,10 +228,7 @@ def _cmd_change(pgp_list, mlist, msg, msgdata, arguments, results): file=results) return ContinueProcessing.no - usage_flags = key.usage_flags() - for subkey in key.subkeys.values(): - usage_flags |= subkey.usage_flags() - if KeyFlags.EncryptCommunications not in usage_flags: + if not key_usable(key): print('Need a key which can be used to encrypt communications.', file=results) return ContinueProcessing.no |
