freebsd-dev/sys/netinet6
Gleb Smirnoff 8f134647ca Switch the entire IPv4 stack to keep the IP packet header
in network byte order. Any host byte order processing is
done in local variables and host byte order values are
never[1] written to a packet.

  After this change a packet processed by the stack isn't
modified at all[2] except for TTL.

  After this change a network stack hacker doesn't need to
scratch his head trying to figure out what is the byte order
at the given place in the stack.

[1] One exception still remains. The raw sockets convert host
byte order before pass a packet to an application. Probably
this would remain for ages for compatibility.

[2] The ip_input() still subtructs header len from ip->ip_len,
but this is planned to be fixed soon.

Reviewed by:	luigi, Maxim Dounin <mdounin mdounin.ru>
Tested by:	ray, Olivier Cochard-Labbe <olivier cochard.me>
2012-10-22 21:09:03 +00:00
..
dest6.c Merge the remainder of kern_vimage.c and vimage.h into vnet.c and 2009-08-01 19:26:27 +00:00
frag6.c Implement handling of "atomic fragements" as outlined in 2012-07-08 15:30:24 +00:00
icmp6.c Merge the projects/pf/head branch, that was worked on for last six months, 2012-09-08 06:41:54 +00:00
icmp6.h
in6_cksum.c MFp4 bz_ipv6_fast: 2012-05-24 18:25:09 +00:00
in6_gif.c Merge the projects/pf/head branch, that was worked on for last six months, 2012-09-08 06:41:54 +00:00
in6_gif.h
in6_ifattach.c Add multi-FIB IPv6 support to the core network stack supplementing 2012-02-03 13:08:44 +00:00
in6_ifattach.h
in6_mcast.c Add multi-FIB IPv6 support to the core network stack supplementing 2012-02-03 13:08:44 +00:00
in6_pcb.c in6_pcblookup_local() still can return a pcb with NULL 2012-03-21 08:43:38 +00:00
in6_pcb.h Implement a CPU-affine TCP and UDP connection lookup data structure, 2011-06-06 12:55:02 +00:00
in6_pcbgroup.c Implement a CPU-affine TCP and UDP connection lookup data structure, 2011-06-06 12:55:02 +00:00
in6_proto.c o Convert IPv6 read-only stats sysctls to the read-write ones. 2011-12-19 05:50:34 +00:00
in6_rmx.c Eliminate code checking if found IPv6 rte is dynamic. IPv6 redirects 2012-10-22 12:54:52 +00:00
in6_src.c Just add a comment to further investigate when being closer to that code 2012-06-22 21:26:35 +00:00
in6_var.h Provide the IPv6 counterpart to the extended IPv4 rtalloc(9) KPI. 2012-02-03 09:33:58 +00:00
in6.c Mechanically remove the last stray remains of spl* calls from net*/*. 2012-10-18 13:57:24 +00:00
in6.h MFp4 bz_ipv6_fast: 2012-05-24 18:25:09 +00:00
ip6_ecn.h
ip6_forward.c Seperate SCTP checksum offloading for IPv4 and IPv6. 2012-05-30 20:56:07 +00:00
ip6_id.c
ip6_input.c Deliver IPV6_TCLASS, IPV6_HOPLIMIT and IPV6_PKTINFO cmsgs (if 2012-06-12 13:57:56 +00:00
ip6_ipsec.c Switch the entire IPv4 stack to keep the IP packet header 2012-10-22 21:09:03 +00:00
ip6_ipsec.h
ip6_mroute.c Revert previous commit... 2012-10-10 08:36:38 +00:00
ip6_mroute.h Remove route caching from IP multicast routing code. There is no 2012-07-02 19:44:18 +00:00
ip6_output.c In ip6_ctloutput() guard inp_flags modifications with INP_WLOCK. 2012-08-19 08:16:13 +00:00
ip6_var.h MFp4 bz_ipv6_fast: 2012-05-25 01:48:15 +00:00
ip6.h
ip6protosw.h Introduce an infrastructure for dismantling vnet instances. 2009-06-08 17:15:40 +00:00
mld6_var.h Use ALLOW_NEW_SOURCES and BLOCK_OLD_SOURCES to signal a join or leave 2009-12-22 20:40:22 +00:00
mld6.c Revert previous commit... 2012-10-10 08:36:38 +00:00
mld6.h
nd6_nbr.c Mechanically remove the last stray remains of spl* calls from net*/*. 2012-10-18 13:57:24 +00:00
nd6_rtr.c Mechanically remove the last stray remains of spl* calls from net*/*. 2012-10-18 13:57:24 +00:00
nd6.c Mechanically remove the last stray remains of spl* calls from net*/*. 2012-10-18 13:57:24 +00:00
nd6.h Remove "prefer_source" address selection option. FreeBSD has had an 2012-07-09 06:21:46 +00:00
pim6_var.h
pim6.h
raw_ip6.c Add SO_SETFIB option support on PF_INET6 sockets and allow inheriting the 2012-02-03 11:00:53 +00:00
raw_ip6.h Remove unused VNET_SET() and related macros; only VNET_GET() is 2009-07-16 21:13:04 +00:00
route6.c MFp4 bz_ipv6_fast: 2012-05-25 01:43:52 +00:00
scope6_var.h MFp4 bz_ipv6_fast: 2012-05-24 16:30:13 +00:00
scope6.c MFp4 bz_ipv6_fast: 2012-05-24 16:30:13 +00:00
sctp6_usrreq.c Changes which improve compilation if neither INET nor INET6 is defined. 2012-07-15 20:16:17 +00:00
sctp6_var.h Use consistent text at the begining of the files. 2012-05-23 11:26:28 +00:00
send.c Revert previous commit... 2012-10-10 08:36:38 +00:00
send.h Use uint8_t for sockaddr sa_len. 2011-06-05 11:40:30 +00:00
tcp6_var.h Remove unused VNET_SET() and related macros; only VNET_GET() is 2009-07-16 21:13:04 +00:00
udp6_usrreq.c Mechanically remove the last stray remains of spl* calls from net*/*. 2012-10-18 13:57:24 +00:00
udp6_var.h