freebsd-dev/sys/netinet
Bjoern A. Zeeb 413628a7e3 MFp4:
Bring in updated jail support from bz_jail branch.

This enhances the current jail implementation to permit multiple
addresses per jail. In addtion to IPv4, IPv6 is supported as well.
Due to updated checks it is even possible to have jails without
an IP address at all, which basically gives one a chroot with
restricted process view, no networking,..

SCTP support was updated and supports IPv6 in jails as well.

Cpuset support permits jails to be bound to specific processor
sets after creation.

Jails can have an unrestricted (no duplicate protection, etc.) name
in addition to the hostname. The jail name cannot be changed from
within a jail and is considered to be used for management purposes
or as audit-token in the future.

DDB 'show jails' command was added to aid debugging.

Proper compat support permits 32bit jail binaries to be used on 64bit
systems to manage jails. Also backward compatibility was preserved where
possible: for jail v1 syscalls, as well as with user space management
utilities.

Both jail as well as prison version were updated for the new features.
A gap was intentionally left as the intermediate versions had been
used by various patches floating around the last years.

Bump __FreeBSD_version for the afore mentioned and in kernel changes.

Special thanks to:
- Pawel Jakub Dawidek (pjd) for his multi-IPv4 patches
  and Olivier Houchard (cognet) for initial single-IPv6 patches.
- Jeff Roberson (jeff) and Randall Stewart (rrs) for their
  help, ideas and review on cpuset and SCTP support.
- Robert Watson (rwatson) for lots and lots of help, discussions,
  suggestions and review of most of the patch at various stages.
- John Baldwin (jhb) for his help.
- Simon L. Nielsen (simon) as early adopter testing changes
  on cluster machines as well as all the testers and people
  who provided feedback the last months on freebsd-jail and
  other channels.
- My employer, CK Software GmbH, for the support so I could work on this.

