From: Amos Jeffries Date: Mon, 15 Sep 2008 16:03:21 +0000 (+1200) Subject: more bits X-Git-Tag: SQUID_3_1_0_1~49^2~18^2~8 X-Git-Url: http://git.ipfire.org/gitweb/?a=commitdiff_plain;h=ee2143cbb304689ecfe43054308fba15e002fe2e;p=thirdparty%2Fsquid.git more bits --- diff --git a/src/IPInterception.cc b/src/IPInterception.cc index 4a8031f41f..677298767f 100644 --- a/src/IPInterception.cc +++ b/src/IPInterception.cc @@ -158,10 +158,11 @@ int IPIntercept::NetfilterTransparent(int fd, const IPAddress &me, IPAddress &dst, int silent) { #if LINUX_NETFILTER + int tmp = 0; /** \par * Try lookup for TPROXY targets. BUT, only if the FD is flagged for transparent operations. */ - if(getsockopt(fd, SOL_IP, IP_TRANSPARENT, NULL, 0) != 0) { + if(getsockopt(fd, SOL_IP, IP_TRANSPARENT, NULL, &tmp) != 0) { if(!silent) { debugs(89, DBG_IMPORTANT, HERE << " NF getsockopt(IP_TRANSPARENT) failed on FD " << fd << ": " << xstrerror()); last_reported = squid_curtime; @@ -171,6 +172,8 @@ IPIntercept::NetfilterTransparent(int fd, const IPAddress &me, IPAddress &dst, i else { // mark the socket for preservation of IP_TRANSPARENT fd_table[fd].flags.transparent = 1; + dst = me; + debugs(89, 9, HERE << "address: me= " << me << ", dst= " << dst); return 0; }