aports/main/dovecot/submission-proxy-Add-IPV6-prefix-to-IPv6-addresses.patch

28 lines
1.2 KiB
Diff

From 88751f93d04816313f0fbcafe3a7fc018f5b9328 Mon Sep 17 00:00:00 2001
From: Aki Tuomi <aki.tuomi@open-xchange.com>
Date: Tue, 5 Apr 2022 14:33:48 +0300
Subject: [PATCH] submission-proxy: Add IPV6: prefix to IPv6 addresses
This is required by the Postfix XCLIENT protocol.
---
src/submission-login/submission-proxy.c | 6 ++++--
1 file changed, 4 insertions(+), 2 deletions(-)
diff --git a/src/submission-login/submission-proxy.c b/src/submission-login/submission-proxy.c
index 4965ca4612..b6b6b61b12 100644
--- a/src/submission-login/submission-proxy.c
+++ b/src/submission-login/submission-proxy.c
@@ -177,8 +177,10 @@ proxy_send_xclient(struct submission_client *client, struct ostream *output)
t_strdup_printf("%u", client->common.remote_port));
}
if (str_array_icase_find(client->proxy_xclient, "ADDR")) {
- proxy_send_xclient_more(client, output, str, "ADDR",
- net_ip2addr(&client->common.ip));
+ const char *addr = net_ip2addr(&client->common.ip);
+ if (client->common.ip.family == AF_INET6)
+ addr = t_strconcat("IPV6:", addr, NULL);
+ proxy_send_xclient_more(client, output, str, "ADDR", addr);
}
if (str_array_icase_find(client->proxy_xclient, "SESSION")) {
proxy_send_xclient_more(client, output, str, "SESSION",