From: Willy Tarreau Date: Sun, 20 Mar 2011 13:03:54 +0000 (+0100) Subject: [BUILD] proto_tcp: fix build issue with CTTPROXY X-Git-Tag: v1.5-dev8~270 X-Git-Url: http://git.ipfire.org/?a=commitdiff_plain;h=6f831b446cfc306ddbdeaa7844eeffe8dd34ad69;p=thirdparty%2Fhaproxy.git [BUILD] proto_tcp: fix build issue with CTTPROXY Recent sockaddr_storage changes broke the almost unused cttproxy code. Fix is obvious. --- 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;