freebsd-skq/sys/netinet
Robert Watson 76ec7b2f60 The function arpintr() incorrectly checks m->m_len to detect incomplete
ARP packets. This can incorrectly reject complete frames since the frame
could be stored in more than one mbuf.

The following patches fix the length comparisson, and add several
diagnostic log messages to the interrupt handler for out-of-the-norm ARP
packets. This should make ARP problems easier to detect, diagnose and
fix.

Submitted by:	C. Stephen Gunn <csg@waterspout.com>
Approved by:	jkh
Reviewed by:	rwatson
2000-03-11 00:24:29 +00:00
..
libalias Remove single-space hard sentence breaks. These degrade the quality 2000-03-02 09:14:21 +00:00
fil.c Bring over ipfilter v3_3_8 kernel sources, including merging the 2000-02-09 20:56:36 +00:00
icmp6.h Forbid include of soem inet6 header files from wrong place 2000-02-10 19:33:58 +00:00
icmp_var.h Change #ifdef KERNEL to #ifdef _KERNEL in the public headers. "KERNEL" 1999-12-29 04:46:21 +00:00
if_atm.c udp IPv6 support, IPv6/IPv4 tunneling support in kernel, 1999-12-07 17:39:16 +00:00
if_atm.h Forward declare some structs so that this file is more self-sufficient. 1998-02-03 21:52:02 +00:00
if_ether.c The function arpintr() incorrectly checks m->m_len to detect incomplete 2000-03-11 00:24:29 +00:00
if_ether.h Change #ifdef KERNEL to #ifdef _KERNEL in the public headers. "KERNEL" 1999-12-29 04:46:21 +00:00
if_fddi.h Change #ifdef KERNEL to #ifdef _KERNEL in the public headers. "KERNEL" 1999-12-29 04:46:21 +00:00
igmp_var.h Change #ifdef KERNEL to #ifdef _KERNEL in the public headers. "KERNEL" 1999-12-29 04:46:21 +00:00
igmp.c IPSEC support in the kernel. 1999-12-22 19:13:38 +00:00
igmp.h $Id$ -> $FreeBSD$ 1999-08-28 01:08:13 +00:00
in_cksum.c $Id$ -> $FreeBSD$ 1999-08-28 01:08:13 +00:00
in_gif.c IPSEC support in the kernel. 1999-12-22 19:13:38 +00:00
in_gif.h add forward declarations, and small cosmetic changes. 2000-01-15 05:20:40 +00:00
in_hostcache.c $Id$ -> $FreeBSD$ 1999-08-28 01:08:13 +00:00
in_hostcache.h Change #ifdef KERNEL to #ifdef _KERNEL in the public headers. "KERNEL" 1999-12-29 04:46:21 +00:00
in_pcb.c IPSEC support in the kernel. 1999-12-22 19:13:38 +00:00
in_pcb.h Change #ifdef KERNEL to #ifdef _KERNEL in the public headers. "KERNEL" 1999-12-29 04:46:21 +00:00
in_proto.c Clean up some loose ends in the network code, including the X.25 and ISO 2000-02-13 03:32:07 +00:00
in_rmx.c $Id$ -> $FreeBSD$ 1999-08-28 01:08:13 +00:00
in_systm.h Change #ifdef KERNEL to #ifdef _KERNEL in the public headers. "KERNEL" 1999-12-29 04:46:21 +00:00
in_var.h Change #ifdef KERNEL to #ifdef _KERNEL in the public headers. "KERNEL" 1999-12-29 04:46:21 +00:00
in.c Change struct sockaddr_storage member name, because following change 2000-01-13 14:52:53 +00:00
in.h Forbid include of soem inet6 header files from wrong place 2000-02-10 19:33:58 +00:00
ip6.h Forbid include of soem inet6 header files from wrong place 2000-02-10 19:33:58 +00:00
ip_auth.c Re add rev 1.11 diffs to ip_fil.h Also discover that I did not undefine 2000-02-10 21:29:11 +00:00
ip_auth.h Re add rev 1.11 diffs to ip_fil.h Also discover that I did not undefine 2000-02-10 21:29:11 +00:00
ip_compat.h Re add rev 1.11 diffs to ip_fil.h Also discover that I did not undefine 2000-02-10 21:29:11 +00:00
ip_divert.c prevent kernel panic which happens when either of IPSEC and IPDIVERT 2000-01-08 12:53:48 +00:00
ip_dummynet.c Forgot one line: don't try to match flags when looking for a flow. 2000-02-11 13:23:14 +00:00
ip_dummynet.h Support for stateful (dynamic) ipfw rules. They are very 2000-02-10 14:17:40 +00:00
ip_ecn.c IPSEC support in the kernel. 1999-12-22 19:13:38 +00:00
ip_ecn.h Change #ifdef KERNEL to #ifdef _KERNEL in the public headers. "KERNEL" 1999-12-29 04:46:21 +00:00
ip_fil.c Re add rev 1.11 diffs to ip_fil.h Also discover that I did not undefine 2000-02-10 21:29:11 +00:00
ip_fil.h Re add rev 1.11 diffs to ip_fil.h Also discover that I did not undefine 2000-02-10 21:29:11 +00:00
ip_flow.c $Id$ -> $FreeBSD$ 1999-08-28 01:08:13 +00:00
ip_flow.h $Id$ -> $FreeBSD$ 1999-08-28 01:08:13 +00:00
ip_frag.c Re add rev 1.11 diffs to ip_fil.h Also discover that I did not undefine 2000-02-10 21:29:11 +00:00
ip_frag.h Re add rev 1.11 diffs to ip_fil.h Also discover that I did not undefine 2000-02-10 21:29:11 +00:00
ip_ftp_pxy.c Re add rev 1.11 diffs to ip_fil.h Also discover that I did not undefine 2000-02-10 21:29:11 +00:00
ip_fw.c Fix panic when doing keep-state and "forward". 2000-02-29 17:51:25 +00:00
ip_fw.h Support for stateful (dynamic) ipfw rules. They are very 2000-02-10 14:17:40 +00:00
ip_icmp.c Mitigate the stream.c attacks 2000-01-28 06:13:09 +00:00
ip_icmp.h Change #ifdef KERNEL to #ifdef _KERNEL in the public headers. "KERNEL" 1999-12-29 04:46:21 +00:00
ip_input.c Remove option IPFILTER_KLD. In case you wanted to kldload ipfilter, 2000-02-23 20:11:57 +00:00
ip_log.c Re add rev 1.11 diffs to ip_fil.h Also discover that I did not undefine 2000-02-10 21:29:11 +00:00
ip_mroute.c IPSEC support in the kernel. 1999-12-22 19:13:38 +00:00
ip_mroute.h Change #ifdef KERNEL to #ifdef _KERNEL in the public headers. "KERNEL" 1999-12-29 04:46:21 +00:00
ip_nat.c Re add rev 1.11 diffs to ip_fil.h Also discover that I did not undefine 2000-02-10 21:29:11 +00:00
ip_nat.h Re add rev 1.11 diffs to ip_fil.h Also discover that I did not undefine 2000-02-10 21:29:11 +00:00
ip_output.c Initialize mbuf pointer at getting ipsec policy. 2000-03-09 14:57:16 +00:00
ip_proxy.c Re add rev 1.11 diffs to ip_fil.h Also discover that I did not undefine 2000-02-10 21:29:11 +00:00
ip_proxy.h Re add rev 1.11 diffs to ip_fil.h Also discover that I did not undefine 2000-02-10 21:29:11 +00:00
ip_raudio_pxy.c Re add rev 1.11 diffs to ip_fil.h Also discover that I did not undefine 2000-02-10 21:29:11 +00:00
ip_rcmd_pxy.c Re add rev 1.11 diffs to ip_fil.h Also discover that I did not undefine 2000-02-10 21:29:11 +00:00
ip_state.c Re add rev 1.11 diffs to ip_fil.h Also discover that I did not undefine 2000-02-10 21:29:11 +00:00
ip_state.h Re add rev 1.11 diffs to ip_fil.h Also discover that I did not undefine 2000-02-10 21:29:11 +00:00
ip_var.h Change #ifdef KERNEL to #ifdef _KERNEL in the public headers. "KERNEL" 1999-12-29 04:46:21 +00:00
ip.h IPSEC support in the kernel. 1999-12-22 19:13:38 +00:00
ipl.h Re add rev 1.11 diffs to ip_fil.h Also discover that I did not undefine 2000-02-10 21:29:11 +00:00
ipprotosw.h IPSEC support in the kernel. 1999-12-22 19:13:38 +00:00
mlfk_ipl.c Bring over ipfilter v3_3_8 kernel sources, including merging the 2000-02-09 20:56:36 +00:00
raw_ip.c IPSEC support in the kernel. 1999-12-22 19:13:38 +00:00
tcp_debug.c Sorry in this just befor code freeze commit. 2000-01-29 11:49:07 +00:00
tcp_debug.h Sorry in this just befor code freeze commit. 2000-01-29 11:49:07 +00:00
tcp_fsm.h Undo rev 1.10, which took out TH_FIN from the CLOSING state. This 1999-11-07 04:18:30 +00:00
tcp_input.c Mitigate the stream.c attacks 2000-01-28 06:13:09 +00:00
tcp_output.c Avoid kernel panic when tcp rfc1323 and rfc1644 options are enabled 2000-02-09 00:34:40 +00:00
tcp_reass.c Mitigate the stream.c attacks 2000-01-28 06:13:09 +00:00
tcp_seq.h Change #ifdef KERNEL to #ifdef _KERNEL in the public headers. "KERNEL" 1999-12-29 04:46:21 +00:00
tcp_subr.c Limit the maximum permissible TCP window size to 65535 octets if 2000-02-28 21:18:21 +00:00
tcp_timer.c tcp updates to support IPv6. 2000-01-09 19:17:30 +00:00
tcp_timer.h Change #ifdef KERNEL to #ifdef _KERNEL in the public headers. "KERNEL" 1999-12-29 04:46:21 +00:00
tcp_timewait.c Limit the maximum permissible TCP window size to 65535 octets if 2000-02-28 21:18:21 +00:00
tcp_usrreq.c tcp updates to support IPv6. 2000-01-09 19:17:30 +00:00
tcp_var.h tcp updates to support IPv6. 2000-01-09 19:17:30 +00:00
tcp.h tcp updates to support IPv6. 2000-01-09 19:17:30 +00:00
tcpip.h $Id$ -> $FreeBSD$ 1999-08-28 01:08:13 +00:00
udp_usrreq.c IPSEC support in the kernel. 1999-12-22 19:13:38 +00:00
udp_var.h Change #ifdef KERNEL to #ifdef _KERNEL in the public headers. "KERNEL" 1999-12-29 04:46:21 +00:00
udp.h $Id$ -> $FreeBSD$ 1999-08-28 01:08:13 +00:00