freebsd-skq/sys/netinet
Qing Li 8eca593c5a This checkin addresses a couple of issues:
1. The "route" command allows route insertion through the interface-direct
   option "-iface". During if_attach(), an sockaddr_dl{} entry is created
   for the interface and is part of the interface address list. This
   sockaddr_dl{} entry describes the interface in detail. The "route"
   command selects this entry as the "gateway" object when the "-iface"
   option is present. The "arp" and "ndp" commands also interact with the
   kernel through the routing socket when adding and removing static L2
   entries. The static L2 information is also provided through the
   "gateway" object with an AF_LINK family type, similar to what is
   provided by the "route" command. In order to differentiate between
   these two types of operations, a RTF_LLDATA flag is introduced. This
   flag is set by the "arp" and "ndp" commands when issuing the add and
   delete commands. This flag is also set in each L2 entry returned by the
   kernel. The "arp" and "ndp" command follows a convention where a RTM_GET
   is issued first followed by a RTM_ADD/DELETE. This RTM_GET request fills
   in the fields for a "rtm" object, which is reinjected into the kernel by
   a subsequent RTM_ADD/DELETE command. The entry returend from RTM_GET
   is a prefix route, so the RTF_LLDATA flag must be specified when issuing
   the RTM_ADD/DELETE messages.

2. Enforce the convention that NET_RT_FLAGS with a 0 w_arg is the
   specification for retrieving L2 information. Also optimized the
   code logic.

