summaryrefslogtreecommitdiff
path: root/src/mailman_pgp/commands/eml_key.py
diff options
context:
space:
mode:
Diffstat (limited to 'src/mailman_pgp/commands/eml_key.py')
-rw-r--r--src/mailman_pgp/commands/eml_key.py36
1 files changed, 36 insertions, 0 deletions
diff --git a/src/mailman_pgp/commands/eml_key.py b/src/mailman_pgp/commands/eml_key.py
new file mode 100644
index 0000000..03c0877
--- /dev/null
+++ b/src/mailman_pgp/commands/eml_key.py
@@ -0,0 +1,36 @@
+"""The key email command."""
+
+from mailman.interfaces.command import ContinueProcessing, IEmailCommand
+from public import public
+from zope.interface import implementer
+
+
+@public
+@implementer(IEmailCommand)
+class KeyCommand:
+ name = 'key'
+ argument_description = '<change|revoke|sign>'
+ short_description = ''
+ description = ''
+
+ def process(self, mlist, msg, msgdata, arguments, results):
+ """See `IEmailCommand`."""
+ if len(arguments) == 0:
+ print('No sub-command specified,'
+ ' must be one of <change|revoke|sign>.', file=results)
+ return ContinueProcessing.no
+ if arguments[0] == 'change':
+ # New public key in attachment, requires to be signed with current
+ # key
+ pass
+ elif arguments[0] == 'revoke':
+ # Current key revocation certificate in attachment, restarts the
+ # subscription process, or rather only it's key setup part.
+ pass
+ elif arguments[0] == 'sign':
+ # List public key attached, signed by the users current key.
+ pass
+ else:
+ print('Wrong sub-command specified,'
+ ' must be one of <change|revoke|sign>.', file=results)
+ return ContinueProcessing.no