Handle bytes properly

Fix bytes sequences handling after auto-migration.
This commit is contained in:
Piotr F. Mieszkowski 2022-01-09 17:56:09 +01:00
parent b2a01c15b0
commit 1e7d33c1df
2 changed files with 9 additions and 4 deletions

View File

@ -58,6 +58,7 @@ def public_keys( keyhome ):
fingerprint = None fingerprint = None
email = None email = None
for line in p.stdout.readlines(): for line in p.stdout.readlines():
line = line.decode('utf-8')
if line[0:3] == LINE_FINGERPRINT: if line[0:3] == LINE_FINGERPRINT:
fingerprint = line.split(':')[POS_FINGERPRINT] fingerprint = line.split(':')[POS_FINGERPRINT]
if line[0:3] == LINE_USER_ID: if line[0:3] == LINE_USER_ID:
@ -120,7 +121,7 @@ def delete_key( keyhome, email ):
class GPGEncryptor: class GPGEncryptor:
def __init__(self, keyhome, recipients = None, charset = None): def __init__(self, keyhome, recipients = None, charset = None):
self._keyhome = keyhome self._keyhome = keyhome
self._message = '' self._message = b''
self._recipients = list() self._recipients = list()
self._charset = charset self._charset = charset
if recipients != None: if recipients != None:

View File

@ -470,7 +470,7 @@ def encrypt_all_payloads_mime( message, gpg_to_cmdline ):
def encrypt_payload( payload, gpg_to_cmdline, check_nested = True ): def encrypt_payload( payload, gpg_to_cmdline, check_nested = True ):
raw_payload = payload.get_payload(decode=True) raw_payload = payload.get_payload(decode=True)
if check_nested and "-----BEGIN PGP MESSAGE-----" in raw_payload and "-----END PGP MESSAGE-----" in raw_payload: if check_nested and b"-----BEGIN PGP MESSAGE-----" in raw_payload and b"-----END PGP MESSAGE-----" in raw_payload:
if verbose: if verbose:
log("Message is already pgp encrypted. No nested encryption needed.") log("Message is already pgp encrypted. No nested encryption needed.")
return payload return payload
@ -596,9 +596,13 @@ def sanitize_case_sense( address ):
if get_bool_from_cfg('default', 'mail_case_insensitive', 'yes'): if get_bool_from_cfg('default', 'mail_case_insensitive', 'yes'):
address = address.lower() address = address.lower()
else: else:
splitted_address = address.split('@') if isinstance(address, str):
sep = '@'
else:
sep = b'@'
splitted_address = address.split(sep)
if len(splitted_address) > 1: if len(splitted_address) > 1:
address = splitted_address[0] + '@' + splitted_address[1].lower() address = splitted_address[0] + sep + splitted_address[1].lower()
return address return address