opnsense-src/sys/netinet
Alexander V. Chernikov ae01d73c04 Add ipfw support for setting/matching DiffServ codepoints (DSCP).
Setting DSCP support is done via O_SETDSCP which works for both
IPv4 and IPv6 packets. Fast checksum recalculation (RFC 1624) is done for IPv4.
Dscp can be specified by name (AFXY, CSX, BE, EF), by value
(0..63) or via tablearg.

Matching DSCP is done via another opcode (O_DSCP) which accepts several
classes at once (af11,af22,be). Classes are stored in bitmask (2 u32 words).

Many people made their variants of this patch, the ones I'm aware of are
(in alphabetic order):

Dmitrii Tejblum
Marcelo Araujo
Roman Bogorodskiy (novel)
Sergey Matveichuk (sem)
Sergey Ryabin

PR:		kern/102471, kern/121122
MFC after:	2 weeks
2013-03-20 10:35:33 +00:00
..
cc
khelp
libalias In m_megapullup() instead of reserving some space at the end of packet, 2013-03-17 07:37:10 +00:00
accf_data.c
accf_dns.c
accf_http.c
cc.h
icmp6.h
icmp_var.h
if_atm.c
if_atm.h
if_ether.c Fix problem in r238990. The LLE_LINKED flag should be tested prior to 2012-12-13 11:11:15 +00:00
if_ether.h Retire struct sockaddr_inarp. 2013-01-31 08:55:21 +00:00
igmp.c - Replace compat macros with function calls. 2013-03-16 08:58:28 +00:00
igmp.h
igmp_var.h
in.c Retire struct sockaddr_inarp. 2013-01-31 08:55:21 +00:00
in.h
in_cksum.c
in_debug.c
in_gif.c
in_gif.h
in_mcast.c
in_pcb.c Remove redundant test, we know inp_lport is 0. 2013-01-25 20:14:27 +00:00
in_pcb.h
in_pcbgroup.c
in_proto.c
in_rmx.c
in_systm.h
in_var.h
ip.h
ip6.h
ip_carp.c Use m_get/m_gethdr instead of compat macros. 2013-03-15 12:55:30 +00:00
ip_carp.h Resolve source address selection in presense of CARP. Add a couple 2013-02-11 10:58:22 +00:00
ip_divert.c
ip_divert.h
ip_dummynet.h
ip_ecn.c
ip_ecn.h
ip_encap.c
ip_encap.h
ip_fastfwd.c
ip_fw.h Add ipfw support for setting/matching DiffServ codepoints (DSCP). 2013-03-20 10:35:33 +00:00
ip_gre.c
ip_gre.h
ip_icmp.c
ip_icmp.h
ip_id.c
ip_input.c Use m_get/m_gethdr instead of compat macros. 2013-03-15 12:55:30 +00:00
ip_ipsec.c
ip_ipsec.h
ip_mroute.c Use m_get/m_gethdr instead of compat macros. 2013-03-15 12:55:30 +00:00
ip_mroute.h
ip_options.c - Replace compat macros with function calls. 2013-03-16 08:58:28 +00:00
ip_options.h
ip_output.c Use m_get/m_gethdr instead of compat macros. 2013-03-15 12:55:30 +00:00
ip_var.h
pim.h
pim_var.h
raw_ip.c
sctp.h Cleanup the handling of address scopes. Announce in the INIT/INIT-ACK 2013-02-09 17:26:14 +00:00
sctp_asconf.c Cleanup the handling of address scopes. Announce in the INIT/INIT-ACK 2013-02-09 17:26:14 +00:00
sctp_asconf.h
sctp_auth.c
sctp_auth.h
sctp_bsd_addr.c
sctp_bsd_addr.h
sctp_cc_functions.c
sctp_constants.h
sctp_crc32.c
sctp_crc32.h
sctp_dtrace_declare.h
sctp_dtrace_define.h
sctp_header.h
sctp_indata.c Don't send kernel provided information in the User Initiated 2013-02-11 13:57:03 +00:00
sctp_indata.h
sctp_input.c Cleanup the handling of address scopes. Announce in the INIT/INIT-ACK 2013-02-09 17:26:14 +00:00
sctp_input.h
sctp_lock_bsd.h
sctp_os.h
sctp_os_bsd.h
sctp_output.c Send the adaptation layer indication only if set by the user. 2013-02-11 21:02:49 +00:00
sctp_output.h Cleanup the handling of address scopes. Announce in the INIT/INIT-ACK 2013-02-09 17:26:14 +00:00
sctp_pcb.c Send the adaptation layer indication only if set by the user. 2013-02-11 21:02:49 +00:00
sctp_pcb.h Send the adaptation layer indication only if set by the user. 2013-02-11 21:02:49 +00:00
sctp_peeloff.c
sctp_peeloff.h
sctp_ss_functions.c
sctp_structs.h Cleanup the handling of address scopes. Announce in the INIT/INIT-ACK 2013-02-09 17:26:14 +00:00
sctp_sysctl.c Cleanup the handling of address scopes. Announce in the INIT/INIT-ACK 2013-02-09 17:26:14 +00:00
sctp_sysctl.h
sctp_timer.c Fix a bug where HEARTBEATs were still sent in SHUTDOWN_SENT or 2013-02-09 08:27:08 +00:00
sctp_timer.h
sctp_uio.h
sctp_usrreq.c Send the adaptation layer indication only if set by the user. 2013-02-11 21:02:49 +00:00
sctp_var.h
sctputil.c Fix a potential race in returning setting errno when an 2013-02-27 19:51:47 +00:00
sctputil.h
siftr.c The hashmask returned by hashinit() is a valid index in the returned hash array. 2013-03-07 04:42:20 +00:00
tcp.h Add placeholder constants to reserve a portion of the socket option 2013-02-01 15:32:20 +00:00
tcp_debug.c
tcp_debug.h
tcp_fsm.h
tcp_hostcache.c
tcp_hostcache.h
tcp_input.c Simplify and fix a bug in cc_ack_received()'s "are we congestion window limited" 2013-01-22 09:44:21 +00:00
tcp_lro.c Fix tcp_lro_rx_ipv4() for drivers that do not set CSUM_IP_CHECKED. 2013-02-21 17:00:35 +00:00
tcp_lro.h
tcp_offload.c
tcp_offload.h
tcp_output.c - Replace compat macros with function calls. 2013-03-16 08:58:28 +00:00
tcp_reass.c uma_zone_set_max() directly returns the rounded effective zone 2013-02-01 14:21:09 +00:00
tcp_sack.c
tcp_seq.h
tcp_subr.c Use m_get/m_gethdr instead of compat macros. 2013-03-15 12:55:30 +00:00
tcp_syncache.c uma_zone_set_max() directly returns the rounded effective zone 2013-02-01 14:21:09 +00:00
tcp_syncache.h
tcp_timer.c - Make callout(9) tickless, relying on eventtimers(4) as backend for 2013-03-04 11:09:56 +00:00
tcp_timer.h
tcp_timewait.c
tcp_usrreq.c Add checks for SO_NO_OFFLOAD in a couple of places that I missed earlier 2013-01-26 01:41:42 +00:00
tcp_var.h
tcpip.h
toecore.c Teach toe_l2_resolve to resolve IPv6 destinations too. 2013-01-26 00:57:29 +00:00
toecore.h
udp.h Add placeholder constants to reserve a portion of the socket option 2013-02-01 15:32:20 +00:00
udp_usrreq.c
udp_var.h