dataset/seed/applicationservice/2022.03.08/postfix-relay/funcs/opendkim.py

30 lines
962 B
Python
Raw Normal View History

2022-03-08 19:42:28 +01:00
import dkim.dknewkey as _dknewkey
from os.path import dirname as _dirname, abspath as _abspath, join as _join, isfile as _isfile, isdir as _isdir
from os import makedirs as _makedirs
from shutil import rmtree as _rmtree
import __main__
def _eprint(*args, **kwargs):
pass
_dknewkey.eprint = _eprint
2022-03-15 12:12:56 +01:00
_HERE = _dirname(_abspath(__main__.__file__))
_DKIM_DIR = _join(_HERE, 'pki/dkim')
2022-03-08 19:42:28 +01:00
def get_dkim_key(domain_name_eth0, domain):
2022-03-15 12:12:56 +01:00
dkim_dir = _join(_DKIM_DIR, domain_name_eth0, domain)
2022-03-08 19:42:28 +01:00
dkim_file_src = _join(dkim_dir, f'{domain}')
dkim_file_key = _join(dkim_dir, f'{domain}.key')
dkim_file = _join(dkim_dir, f'{domain}.dns')
if not _isfile(dkim_file):
if _isdir(dkim_dir):
_rmtree(dkim_dir)
_makedirs(dkim_dir)
priv_key = _dknewkey.GenEd25519Keys(dkim_file_src)
_dknewkey.ExtractEd25519PublicKey(dkim_file_key, priv_key)
with open(dkim_file_key, 'r') as fh:
return fh.read().strip()