From 6f831b446cfc306ddbdeaa7844eeffe8dd34ad69 Mon Sep 17 00:00:00 2001 From: Willy Tarreau Date: Sun, 20 Mar 2011 14:03:54 +0100 Subject: [PATCH] [BUILD] proto_tcp: fix build issue with CTTPROXY Recent sockaddr_storage changes broke the almost unused cttproxy code. Fix is obvious. --- src/proto_tcp.c | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/src/proto_tcp.c b/src/proto_tcp.c index d40f85c419..3c8a04f717 100644 --- a/src/proto_tcp.c +++ b/src/proto_tcp.c @@ -164,13 +164,13 @@ int tcp_bind_socket(int fd, int flags, struct sockaddr_storage *local, struct so return 0; #ifdef CONFIG_HAP_CTTPROXY - if (!foreign_ok) { + if (!foreign_ok && remote->ss_family == AF_INET) { struct in_tproxy itp1, itp2; memset(&itp1, 0, sizeof(itp1)); itp1.op = TPROXY_ASSIGN; - itp1.v.addr.faddr = bind_addr.sin_addr; - itp1.v.addr.fport = bind_addr.sin_port; + itp1.v.addr.faddr = ((struct sockaddr_in *)&bind_addr)->sin_addr; + itp1.v.addr.fport = ((struct sockaddr_in *)&bind_addr)->sin_port; /* set connect flag on socket */ itp2.op = TPROXY_FLAGS; -- 2.47.3