summaryrefslogtreecommitdiffstats
path: root/sys/netinet/igmp.c
Commit message (Collapse)AuthorAgeFilesLines
* Lock down parallel router_info list for tracking multicast IGMPrwatson2004-06-111-1/+27
| | | | | | | | | | | | versions of various routers seen: - Introduce igmp_mtx. - Protect global variable 'router_info_head' and list fields in struct router_info with this mutex, as well as igmp_timers_are_running. - find_rti() asserts that the caller acquires igmp_mtx. - Annotate a failure to check the return value of MALLOC(..., M_NOWAIT).
* Remove advertising clause from University of California Regent'simp2004-04-071-4/+0
| | | | | | | license, per letter dated July 22, 1999 and email from Peter Wemm, Alan Cox and Robert Watson. Approved by: core, peter, alc, rwatson
* Remove redundant initialization of rti; SLIST_FOREACH does that forrwatson2003-08-281-1/+0
| | | | us.
* Before digging into IGMP locking, do a whitespace and prototype cleanup:rwatson2003-08-201-73/+60
| | | | | | prefer tabs to 8 spaces, focus on consistent indentation, prefer modern C function prototypes. Not all the way to style(9), but substantially closer.
* Move from a custom-crafted singly-linked list to the SLIST_* macrosrwatson2003-08-201-26/+22
| | | | | | | | | from queue(3). Improve vertical compactness by using a IGMP_PRINTF() macro rather than #ifdefing IGMP_DEBUG a large number of debugging printfs. Reviewed by: mdodd (SLIST changes)
* Back out M_* changes, per decision of the TRB.imp2003-02-191-2/+2
| | | | Approved by: trb
* Remove M_TRYWAIT/M_WAITOK/M_WAIT. Callers should use 0.alfred2003-01-211-2/+2
| | | | Merge M_NOWAIT/M_DONTWAIT into a single flag M_NOWAIT.
* Back out some style changes. They are not urgent,luigi2002-11-201-23/+29
| | | | | | | I will put them back in after 5.0 is out. Requested by: sam Approved by: re
* Fix function headers and remove 'register' variable declarations.luigi2002-11-171-29/+23
|
* Replace aux mbufs with packet tags:sam2002-10-161-1/+1
| | | | | | | | | | | | | | | | | | | o instead of a list of mbufs use a list of m_tag structures a la openbsd o for netgraph et. al. extend the stock openbsd m_tag to include a 32-bit ABI/module number cookie o for openbsd compatibility define a well-known cookie MTAG_ABI_COMPAT and use this in defining openbsd-compatible m_tag_find and m_tag_get routines o rewrite KAME use of aux mbufs in terms of packet tags o eliminate the most heavily used aux mbufs by adding an additional struct inpcb parameter to ip_output and ip6_output to allow the IPsec code to locate the security policy to apply to outbound packets o bump __FreeBSD_version so code can be conditionalized o fixup ipfilter's call to ip_output based on __FreeBSD_version Reviewed by: julian, luigi (silent), -arch, -net, darren Approved by: julian, silence from everyone else Obtained from: openbsd (mostly) MFC after: 1 month
* Introduce support for Mandatory Access Control and extensiblerwatson2002-07-311-0/+6
| | | | | | | | | | | kernel access control. When generating an IGMP message, invoke a MAC entry point to permit the MAC framework to label its mbuf appropriately for the target interface. Obtained from: TrustedBSD Project Sponsored by: DARPA, NAI Labs
* s/demon/daemon/dd2002-05-121-2/+2
|
* Remove __P.alfred2002-03-191-2/+2
|
* One caller of rip_input failed to be converted in the last commit.julian2001-09-031-1/+1
|
* Patches from Keiichi SHIMA <keiichi@iij.ad.jp>julian2001-09-031-2/+2
| | | | | | to make ip use the standard protosw structure again. Obtained from: Well, KAME I guess.
* Add netstat(1) knob to reset net.inet.{ip|icmp|tcp|udp|igmp}.stats.ru2001-06-231-1/+1
| | | | | | For example, ``netstat -s -p ip -z'' will show and reset IP stats. PR: bin/17338
* Add #include <machine/in_cksum.h>, in order to pick up the checksumjlemon2000-05-061-0/+2
| | | | inline functions and prototypes.
* IPSEC support in the kernel.shin1999-12-221-3/+4
| | | | | | | | pr_input() routines prototype is also changed to support IPSEC and IPV6 chained protocol headers. Reviewed by: freebsd-arch, cvs-committers Obtained from: KAME project
* $Id$ -> $FreeBSD$peter1999-08-281-1/+1
|
* Rename igmp's MALLOC; it doesn't have anything to do with multicast routing.fenner1999-01-181-3/+3
|
* PR: kern/8990dillon1998-12-121-1/+3
| | | | | | | | If timer calculation results in degenerate value (0), force it to 1 to avoid divide-by-zero panic later on in calls to IGMP_RANDOM_DELAY(). I considered simply adding 1 to the timer calculation, but was unsure if the calculation was part of the IGMP standard or not so did not want to mess with it for all cases.
* Last major round (Unless Bruce thinks of somthing :-) of malloc changes.phk1997-10-121-2/+2
| | | | | | | | Distribute all but the most fundamental malloc types. This time I also remembered the trick to making things static: Put "static" in front of them. A couple of finer points by: bde
* Distribute and statizice a lot of the malloc M_* types.phk1997-10-111-1/+3
| | | | Substantial input from: bde
* Fixed gratuitous ANSIisms.bde1997-09-161-2/+2
|
* Added used #include - don't depend on <sys/mbuf.h> includingbde1997-09-021-1/+2
| | | | <sys/malloc.h> (unless we only use the bogusly shared M*WAIT flags).
* Back out part 1 of the MCFH that changed $Id$ to $FreeBSD$. We are notpeter1997-02-221-1/+1
| | | | ready for it yet.
* Make the long-awaited change from $Id$ to $FreeBSD$jkh1997-01-141-1/+1
| | | | | | | | This will make a number of things easier in the future, as well as (finally!) avoiding the Id-smashing problem which has plagued developers for so long. Boy, I'm glad we're not using sup anymore. This update would have been insane otherwise.
* Clean up -Wunused warnings.gpalmer1996-06-121-3/+1
| | | | Reviewed by: bde
* Always call ip_output() with a valid route pointer. For igmp, also get thewollman1996-04-181-14/+14
| | | | multicast option structure off the stack rather than malloc.
* Make rip_input() take the header lengthfenner1996-03-261-2/+2
| | | | | | Move ipip_input() and rsvp_input() prototypes to ip_var.h Remove unused prototype for rip_ip_input() from ip_var.h Remove unused variable *opts from rip_output()
* IGMPv2 routines rewritten, to be more compact and to fully complyfenner1996-03-141-255/+120
| | | | with the IGMPv2 Internet Draft (including Router Alert IP option)
* Staticize.phk1995-12-091-6/+6
|
* Completed function declarations and/or added prototypes.bde1995-12-021-1/+5
|
* New style sysctl & staticize alot of stuff.phk1995-11-141-20/+5
|
* Kernel side of 3.5 multicast routing code, based on work by Bill Fennerwollman1995-06-131-106/+87
| | | | | and other work done here. The LKM support is probably broken, but it still compiles and will be fixed later.
* Remove trailing whitespace.rgrimes1995-05-301-20/+20
|
* These diffs modify the behaviour of multicast clients to conform with thedg1995-05-161-8/+5
| | | | | | | | | | | IGMPv2 spec. This fixes the following bugs: o ntohs() on a char provides silly results o timer needs to be scaled to units of PR_FASTHZ; this was being done inconsistenly so now it gets done when it is initialized. Reviewed by: Garrett Wollman Submitted by: Bill Fenner <fenner@parc.xerox.com>
* Cleanup loopback interface support.pst1995-04-261-7/+7
| | | | Reviewed by: wollman
* Add and move declarations to fix all of the warnings from `gcc -Wimplicit'bde1995-03-161-3/+1
| | | | | | (except in netccitt, netiso and netns) and most of the warnings from `gcc -Wnested-externs'. Fix all the bugs found. There were no serious ones.
* Add lots of useful MIB variables and a few not-so-useful ones forwollman1995-02-161-1/+21
| | | | completeness.
* Detect old-style multicast routers and interoperate properlypst1994-10-311-1/+8
|
* Shuffle some functions and variables around to make it possible forwollman1994-09-141-5/+1
| | | | | multicast routing to be implemented as an LKM. (There's still a bit of work to do in this area.)
* Initial get-the-easy-case-working upgrade of the multicast codewollman1994-09-061-73/+386
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | to something more recent than the ancient 1.2 release contained in 4.4. This code has the following advantages as compared to previous versions (culled from the README file for the SunOS release): - True multicast delivery - Configurable rate-limiting of forwarded multicast traffic on each physical interface or tunnel, using a token-bucket limiter. - Simplistic classification of packets for prioritized dropping. - Administrative scoping of multicast address ranges. - Faster detection of hosts leaving groups. - Support for multicast traceroute (code not yet available). - Support for RSVP, the Resource Reservation Protocol. What still needs to be done: - The multicast forwarder needs testing. - The multicast routing daemon needs to be ported. - Network interface drivers need to have the `#ifdef MULTICAST' goop ripped out of them. - The IGMP code should probably be bogon-tested. Some notes about the porting process: In some cases, the Berkeley people decided to incorporate functionality from later releases of the multicast code, but then had to do things differently. As a result, if you look at Deering's patches, and then look at our code, it is not always obvious whether the patch even applies. Let the reader beware. I ran ip_mroute.c through several passes of `unifdef' to get rid of useless grot, and to permanently enable the RSVP support, which we will include as standard. Ported by: Garrett Wollman Submitted by: Steve Deering and Ajit Thyagarajan (among others)
* Added $Id$dg1994-08-021-0/+1
|
* The big 4.4BSD Lite to FreeBSD 2.0.0 (Development) patch.rgrimes1994-05-251-0/+1
| | | | | Reviewed by: Rodney W. Grimes Submitted by: John Dyson and David Greenman
* BSD 4.4 Lite Kernel Sourcesrgrimes1994-05-241-0/+313
OpenPOWER on IntegriCloud