|
|
@ -133,11 +133,10 @@ def postfix_sender_map(sender):
|
|
|
|
|
|
|
|
|
|
|
|
@internal.route("/postfix/sender/login/<path:sender>")
|
|
|
|
@internal.route("/postfix/sender/login/<path:sender>")
|
|
|
|
def postfix_sender_login(sender):
|
|
|
|
def postfix_sender_login(sender):
|
|
|
|
has_wildcard_senders = bool(flask.current_app.config["WILDCARD_SENDERS"])
|
|
|
|
wildcard_senders = [s for s in config.get('WILDCARD_SENDERS', '').lower().replace(' ', '').split(',') if s]
|
|
|
|
wildcard_senders = flask.current_app.config["WILDCARD_SENDERS"].lower().split(',') if has_wildcard_senders else []
|
|
|
|
|
|
|
|
localpart, domain_name = models.Email.resolve_domain(sender)
|
|
|
|
localpart, domain_name = models.Email.resolve_domain(sender)
|
|
|
|
if localpart is None:
|
|
|
|
if localpart is None:
|
|
|
|
return flask.jsonify(",".join(wildcard_senders)) if has_wildcard_senders else flask.abort(404)
|
|
|
|
return flask.jsonify(",".join(wildcard_senders)) if wildcard_senders else flask.abort(404)
|
|
|
|
destination = models.Email.resolve_destination(localpart, domain_name, True)
|
|
|
|
destination = models.Email.resolve_destination(localpart, domain_name, True)
|
|
|
|
destination = [*destination, *wildcard_senders] if destination else [*wildcard_senders]
|
|
|
|
destination = [*destination, *wildcard_senders] if destination else [*wildcard_senders]
|
|
|
|
return flask.jsonify(",".join(destination)) if destination else flask.abort(404)
|
|
|
|
return flask.jsonify(",".join(destination)) if destination else flask.abort(404)
|
|
|
|