Re: [squid-users] Squid 3.x and wccp2_router crash

From: Amos Jeffries <squid3_at_treenet.co.nz>
Date: Fri, 20 Dec 2013 14:15:55 +1300

On 20/12/2013 5:30 a.m., Don Brearley wrote:
> Hi Amos,
>
>
> I applied your patch to 3.3.9 and recompiled/reinstalled. Same issue
> persists. Here is your
> requested information:
>
<snip>
>
> (gdb) backtrace
> #0 0x0000000802cbe23c in thr_kill () from /lib/libc.so.7
> #1 0x0000000802d6263b in abort () from /lib/libc.so.7
> #2 0x0000000802d45d35 in __assert () from /lib/libc.so.7
> #3 0x00000000006805e7 in Ip::Address::GetSockAddr (this=0x7fffffffd8e0,
> buf=@0x7fffffffd910) at Address.cc:966
> #4 0x0000000000#5 0x00000000006df030 in Comm::DoSelect (msec=) at ModKqueue.cc:301
> #6 0x0000000000679c9d in CommSelectEngine::checkEvents (this=,
> timeout=0) at comm.cc:2088
> #7 0x0000000000523ccc in EventLoop::checkEngine (this=0x7fffffffda70,
> engine=0x7fffffffdaf0, primary=) at EventLoop.cc:52
> #8 0x0000000000523ee5 in EventLoop::runOnce (this=0x7fffffffda70) at
> EventLoop.cc:126
> #9 0x00000000005240a8 in EventLoop::run (this=0x7fffffffda70) at
> EventLoop.cc:96
> #10 0x0000000000598f53 in SquidMain (argc=2, argv=) at main.cc:1520
> #11 0x00000000005992b8 in SquidMainSafe (argc=, argv=) at main.cc:1242
> #12 0x00000000004b6941 in _start ()
> #13 0x00000008009cf000 in ?? ()
> #14 0x0000000000000000 in ?? ()
>
>
> (gdb) frame 4
> #4 0x0000000000604e8f in wccp2HandleUdp (sock=15, not_used=) at
> wccp2.cc:1182
> 1182 from_tmp.GetSockAddr(from);
>
>
> (gdb) print len
> $1 = -1
>
>
> (gdb) print from
> $2 = {sin_len = 255 '�', sin_family = 255 '�', sin_port = 65535,
> sin_addr = {s_addr = 4294967295}, sin_zero = "��������"}
>
>

Aha!. Random crap being left in the sockaddr_in value on failed packet
receives.

If you move the if(len<0) check above the crashing line
from_tmp.GetSockAddr(from) it should start working.

I will have a patch for you in a few hrs when I get back to machines.

Amos
Received on Fri Dec 20 2013 - 01:16:10 MST

This archive was generated by hypermail 2.2.0 : Fri Dec 20 2013 - 12:00:06 MST