summaryrefslogtreecommitdiff
path: root/src/mailman_pgp/pgp/inline.py
diff options
context:
space:
mode:
authorJ08nY2017-07-27 17:30:51 +0200
committerJ08nY2017-07-27 17:30:51 +0200
commitc401f2c6cc5f0aa4c6de245dcf252d3bbcc920fd (patch)
treefd39f7101ce620ed75b0db20f8961c84c892b94a /src/mailman_pgp/pgp/inline.py
parent6dfc81e703c4ed7518a6342b24abb16f104c17b6 (diff)
downloadmailman-pgp-c401f2c6cc5f0aa4c6de245dcf252d3bbcc920fd.tar.gz
mailman-pgp-c401f2c6cc5f0aa4c6de245dcf252d3bbcc920fd.tar.zst
mailman-pgp-c401f2c6cc5f0aa4c6de245dcf252d3bbcc920fd.zip
Diffstat (limited to 'src/mailman_pgp/pgp/inline.py')
-rw-r--r--src/mailman_pgp/pgp/inline.py22
1 files changed, 22 insertions, 0 deletions
diff --git a/src/mailman_pgp/pgp/inline.py b/src/mailman_pgp/pgp/inline.py
index d505585..d2ea05e 100644
--- a/src/mailman_pgp/pgp/inline.py
+++ b/src/mailman_pgp/pgp/inline.py
@@ -75,6 +75,10 @@ class InlineWrapper:
return any(self._walk(self._is_signed))
def get_signed(self):
+ """
+
+ :return:
+ """
for part in walk(self.msg):
if not part.is_multipart() and self._is_signed(part):
try:
@@ -83,6 +87,15 @@ class InlineWrapper:
continue
yield msg
+ def get_signature(self):
+ """
+
+ :return:
+ """
+ for part in walk(self.msg):
+ if not part.is_multipart() and self._is_signed(part):
+ yield part.get_payload()
+
def _is_encrypted(self, part):
try:
msg = PGPMessage.from_blob(part.get_payload())
@@ -109,6 +122,15 @@ class InlineWrapper:
"""
return any(self._walk(self._is_encrypted))
+ def get_encrypted(self):
+ """
+
+ :return:
+ """
+ for part in walk(self.msg):
+ if not part.is_multipart() and self._is_encrypted(part):
+ yield part.get_payload()
+
def _has_keys(self, part):
try:
dearm = Armorable.ascii_unarmor(part.get_payload())