make DKIM_PRIVATE_KEY_PATH optional
This commit is contained in:
parent
819738f55c
commit
3c8ec8fcf2
|
@ -147,14 +147,15 @@ DISABLE_ALIAS_SUFFIX = "DISABLE_ALIAS_SUFFIX" in os.environ
|
|||
# the email address that receives all unsubscription request
|
||||
UNSUBSCRIBER = os.environ.get("UNSUBSCRIBER")
|
||||
|
||||
DKIM_PRIVATE_KEY_PATH = get_abs_path(os.environ["DKIM_PRIVATE_KEY_PATH"])
|
||||
DKIM_SELECTOR = b"dkim"
|
||||
|
||||
with open(DKIM_PRIVATE_KEY_PATH) as f:
|
||||
DKIM_PRIVATE_KEY = f.read()
|
||||
|
||||
|
||||
DKIM_HEADERS = [b"from", b"to"]
|
||||
DKIM_PRIVATE_KEY = None
|
||||
|
||||
if "DKIM_PRIVATE_KEY_PATH" in os.environ:
|
||||
DKIM_PRIVATE_KEY_PATH = get_abs_path(os.environ["DKIM_PRIVATE_KEY_PATH"])
|
||||
with open(DKIM_PRIVATE_KEY_PATH) as f:
|
||||
DKIM_PRIVATE_KEY = f.read()
|
||||
|
||||
|
||||
# Database
|
||||
DB_URI = os.environ["DB_URI"]
|
||||
|
|
|
@ -385,18 +385,19 @@ def add_dkim_signature(msg: Message, email_domain: str):
|
|||
|
||||
# Specify headers in "byte" form
|
||||
# Generate message signature
|
||||
sig = dkim.sign(
|
||||
to_bytes(msg),
|
||||
DKIM_SELECTOR,
|
||||
email_domain.encode(),
|
||||
DKIM_PRIVATE_KEY.encode(),
|
||||
include_headers=DKIM_HEADERS,
|
||||
)
|
||||
sig = sig.decode()
|
||||
if DKIM_PRIVATE_KEY:
|
||||
sig = dkim.sign(
|
||||
to_bytes(msg),
|
||||
DKIM_SELECTOR,
|
||||
email_domain.encode(),
|
||||
DKIM_PRIVATE_KEY.encode(),
|
||||
include_headers=DKIM_HEADERS,
|
||||
)
|
||||
sig = sig.decode()
|
||||
|
||||
# remove linebreaks from sig
|
||||
sig = sig.replace("\n", " ").replace("\r", "")
|
||||
msg["DKIM-Signature"] = sig[len("DKIM-Signature: ") :]
|
||||
# remove linebreaks from sig
|
||||
sig = sig.replace("\n", " ").replace("\r", "")
|
||||
msg["DKIM-Signature"] = sig[len("DKIM-Signature: ") :]
|
||||
|
||||
|
||||
def add_or_replace_header(msg: Message, header: str, value: str):
|
||||
|
|
|
@ -70,7 +70,7 @@ EMAIL_SERVERS_WITH_PRIORITY=[(10, "email.hostname.")]
|
|||
# POSTFIX_SERVER=my-postfix.com
|
||||
|
||||
# the DKIM private key used to compute DKIM-Signature
|
||||
DKIM_PRIVATE_KEY_PATH=local_data/dkim.key
|
||||
# DKIM_PRIVATE_KEY_PATH=local_data/dkim.key
|
||||
|
||||
# delete and recreate the sqlite database, for local development
|
||||
RESET_DB=true
|
||||
|
|
Loading…
Reference in New Issue