cvs commit: src/sys/netinet ip_fw2.c
Ganbold
ganbold at micom.mng.net
Sat Sep 27 16:16:19 UTC 2008
Robert Watson wrote:
> rwatson 2008-09-27 10:14:02 UTC
>
> FreeBSD src repository
>
> Modified files:
> sys/netinet ip_fw2.c
> Log:
> SVN rev 183398 on 2008-09-27 10:14:02Z by rwatson
>
> Rather than shadowing global variable 'lookup' in check_uidgid(), rename
> it to ugid_lookupp. This should make debugging issues with ipfw uid
> rules easier.
>
Still panics:
(kgdb) bt
#0 doadump () at pcpu.h:221
#1 0xc07b56fe in boot (howto=260) at /usr/src/sys/kern/kern_shutdown.c:418
#2 0xc07b59c3 in panic (fmt=Variable "fmt" is not available.
) at /usr/src/sys/kern/kern_shutdown.c:572
#3 0xc07b3e86 in _rw_rlock (rw=0xc0e1d9ec, file=0xc284deed
"/usr/src/sys/modules/ipfw/../../netinet/ip_fw2.c", line=2020)
at /usr/src/sys/kern/kern_rwlock.c:283
#4 0xc284c92a in ipfw_chk (args=0xc22c589c) at
/usr/src/sys/modules/ipfw/../../netinet/ip_fw2.c:2020
#5 0xc284d4c8 in ipfw_check_out (arg=0x0, m0=0xc22c59c0,
ifp=0xc25b2c00, dir=2, inp=0xc2731c60)
at /usr/src/sys/modules/ipfw/../../netinet/ip_fw_pfil.c:253
#6 0xc0860458 in pfil_run_hooks (ph=0xc0e1ccc0, mp=0xc22c5a30,
ifp=0xc25b2c00, dir=2, inp=0xc2731c60) at /usr/src/sys/net/pfil.c:79
#7 0xc08a87b2 in ip_output (m=0xc266ac00, opt=0x0, ro=0xc22c5a38,
flags=0, imo=0x0, inp=0xc2731c60)
at /usr/src/sys/netinet/ip_output.c:452
#8 0xc090f5ee in tcp_twrespond (tw=0xc2ae1d68, flags=Variable "flags"
is not available.
) at /usr/src/sys/netinet/tcp_timewait.c:602
#9 0xc090fa46 in tcp_twcheck (inp=0xc2731c60, to=0xc22c5b50,
th=0xc2668958, m=0xc2668900, tlen=0)
at /usr/src/sys/netinet/tcp_timewait.c:407
#10 0xc090482a in tcp_input (m=0xc2668900, off0=20) at
/usr/src/sys/netinet/tcp_input.c:554
#11 0xc08a6dc0 in ip_input (m=0xc2668900) at
/usr/src/sys/netinet/ip_input.c:670
#12 0xc085fc53 in netisr_dispatch (num=2, m=0xc2668900) at
/usr/src/sys/net/netisr.c:178
#13 0xc0859ba1 in ether_demux (ifp=0xc25b2c00, m=0xc2668900) at
/usr/src/sys/net/if_ethersubr.c:842
#14 0xc085a00f in ether_input (ifp=0xc25b2c00, m=0xc2668900) at
/usr/src/sys/net/if_ethersubr.c:700
#15 0xc057fefc in edintr (arg=0xc2534800) at
/usr/src/sys/dev/ed/if_ed.c:1292
#16 0xc0796ef5 in intr_event_execute_handlers (p=0xc24ba7d4,
ie=0xc24d8e00) at /usr/src/sys/kern/kern_intr.c:1134
#17 0xc0797b6f in ithread_loop (arg=0xc2570800) at
/usr/src/sys/kern/kern_intr.c:1147
#18 0xc0794cb8 in fork_exit (callout=0xc0797ad0 <ithread_loop>,
arg=0xc2570800, frame=0xc22c5d38) at /usr/src/sys/kern/kern_fork.c:810
#19 0xc0ab2110 in fork_trampoline () at
/usr/src/sys/i386/i386/exception.s:270
(kgdb) fr 4
#4 0xc284c92a in ipfw_chk (args=0xc22c589c) at
/usr/src/sys/modules/ipfw/../../netinet/ip_fw2.c:2020
2020 INP_INFO_RLOCK(pi);
(kgdb) p inp
No symbol "inp" in current context.
(kgdb) p lookup
$1 = {int (struct nameidata *)} 0xc0831e60 <lookup>
(kgdb) p pi
No symbol "pi" in current context.
(kgdb) fr 5
#5 0xc284d4c8 in ipfw_check_out (arg=0x0, m0=0xc22c59c0,
ifp=0xc25b2c00, dir=2, inp=0xc2731c60)
at /usr/src/sys/modules/ipfw/../../netinet/ip_fw_pfil.c:253
253 ipfw = ipfw_chk(&args);
(kgdb) p inp
$2 = (struct inpcb *) 0xc2731c60
(kgdb) p lookup
$3 = {int (struct nameidata *)} 0xc0831e60 <lookup>
(kgdb) list
248 }
249
250 args.m = *m0;
251 args.oif = ifp;
252 args.inp = inp;
253 ipfw = ipfw_chk(&args);
254 *m0 = args.m;
255 tee = 0;
256
257 KASSERT(*m0 != NULL || ipfw == IP_FW_DENY, ("%s: m0 is NULL",
(kgdb) fr 4
#4 0xc284c92a in ipfw_chk (args=0xc22c589c) at
/usr/src/sys/modules/ipfw/../../netinet/ip_fw2.c:2020
2020 h = 0;
(kgdb) list
2015 dcard = INPLOOKUP_WILDCARD;
2016 pi = &V_udbinfo;
2017 } else
2018 return 0;
2019 match = 0;
2020 if (*ugid_lookupp == 0) {
2021 INP_INFO_RLOCK(pi);
2022 pcb = (oif) ?
2023 in_pcblookup_hash(pi,
2024 dst_ip, htons(dst_port),
(kgdb) p ugid_lookupp
No symbol "ugid_lookupp" in current context.
(kgdb) p *ugid_lookupp
No symbol "ugid_lookupp" in current context.
(kgdb) fr 5
#5 0xc284d4c8 in ipfw_check_out (arg=0x0, m0=0xc22c59c0,
ifp=0xc25b2c00, dir=2, inp=0xc2731c60)
at /usr/src/sys/modules/ipfw/../../netinet/ip_fw_pfil.c:253
253 ipfw = ipfw_chk(&args);
(kgdb) p *ugid_lookupp
No symbol "ugid_lookupp" in current context.
(kgdb)
>
> MFC after: 3 days
>
> Revision Changes Path
> 1.194 +8 -8 src/sys/netinet/ip_fw2.c
> _______________________________________________
> cvs-all at freebsd.org mailing list
> http://lists.freebsd.org/mailman/listinfo/cvs-all
> To unsubscribe, send any mail to "cvs-all-unsubscribe at freebsd.org"
>
>
>
>
--
Where there's a will, there's an Inheritance Tax.
More information about the cvs-src
mailing list