summaryrefslogtreecommitdiff
path: root/print-igmp.c
Commit message (Collapse)AuthorAgeFilesLines
* Add bounds checking.guy2004-03-241-1/+2
|
* Add missing bounds checking to the DVMRP and PIM print routines.guy2003-11-191-2/+7
| | | | | | Instead of checking that there are 8 bytes available at the beginning of an IGMP packet - which there might not be, e.g. with some DVMRP packets - do the checks as necessary before fetching values.
* Have the configure script arrange that the Makefile define _U_guy2003-11-161-4/+4
| | | | | | | | | | appropriately, and that GNUmakefile and the MSVC++ project file define it apppriately, as we do with libpcap, rather than defining it in "interface.h". Undo the rcsid-shuffling and addition of extra #includes, as we no longer need to arrange that "interface.h" be included before using _U_ in an RCS ID or copyright.
* From Neil Spring:guy2003-11-151-4/+4
| | | | | | | | | | | use "_U_" in the definitions of "rcsid[]", to eliminate complaints about those variables being unused; move the definitions after the include of "interface.h", or add an include of "interface.h", so that "_U_" is defined. Include "config.h" before including "tcpdump-stdinc.h" in "missing/datalinks.c".
* The "__attribute__((packed))" tag on structures causes some files not toguy2002-12-111-10/+10
| | | | | | | | | | | | | | | | | | | | | | | | | | | | compile with Sun C, as "interface.h" isn't being included before the structures are being declared. Furthermore, in the files that Sun C *can* compile, it doesn't cause Sun C to generate code that's safe with unaligned accesses, as "__attribute__" is defined as a do-nothing macro with compilers that don't support it. Therefore, we get rid of that tag on the structures to which it was added, and instead use "EXTRACT_16BIT()" and "EXTRACT_32BIT()" to fetch 16-bit and 32-bit big-endian quantities from packets. We also fix some other references to multi-byte quantities to get rid of code that tries to do unaligned loads on platforms that don't support them. We also throw in a hack that makes those macros use "__attribute__((packed))" on structures containing only one 16-bit or 32-bit integer to get the compiler to generate unaligned-safe code rather than doing it by hand. (GCC on SPARC produces the same code that doing it by hand does; I don't know if GCC on any other big-endian strict-alignment processor generates better code for that case. On little-endian processors, as "ntohs()" and "ntohl()" might be functions, that might actually produce worse code.) Fix some places to use "%u" rather than "%d" to print unsigned quantities.
* put __attribute__((packed)) to packet headers. s/u_short/u_int16_t/ and soitojun2002-11-091-18/+18
| | | | forth while i'm here
* Get rid of the "-Wno-unused" flag, and fix up most of theguy2002-09-051-1/+19
| | | | | | | | | | | | | | | unused-parameter problems reported by GCC. Add an _U_ tag to label parameters as unused if the function is called through a pointer (so that you can't change its signature by removing parameters) or if there are unused parameters only because the function isn't complete. Add some additional bounds checks the necessity for which was revealed while cleaning up unused-parameter problems. Make some routines static. "lcp_print()", defined in "print-lcp.c", isn't called anywhere - "print-ppp.c" has the code to dissect LCP. Get rid of "print-lcp.c".
* Added support for Win32, based on WinPcap.risso2002-08-011-5/+2
|
* whitespace cleanupitojun2002-06-111-11/+11
|
* Get rid of unneeded includes of <netinet/in_systm.h> and <netinet/ip.h>.guy2002-06-021-3/+1
|
* Eliminate some unused parameters.fenner2001-09-171-16/+14
| | | | | | | | | | | Use const more. Use EXTRACT_* macros more. Use TCHECK* more. Use tok2str() to replace some home-grown workalikes. smb: - Get rid of private types, use tcpdump-defined types - Rename fdata and fdata1 to smb_fdata and smb_fdata1 to avoid conflict with IRIX library function.
* Implement exponential Max Response Code->Max Response Time mapping for IGMPv3fenner2001-05-111-1/+13
|
* Don't print the IP src and dst again; print-ip.c already did it.fenner2001-01-091-8/+1
|
* Eliminate unused #includesfenner2000-11-021-14/+1
|
* Move IGMP to its own file.fenner2000-11-021-0/+327
Add IGMPv3 support. Contributed by: Wilbert de Graaf <wilbertdg@hetnet.nl>