summaryrefslogtreecommitdiffstats
path: root/cpukit/libnetworking/netinet/ip_input.c (follow)
Commit message (Collapse)AuthorAgeFilesLines
* 2010-06-15 Ralf Corsépius <ralf.corsepius@rtems.org>Ralf Corsepius2010-06-151-4/+4
| | | | | * libnetworking/netinet/ip_fw.c, libnetworking/netinet/ip_input.c: Misc. 64bit-compatibility fixes.
* Add HAVE_CONFIG_H support to let files receive configure defines.Ralf Corsepius2010-03-281-0/+4
|
* Add missing initializers.Ralf Corsepius2008-12-231-1/+1
|
* Include <errno.h> (POSIX,C99) instead of <sys/errno.h> (BSD'ism).Ralf Corsepius2008-12-221-1/+1
|
* Stop using old-style function definitions.Ralf Corsepius2008-09-011-29/+14
|
* Further _IP_VHL removal preps.Ralf Corsepius2007-03-291-1/+1
|
* Preps to eliminate _IP_VHL (Abandoned in FreeBSD). Misc mergers from ↵Ralf Corsepius2007-03-291-20/+54
| | | | upstream FreeBSD.
* 2007-03-28 Ralf Corsépius <ralf.corsepius@rtems.org>Ralf Corsepius2007-03-281-10/+11
| | | | | * libnetworking/netinet/ip_input.c: Eliminate __P(). Change "int next" to "int32_t next" for 16bit targets.
* Cosmetics from FreeBSD.Ralf Corsepius2006-12-081-19/+13
|
* 2002-10-04 Jay Monkman <jtm@smoothsmoothie.com>Joel Sherrill2002-10-041-1/+1
| | | | | | * netinet/in_cksum.c, netinet/ip_icmp.h, netinet/ip_input.c, netinet/tcp_input.c, netinet/tcp_subr.c, netinet/tcp_var.h, sys/queue.h: Address alignment requirements for the ARM.
* Patch from Eric Norum <eric@cls.usask.ca> to address the following problemJoel Sherrill1999-10-251-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | report from Philip A. Prindeville <philipp@zembu.com>: I was working on a device driver for a certain ethernet chipset that occassionally wraps in its buffer, and causes a resulting mbuf chain with only a few dozen bytes in the first mbuf of the chain. I wouldn't have thought this would be a problem, until I ran some stress tests that flooded the ethernet receiver with packets and started to get panics here: 250 251 if (m->m_pkthdr.len < sizeof(struct ip)) 252 goto tooshort; 253 254 #ifdef DIAGNOSTIC 255 if (m->m_len < sizeof(struct ip)) 256 panic("ipintr mbuf too short"); 257 #endif 258 259 if (m->m_len < sizeof (struct ip) && 260 (m = m_pullup(m, sizeof (struct ip))) == 0) { 261 ipstat.ips_toosmall++; 262 return; 263 } 264 ip = mtod(m, struct ip *); and the panic was at line 256. But if I #undef'd DIAGNOSTICS, then the m_pullup() at line 260 does the right thing and the packet ends up being processed just fine. So I started wondering, (a) why was the test checking for something that apparently wasn't a fatal condition but rather one that is subsequently recovered from a couple of lines later and (b) why panic as a diagnostic "aid" from a recoverable condition rather than just (say) log a message to the console? All of this seems overly severe for no reason that is readily apparent to me.
* All warnings removed.Joel Sherrill1998-08-211-1/+1
|
* Base filesJoel Sherrill1998-08-191-0/+1488