From ff1dfec39aa85df24a6f6e8bf74aec3337b88883 Mon Sep 17 00:00:00 2001 From: Philip Rosenberg-Watt Date: Sun, 9 Feb 2020 07:25:45 -0700 Subject: [PATCH] Add port to relay if it contains a colon This closes #1357 --- core/admin/mailu/internal/views/postfix.py | 6 +++++- towncrier/newsfragments/1357.feature | 1 + 2 files changed, 6 insertions(+), 1 deletion(-) create mode 100644 towncrier/newsfragments/1357.feature diff --git a/core/admin/mailu/internal/views/postfix.py b/core/admin/mailu/internal/views/postfix.py index 21a4aa91..0843b147 100644 --- a/core/admin/mailu/internal/views/postfix.py +++ b/core/admin/mailu/internal/views/postfix.py @@ -36,7 +36,11 @@ def postfix_transport(email): return flask.abort(404) localpart, domain_name = models.Email.resolve_domain(email) relay = models.Relay.query.get(domain_name) or flask.abort(404) - return flask.jsonify("smtp:[{}]".format(relay.smtp)) + ret = "smtp:[{0}]".format(relay.smtp) + if ":" in relay.smtp: + split = relay.smtp.split(':') + ret = "smtp:[{0}]:{1}".format(split[0], split[1]) + return flask.jsonify(ret) @internal.route("/postfix/sender/login/") diff --git a/towncrier/newsfragments/1357.feature b/towncrier/newsfragments/1357.feature new file mode 100644 index 00000000..56fa443f --- /dev/null +++ b/towncrier/newsfragments/1357.feature @@ -0,0 +1 @@ +Relay a domain to a nonstandard SMTP port by adding ":" to the remote hostname or IP address. \ No newline at end of file