From: Stephan Bosch Date: Sat, 20 Nov 2021 22:43:28 +0000 (+0100) Subject: submission-login: submission-proxy - Properly handle IPv6 in redirect. X-Git-Tag: 2.4.0~4677 X-Git-Url: http://git.ipfire.org/?a=commitdiff_plain;h=6088ad289639cf7cbe74cb1d594dd33e391d945e;p=thirdparty%2Fdovecot%2Fcore.git submission-login: submission-proxy - Properly handle IPv6 in redirect. --- diff --git a/src/submission-login/submission-proxy.c b/src/submission-login/submission-proxy.c index 6cef403a93..8cb4fefbce 100644 --- a/src/submission-login/submission-proxy.c +++ b/src/submission-login/submission-proxy.c @@ -399,7 +399,12 @@ submission_proxy_parse_redirect(const char *resp, const char **userhostport_r, if (destuser != NULL) str_append(str, destuser); str_append_c(str, '@'); - str_append(str, host); + if (ip.family == AF_INET) + str_append(str, net_ip2addr(&ip)); + else if (ip.family == AF_INET6) + str_printfa(str, "[%s]", net_ip2addr(&ip)); + else + str_append(str, host); if (port != 0) str_printfa(str, ":%u", port); *userhostport_r = str_c(str);