Date: Tue, 19 Oct 2004 15:45:57 +0000 (UTC) From: Andre Oppermann <andre@FreeBSD.org> To: src-committers@FreeBSD.org, cvs-src@FreeBSD.org, cvs-all@FreeBSD.org Subject: cvs commit: src/sys/netinet ip_input.c ip_var.h Message-ID: <200410191545.i9JFjvGS073378@repoman.freebsd.org>
next in thread | raw e-mail | index | archive | help
andre 2004-10-19 15:45:57 UTC
FreeBSD src repository
Modified files:
sys/netinet ip_input.c ip_var.h
Log:
Support for dynamically loadable and unloadable IP protocols in the ipmux.
With pr_proto_register() it has become possible to dynamically load protocols
within the PF_INET domain. However the PF_INET domain has a second important
structure called ip_protox[] that is derived from the 'struct protosw inetsw[]'
and takes care of the de-multiplexing of the various protocols that ride on
top of IP packets.
The functions ipproto_[un]register() allow to dynamically adjust the ip_protox[]
array mux in a consistent and easy way. To register a protocol within
ip_protox[] the existence of a corresponding and matching protocol definition
in inetsw[] is required. The function does not allow to overwrite an already
registered protocol. The unregister function simply replaces the mux slot with
the default index pointer to IPPROTO_RAW as it was previously.
Revision Changes Path
1.292 +62 -1 src/sys/netinet/ip_input.c
1.92 +2 -0 src/sys/netinet/ip_var.h
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?200410191545.i9JFjvGS073378>
