diff --git a/.gitignore b/.gitignore index 5deb70a..68ecb9b 100644 --- a/.gitignore +++ b/.gitignore @@ -1,9 +1,4 @@ venv/ -__pycache__/ .idea/ -# misc testing scripts -testing*.py -# i have a symlink here so testing scripts can import gpgmymail -# as python expects `import gpgmymail` to be importing `gpgmymail.py` -gpgmymail.py +testing.py diff --git a/gpgmymail b/gpgmymail index 21c46e6..a3c230f 100755 --- a/gpgmymail +++ b/gpgmymail @@ -49,26 +49,6 @@ def is_message_encrypted(message: email.message.Message) -> bool: return message.get_content_subtype() == "encrypted" -def decode_email(message: email.message.Message) -> email.message.Message: - """Turn a quoted-printable or base64 encoded email into a 7or8bit encoded - email - - :param message: email.message.Message to be decoded - :return: decoded email.message.Message""" - if message.is_multipart(): - payload = [] - for part in message.walk(): - if not part.is_multipart(): - payload.append(part.get_payload(decode=True)) - - message.set_payload(payload) - else: - message.set_payload(message.get_payload(decode=True)) - - message["Content-Transfer-Encoding"] = "7bit" - - return message - def encrypt( message: email.message.Message, recipients: typing.List[str], @@ -87,14 +67,10 @@ def encrypt( :return: The encrypted email as a string""" - # exclusion criteria: # some mail clients like Thunderbird don't like twice-encrypted emails, # so we return the message as-is if it's already encrypted if is_message_encrypted(message) and not unconditionally_encrypt: return message.as_string() - - # make necessary changes to message - message = decode_email(message) gpg = gnupg.GPG() gpg.encoding = encoding