Reviewed by:   julian
2008-12-26 19:45:24 +00:00
..
libalias Conditionally compile out V_ globals while instantiating the appropriate 2008-12-10 23:12:39 +00:00
accf_data.c
accf_dns.c
accf_http.c
icmp6.h Second round of putting global variables, which were virtualized 2008-12-13 19:13:03 +00:00
icmp_var.h Second round of putting global variables, which were virtualized 2008-12-13 19:13:03 +00:00
if_atm.c This main goals of this project are: 2008-12-15 06:10:57 +00:00
if_atm.h
if_ether.c Fix missed unlock and reference drop of lle 2008-12-24 05:31:26 +00:00
if_ether.h This main goals of this project are: 2008-12-15 06:10:57 +00:00
igmp_var.h
igmp.c Rather than using hidden includes (with cicular dependencies), 2008-12-02 21:37:28 +00:00
igmp.h
in_cksum.c
in_gif.c Rather than using hidden includes (with cicular dependencies), 2008-12-02 21:37:28 +00:00
in_gif.h
in_mcast.c This main goals of this project are: 2008-12-15 06:10:57 +00:00
in_pcb.c Use inc_flags instead of the inc_isipv6 alias which so far 2008-12-17 12:52:34 +00:00
in_pcb.h Another step assimilating IPv[46] PCB code: 2008-12-17 13:00:18 +00:00
in_proto.c This main goals of this project are: 2008-12-15 06:10:57 +00:00
in_rmx.c This main goals of this project are: 2008-12-15 06:10:57 +00:00
in_systm.h
in_var.h This main goals of this project are: 2008-12-15 06:10:57 +00:00
in.c This checkin addresses a couple of issues: 2008-12-26 19:45:24 +00:00
in.h Rather than using hidden includes (with cicular dependencies), 2008-12-02 21:37:28 +00:00
ip6.h Rather than using hidden includes (with cicular dependencies), 2008-12-02 21:37:28 +00:00
ip_carp.c This main goals of this project are: 2008-12-15 06:10:57 +00:00
ip_carp.h
ip_divert.c Conditionally compile out V_ globals while instantiating the appropriate 2008-12-10 23:12:39 +00:00
ip_divert.h
ip_dummynet.c Conditionally compile out V_ globals while instantiating the appropriate 2008-12-10 23:12:39 +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
ip_ecn.h
ip_encap.c
ip_encap.h
ip_fastfwd.c This main goals of this project are: 2008-12-15 06:10:57 +00:00
ip_fw2.c ipfw doesn't use the radix node head lock to protect the radix tree - remove acquisition 2008-12-16 11:06:30 +00:00
ip_fw_nat.c Put a global variables, which were virtualized but formerly 2008-12-11 16:26:38 +00:00
ip_fw_pfil.c IPFW's pfil hook/unhook code ignores the return values of pfil_add_hook() 2008-12-16 15:05:35 +00:00
ip_fw.h Second round of putting global variables, which were virtualized 2008-12-13 19:13:03 +00:00
ip_gre.c
ip_gre.h
ip_icmp.c Rather than using hidden includes (with cicular dependencies), 2008-12-02 21:37:28 +00:00
ip_icmp.h Change the initialization methodology for global variables scheduled 2008-11-19 09:39:34 +00:00
ip_id.c Rather than using hidden includes (with cicular dependencies), 2008-12-02 21:37:28 +00:00
ip_input.c This main goals of this project are: 2008-12-15 06:10:57 +00:00
ip_ipsec.c Rather than using hidden includes (with cicular dependencies), 2008-12-02 21:37:28 +00:00
ip_ipsec.h
ip_mroute.c Rather than using hidden includes (with cicular dependencies), 2008-12-02 21:37:28 +00:00
ip_mroute.h
ip_options.c Rather than using hidden includes (with cicular dependencies), 2008-12-02 21:37:28 +00:00
ip_options.h
ip_output.c This main goals of this project are: 2008-12-15 06:10:57 +00:00
ip_var.h Put a global variables, which were virtualized but formerly 2008-12-11 16:26:38 +00:00
ip.h Move CTASSERT from header file to source file, per implementation note now 2008-09-26 18:30:11 +00:00
pim_var.h
pim.h
raw_ip.c check pointer against NULL 2008-12-16 03:18:59 +00:00
sctp_asconf.c Code from the hack-session known as the IETF (and a 2008-12-06 13:19:54 +00:00
sctp_asconf.h Code from the hack-session known as the IETF (and a 2008-12-06 13:19:54 +00:00
sctp_auth.c Code from the hack-session known as the IETF (and a 2008-12-06 13:19:54 +00:00
sctp_auth.h Code from the hack-session known as the IETF (and a 2008-12-06 13:19:54 +00:00
sctp_bsd_addr.c
sctp_bsd_addr.h
sctp_cc_functions.c
sctp_cc_functions.h
sctp_constants.h Code from the hack-session known as the IETF (and a 2008-12-06 13:19:54 +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
sctp_header.h Code from the hack-session known as the IETF (and a 2008-12-06 13:19:54 +00:00
sctp_indata.c Code from the hack-session known as the IETF (and a 2008-12-06 13:19:54 +00:00
sctp_indata.h Code from the hack-session known as the IETF (and a 2008-12-06 13:19:54 +00:00
sctp_input.c Code from the hack-session known as the IETF (and a 2008-12-06 13:19:54 +00:00
sctp_input.h
sctp_lock_bsd.h - Make strict-sacks be the default. 2008-08-28 09:44:07 +00:00
sctp_os_bsd.h Conditionally compile out V_ globals while instantiating the appropriate 2008-12-10 23:12:39 +00:00
sctp_os.h
sctp_output.c Code from the hack-session known as the IETF (and a 2008-12-06 13:19:54 +00:00
sctp_output.h Code from the hack-session known as the IETF (and a 2008-12-06 13:19:54 +00:00
sctp_pcb.c Conditionally compile out V_ globals while instantiating the appropriate 2008-12-10 23:12:39 +00:00
sctp_pcb.h Code from the hack-session known as the IETF (and a 2008-12-06 13:19:54 +00:00
sctp_peeloff.c
sctp_peeloff.h
sctp_structs.h Code from the hack-session known as the IETF (and a 2008-12-06 13:19:54 +00:00
sctp_sysctl.c Code from the hack-session known as the IETF (and a 2008-12-06 13:19:54 +00:00
sctp_sysctl.h Code from the hack-session known as the IETF (and a 2008-12-06 13:19:54 +00:00
sctp_timer.c Code from the hack-session known as the IETF (and a 2008-12-06 13:19:54 +00:00
sctp_timer.h Invariants changes that make more sense. 2008-10-27 13:53:31 +00:00
sctp_uio.h Code from the hack-session known as the IETF (and a 2008-12-06 13:19:54 +00:00
sctp_usrreq.c Code from the hack-session known as the IETF (and a 2008-12-06 13:19:54 +00:00
sctp_var.h Code from the hack-session known as the IETF (and a 2008-12-06 13:19:54 +00:00
sctp.h Code from the hack-session known as the IETF (and a 2008-12-06 13:19:54 +00:00
sctputil.c Code from the hack-session known as the IETF (and a 2008-12-06 13:19:54 +00:00
sctputil.h Code from the hack-session known as the IETF (and a 2008-12-06 13:19:54 +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
tcp_fsm.h
tcp_hostcache.c Use inc_flags instead of the inc_isipv6 alias which so far 2008-12-17 12:52:34 +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 Use inc_flags instead of the inc_isipv6 alias which so far 2008-12-17 12:52:34 +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
tcp_offload.c Rather than using hidden includes (with cicular dependencies), 2008-12-02 21:37:28 +00:00
tcp_offload.h
tcp_output.c Rather than using hidden includes (with cicular dependencies), 2008-12-02 21:37:28 +00:00
tcp_reass.c Rather than using hidden includes (with cicular dependencies), 2008-12-02 21:37:28 +00:00
tcp_sack.c Conditionally compile out V_ globals while instantiating the appropriate 2008-12-10 23:12:39 +00:00
tcp_seq.h
tcp_subr.c Use inc_flags instead of the inc_isipv6 alias which so far 2008-12-17 12:52:34 +00:00
tcp_syncache.c Use inc_flags instead of the inc_isipv6 alias which so far 2008-12-17 12:52:34 +00:00
tcp_syncache.h Move syncache flag definitions below data structure, compress some vertical 2008-12-10 11:11:43 +00:00
tcp_timer.c Rather than using hidden includes (with cicular dependencies), 2008-12-02 21:37:28 +00:00
tcp_timer.h
tcp_timewait.c Use inc_flags instead of the inc_isipv6 alias which so far 2008-12-17 12:52:34 +00:00
tcp_usrreq.c Use inc_flags instead of the inc_isipv6 alias which so far 2008-12-17 12:52:34 +00:00
tcp_var.h Second round of putting global variables, which were virtualized 2008-12-13 19:13:03 +00:00
tcp.h
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 Conditionally compile out V_ globals while instantiating the appropriate 2008-12-10 23:12:39 +00:00
udp_var.h Put a global variables, which were virtualized but formerly 2008-12-11 16:26:38 +00:00
udp.h
vinet.h De-virtualize the MD5 context for TCP initial seq number generation 2008-12-13 21:59:18 +00:00