From: Aki Tuomi Date: Thu, 16 Mar 2017 08:01:23 +0000 (+0200) Subject: imap-login: Forward original client ID to next hop X-Git-Tag: 2.3.0.rc1~1924 X-Git-Url: http://git.ipfire.org/?a=commitdiff_plain;h=a9523ec8f6c32ccdfe3a78d743a9cd749c3eb3aa;p=thirdparty%2Fdovecot%2Fcore.git imap-login: Forward original client ID to next hop This will be done if ID is present. --- diff --git a/src/imap-login/imap-proxy.c b/src/imap-login/imap-proxy.c index 1b6b25e65d..eddc7260fb 100644 --- a/src/imap-login/imap-proxy.c +++ b/src/imap-login/imap-proxy.c @@ -29,8 +29,13 @@ static void proxy_write_id(struct imap_client *client, string_t *str) { i_assert(client->common.proxy_ttl > 1); - str_printfa(str, "I ID (" - "\"x-session-id\" \"%s\" " + str_append(str, "I ID ("); + if (client->common.client_id != NULL && + str_len(client->common.client_id) > 0) { + str_append_str(str, client->common.client_id); + str_append_c(str, ' '); + } + str_printfa(str, "\"x-session-id\" \"%s\" " "\"x-originating-ip\" \"%s\" " "\"x-originating-port\" \"%u\" " "\"x-connected-ip\" \"%s\" "