freebsd-dev/share
Gleb Smirnoff 8624f4347e divert: declare PF_DIVERT domain and stop abusing PF_INET
The divert(4) is not a protocol of IPv4.  It is a socket to
intercept packets from ipfw(4) to userland and re-inject them
back.  It can divert and re-inject IPv4 and IPv6 packets today,
but potentially it is not limited to these two protocols.  The
IPPROTO_DIVERT does not belong to known IP protocols, it
doesn't even fit into u_char.  I guess, the implementation of
divert(4) was done the way it is done basically because it was
easier to do it this way, back when protocols for sockets were
intertwined with IP protocols and domains were statically
compiled in.

Moving divert(4) out of inetsw accomplished two important things:

1) IPDIVERT is getting much closer to be not dependent on INET.
   This will be finalized in following changes.
2) Now divert socket no longer aliases with raw IPv4 socket.
   Domain/proto selection code won't need a hack for SOCK_RAW and
   multiple entries in inetsw implementing different flavors of
   raw socket can merge into one without requirement of raw IPv4
   being the last member of dom_protosw.

Differential revision:	https://reviews.freebsd.org/D36379
2022-08-30 15:09:21 -07:00
..
colldef locales: fix installation of some collation files 2022-04-05 09:19:31 +02:00
colldef_unicode locales: Update to CLDR 41.0 and Unicode 14.0 2022-04-21 14:16:40 +02:00
ctypedef locales: Update to CLDR 41.0 and Unicode 14.0 2022-04-21 14:16:40 +02:00
dict Add "heard" to the dictionary 2022-08-09 12:03:24 -04:00
doc usd: Fix two typos 2022-04-02 15:16:02 +02:00
dtrace dtrace: fix ipfw_rule_info_t translator 2021-09-02 16:35:01 +03:00
examples divert: declare PF_DIVERT domain and stop abusing PF_INET 2022-08-30 15:09:21 -07:00
i18n Remove mkcsmapper_static and mkesdb_static from build-tools 2021-08-02 14:33:25 +01:00
keys pkgbase: Add a FreeBSD-pkg-bootstrap package 2021-12-21 10:17:48 +01:00
man divert: declare PF_DIVERT domain and stop abusing PF_INET 2022-08-30 15:09:21 -07:00
misc Add dsl to the src committers and bz as my mentor 2022-08-22 15:59:21 +02:00
mk Install working pkgconfig .pc files for compat libraries 2022-08-11 23:18:34 +01:00
monetdef pkgbase: locales: Also tag the files dir 2021-08-06 14:37:45 +02:00
monetdef_unicode locales: Update to CLDR 41.0 and Unicode 14.0 2022-04-21 14:16:40 +02:00
msgdef pkgbase: locales: Also tag the files dir 2021-08-06 14:37:45 +02:00
msgdef_unicode locales: Update to CLDR 41.0 and Unicode 14.0 2022-04-21 14:16:40 +02:00
numericdef pkgbase: locales: Also tag the files dir 2021-08-06 14:37:45 +02:00
numericdef_unicode locales: Update to CLDR 41.0 and Unicode 14.0 2022-04-21 14:16:40 +02:00
security
sendmail
skel sh(1): fix home/del key on mobaxterm env 2021-10-20 14:00:20 +02:00
snmp pkgbase: Put the mibs and defs in the bnsmp package 2021-06-19 17:50:03 +02:00
syscons pkgbase: Create a syscons-data package 2021-09-07 10:21:40 +02:00
tabset
termcap For man page references found in ports, indicate the respective port. 2022-08-14 15:02:06 +02:00
tests
timedef pkgbase: locales: Also tag the files dir 2021-08-06 14:37:45 +02:00
vt Add new french bépo keyboard layout (version 1.1rc2) normalized by 2022-04-12 20:55:33 +02:00
zoneinfo Remove quotes around Makefile .error/.warn/.info strings 2022-01-22 14:03:07 -05:00
Makefile locales: now that C.UTF-8 is the default locale, always install it 2021-07-23 16:58:20 +02:00
Makefile.inc