]> git.ipfire.org Git - thirdparty/haproxy.git/commitdiff
BUG/MINOR: proto-tcp: Take care to initialized tcp_md5sig structure
authorChristopher Faulet <cfaulet@haproxy.com>
Fri, 4 Jul 2025 06:32:05 +0000 (08:32 +0200)
committerChristopher Faulet <cfaulet@haproxy.com>
Fri, 4 Jul 2025 06:32:06 +0000 (08:32 +0200)
When the TCP MD5 signature is enabled, on a listening socket or an outgoing
one, the tcp_md5sig structure must be initialized first.

It is a 3.3-specific issue. No backport needed.

src/proto_tcp.c

index 1e568fd8648b09090ab3a15eb444fb405c0b02aa..b84a4c5e6903e96b2915ecfff0fd6043269fe7a9 100644 (file)
@@ -536,6 +536,7 @@ int tcp_connect_server(struct connection *conn, int flags)
        if (srv && srv->tcp_md5sig) {
                struct tcp_md5sig md5;
 
+               memset(&md5, 0, sizeof(md5));
                if (conn->dst->ss_family == AF_INET)
                        memcpy(&md5.tcpm_addr, (struct sockaddr_in *)conn->dst, sizeof(struct sockaddr_in));
                else
@@ -735,6 +736,7 @@ int tcp_bind_listener(struct listener *listener, char *errmsg, int errlen)
        if (listener->bind_conf->tcp_md5sig) {
                struct tcp_md5sig md5;
 
+               memset(&md5, 0, sizeof(md5));
                if (listener->rx.addr.ss_family == AF_INET)
                        memcpy(&md5.tcpm_addr, (struct sockaddr_in *)&listener->rx.addr, sizeof(struct sockaddr_in));
                else