Reviewed by:	(see above)
MFC after:	3 months (this is just so that I get the mail)
X-MFC Before:   7.2-RELEASE if possible
2008-11-29 14:32:14 +00:00
..
libalias Improve the entropy of the source port randomization for network address 2008-08-30 20:58:34 +00:00
accf_data.c Add FBSDID to all files in netinet so that people can more 2007-10-07 20:44:24 +00:00
accf_dns.c Add an accept filter for TCP based DNS requests. It waits until the 2008-07-18 14:44:51 +00:00
accf_http.c Add FBSDID to all files in netinet so that people can more 2007-10-07 20:44:24 +00:00
icmp6.h - Disabled responding to NI queries from a global address by default as 2007-05-17 21:20:24 +00:00
icmp_var.h Attempt to improve feature parity between UDPv4 and UDPv6 by merging 2007-07-19 22:34:25 +00:00
if_atm.c Add code to allow the system to handle multiple routing tables. 2008-05-09 23:03:00 +00:00
if_atm.h
if_ether.c Merge more of currently non-functional (i.e. resolving to 2008-11-26 22:32:07 +00:00
if_ether.h Don't duplicate the whole of arpresolve to arpresolve 2 for the sake 2007-12-31 23:48:06 +00:00
igmp_var.h Import rewrite of IPv4 socket multicast layer to support source-specific 2007-06-12 16:24:56 +00:00
igmp.c Change the initialization methodology for global variables scheduled 2008-11-19 09:39:34 +00:00
igmp.h Stub out imported IGMPv3 definitions which clash with those of 2007-06-15 18:59:10 +00:00
in_cksum.c Add FBSDID to all files in netinet so that people can more 2007-10-07 20:44:24 +00:00
in_gif.c Change the initialization methodology for global variables scheduled 2008-11-19 09:39:34 +00:00
in_gif.h
in_mcast.c Change the initialization methodology for global variables scheduled 2008-11-19 09:39:34 +00:00
in_pcb.c MFp4: 2008-11-29 14:32:14 +00:00
in_pcb.h Change the initialization methodology for global variables scheduled 2008-11-19 09:39:34 +00:00
in_proto.c Change the initialization methodology for global variables scheduled 2008-11-19 09:39:34 +00:00
in_rmx.c Merge more of currently non-functional (i.e. resolving to 2008-11-26 22:32:07 +00:00
in_systm.h
in_var.h Change the initialization methodology for global variables scheduled 2008-11-19 09:39:34 +00:00
in.c Unhide declarations of network stack virtualization structs from 2008-11-28 23:30:51 +00:00
in.h Step 1.5 of importing the network stack virtualization infrastructure 2008-10-02 15:37:58 +00:00
ip6.h Step 1.5 of importing the network stack virtualization infrastructure 2008-10-02 15:37:58 +00:00
ip_carp.c Retire the MALLOC and FREE macros. They are an abomination unto style(9). 2008-10-23 15:53:51 +00:00
ip_carp.h Make sure that carp_header is 36 bytes long 2006-12-01 18:37:41 +00:00
ip_divert.c Merge more of currently non-functional (i.e. resolving to 2008-11-26 22:32:07 +00:00
ip_divert.h
ip_dummynet.c Consistently check IPFW and DUMMYNET privileges in the configuration 2008-05-22 08:10:31 +00:00
ip_dummynet.h Type of q_time (start of queue idle time) has changed: uint32_t -> uint64_t. 2008-10-28 14:14:57 +00:00
ip_ecn.c Add FBSDID to all files in netinet so that people can more 2007-10-07 20:44:24 +00:00
ip_ecn.h
ip_encap.c Add FBSDID to all files in netinet so that people can more 2007-10-07 20:44:24 +00:00
ip_encap.h
ip_fastfwd.c Change the initialization methodology for global variables scheduled 2008-11-19 09:39:34 +00:00
ip_fw2.c For consistency work on the local object passed into the function for the 2008-11-09 14:06:44 +00:00
ip_fw_nat.c Step 1.5 of importing the network stack virtualization infrastructure 2008-10-02 15:37:58 +00:00
ip_fw_pfil.c Merge more of currently non-functional (i.e. resolving to 2008-11-26 22:32:07 +00:00
ip_fw.h Fix content and spelling of comment on _ipfw_insn.len -- a count of 2008-10-10 14:33:47 +00:00
ip_gre.c Enqueue de-capsulated packet instead of performing direct dispatch. It's 2008-07-04 21:01:30 +00:00
ip_gre.h
ip_icmp.c Change the initialization methodology for global variables scheduled 2008-11-19 09:39:34 +00:00
ip_icmp.h Change the initialization methodology for global variables scheduled 2008-11-19 09:39:34 +00:00
ip_id.c Unhide declarations of network stack virtualization structs from 2008-11-28 23:30:51 +00:00
ip_input.c Unhide declarations of network stack virtualization structs from 2008-11-28 23:30:51 +00:00
ip_ipsec.c Step 1.5 of importing the network stack virtualization infrastructure 2008-10-02 15:37:58 +00:00
ip_ipsec.h Take the route mtu into account, if available, when sending an 2008-04-09 05:17:18 +00:00
ip_mroute.c Step 1.5 of importing the network stack virtualization infrastructure 2008-10-02 15:37:58 +00:00
ip_mroute.h Add code to allow the system to handle multiple routing tables. 2008-05-09 23:03:00 +00:00
ip_options.c Step 1.5 of importing the network stack virtualization infrastructure 2008-10-02 15:37:58 +00:00
ip_options.h Normalize style a bit: reduce pseudo-randomness of comment layout and 2007-05-11 10:48:30 +00:00
ip_output.c Merge more of currently non-functional (i.e. resolving to 2008-11-26 22:32:07 +00:00
ip_var.h Unhide declarations of network stack virtualization structs from 2008-11-28 23:30:51 +00:00
ip.h Move CTASSERT from header file to source file, per implementation note now 2008-09-26 18:30:11 +00:00
ipprotosw.h
pim_var.h
pim.h
raw_ip.c MFp4: 2008-11-29 14:32:14 +00:00
sctp_asconf.c - Out with some printfs. 2008-07-29 09:06:35 +00:00
sctp_asconf.h 1) Adds the rest of the VIMAGE change macros 2008-07-09 16:45:30 +00:00
sctp_auth.c - Macro-izes the packed declaration in all headers. 2008-06-14 07:58:05 +00:00
sctp_auth.h - fix send_failed notification contents 2007-06-09 13:46:57 +00:00
sctp_bsd_addr.c Nit 2008-08-09 11:28:57 +00:00
sctp_bsd_addr.h 1) Adds the rest of the VIMAGE change macros 2008-07-09 16:45:30 +00:00
sctp_cc_functions.c - Macro-izes the packed declaration in all headers. 2008-06-14 07:58:05 +00:00
sctp_cc_functions.h 1) Adds the rest of the VIMAGE change macros 2008-07-09 16:45:30 +00:00
sctp_constants.h -Improvement: Add '\n' on debug output in sctp_lower_sosend(). 2008-11-12 14:16:39 +00:00
sctp_crc32.c Reported by Yehuda Weinraub (yehudasa@gamil.com) - CRC32C algorithm 2008-10-18 15:53:31 +00:00
sctp_crc32.h 1) Adds the rest of the VIMAGE change macros 2008-07-09 16:45:30 +00:00
sctp_header.h - Macro-izes the packed declaration in all headers. 2008-06-14 07:58:05 +00:00
sctp_indata.c -Improvement: Add '\n' on debug output in sctp_lower_sosend(). 2008-11-12 14:16:39 +00:00
sctp_indata.h 1) Adds the rest of the VIMAGE change macros 2008-07-09 16:45:30 +00:00
sctp_input.c -Improvement: Add '\n' on debug output in sctp_lower_sosend(). 2008-11-12 14:16:39 +00:00
sctp_input.h 1) Adds the rest of the VIMAGE change macros 2008-07-09 16:45:30 +00:00
sctp_lock_bsd.h - Make strict-sacks be the default. 2008-08-28 09:44:07 +00:00
sctp_os_bsd.h Get rid of ifdef for vimage on version 8 comparison. Now the 2008-10-27 13:54:54 +00:00
sctp_os.h - Fix address add handling to clear cached routes and source addresses 2007-08-24 00:53:53 +00:00
sctp_output.c More issues with pre-blocking: 2008-10-27 14:49:12 +00:00
sctp_output.h 1) Adds the rest of the VIMAGE change macros 2008-07-09 16:45:30 +00:00
sctp_pcb.c MFp4: 2008-11-29 14:32:14 +00:00
sctp_pcb.h -Improvement: Add '\n' on debug output in sctp_lower_sosend(). 2008-11-12 14:16:39 +00:00
sctp_peeloff.c - Macro-izes the packed declaration in all headers. 2008-06-14 07:58:05 +00:00
sctp_peeloff.h - Copyright change, cisco's silly tool wants it to say: 2007-05-08 17:01:12 +00:00
sctp_structs.h - Adds support for the multi-asconf (From Kozuka-san) 2008-05-20 13:47:46 +00:00
sctp_sysctl.c - Peers rwnd is now available for the MIB. 2008-10-18 15:55:15 +00:00
sctp_sysctl.h - Make strict-sacks be the default. 2008-08-28 09:44:07 +00:00
sctp_timer.c Invariants changes that make more sense. 2008-10-27 13:53:31 +00:00
sctp_timer.h Invariants changes that make more sense. 2008-10-27 13:53:31 +00:00
sctp_uio.h - Peers rwnd is now available for the MIB. 2008-10-18 15:55:15 +00:00
sctp_usrreq.c MFp4: 2008-11-29 14:32:14 +00:00
sctp_var.h - Make strict-sacks be the default. 2008-08-28 09:44:07 +00:00
sctp.h Adds support for the SCTP_PORT_REUSE option 2008-07-31 11:08:30 +00:00
sctputil.c -Improvement: Add '\n' on debug output in sctp_lower_sosend(). 2008-11-12 14:16:39 +00:00
sctputil.h 1) Adds the rest of the VIMAGE change macros 2008-07-09 16:45:30 +00:00
tcp_debug.c To my reading there are no real consumers of ip6_plen (IPv6 2008-09-07 20:44:45 +00:00
tcp_debug.h o Use a define for a buffer size. 2007-03-24 22:15:02 +00:00
tcp_fsm.h Make tcpstates[] static, and make sure TCPSTATES is defined before 2007-07-30 11:06:42 +00:00
tcp_hostcache.c Unhide declarations of network stack virtualization structs from 2008-11-28 23:30:51 +00:00
tcp_hostcache.h Add an essential .h file that skipped from the last commit (r185419). 2008-11-28 23:39:25 +00:00
tcp_input.c Merge more of currently non-functional (i.e. resolving to 2008-11-26 22:32:07 +00:00
tcp_lro.c Don't calculate checksum if it has already been validated 2008-08-24 02:31:09 +00:00
tcp_lro.h Add generic TCP LOR into netinet 2008-06-11 22:12:50 +00:00
tcp_offload.c Step 1.5 of importing the network stack virtualization infrastructure 2008-10-02 15:37:58 +00:00
tcp_offload.h - Switch to INP_WLOCK macro from inp_wlock 2008-07-21 21:22:56 +00:00
tcp_output.c Replace most INP_CHECK_SOCKAF() uses checking if it is an 2008-11-27 13:19:42 +00:00
tcp_reass.c Change the initialization methodology for global variables scheduled 2008-11-19 09:39:34 +00:00
tcp_sack.c Change the initialization methodology for global variables scheduled 2008-11-19 09:39:34 +00:00
tcp_seq.h Remove T/TCP RFC1644 Connection Count comparison macros. They are no longer 2006-06-18 14:24:12 +00:00
tcp_subr.c missing V_ 2008-11-28 13:13:44 +00:00
tcp_syncache.c Merge more of currently non-functional (i.e. resolving to 2008-11-26 22:32:07 +00:00
tcp_syncache.h Move some struct defs around. This is a prep step for Vimage.A 2008-08-25 00:33:30 +00:00
tcp_timer.c Step 1.5 of importing the network stack virtualization infrastructure 2008-10-02 15:37:58 +00:00
tcp_timer.h Two changes: 2007-09-24 05:26:24 +00:00
tcp_timewait.c Merge in6_pcbfree() into in_pcbfree() which after the previous 2008-11-27 12:04:35 +00:00
tcp_usrreq.c MFp4: 2008-11-29 14:32:14 +00:00
tcp_var.h Change the initialization methodology for global variables scheduled 2008-11-19 09:39:34 +00:00
tcp.h add rcv_nxt, snd_nxt, and toe offload id to FreeBSD-specific 2008-05-05 20:13:31 +00:00
tcpip.h
toedev.h Don't check if an interface can do tcp offload if there are no offload devices registered on the system. 2008-09-01 05:30:22 +00:00
udp_usrreq.c MFp4: 2008-11-29 14:32:14 +00:00
udp_var.h Further cleanup of UDPv4: 2007-07-10 09:30:46 +00:00
udp.h Gratuitous UDP restyling toward style(9) in 7.x. 2007-02-20 10:13:11 +00:00
vinet.h Unhide declarations of network stack virtualization structs from 2008-11-28 23:30:51 +00:00