History

Merge tag 'net-next-7.1' of git://git.kernel.org/pub/scm/linux/kernel/git/netdev/net-next

Pull networking updates from Jakub Kicinski: "Core & protocols: - Support HW queue leasing, allowing containers to be granted access to HW queues for zero-copy operations and AF_XDP - Number of code moves to help the compiler with inlining. Avoid output arguments for returning drop reason where possible - Rework drop handling within qdiscs to include more metadata about the reason and dropping qdisc in the tracepoints - Remove the rtnl_lock use from IP Multicast Routing - Pack size information into the Rx Flow Steering table pointer itself. This allows making the table itself a flat array of u32s, thus making the table allocation size a power of two - Report TCP delayed ack timer information via socket diag - Add ip_local_port_step_width sysctl to allow distributing the randomly selected ports more evenly throughout the allowed space - Add support for per-route tunsrc in IPv6 segment routing - Start work of switching sockopt handling to iov_iter - Improve dynamic recvbuf sizing in MPTCP, limit burstiness and avoid buffer size drifting up - Support MSG_EOR in MPTCP - Add stp_mode attribute to the bridge driver for STP mode selection. This addresses concerns about call_usermodehelper() usage - Remove UDP-Lite support (as announced in 2023) - Remove support for building IPv6 as a module. Remove the now unnecessary function calling indirection Cross-tree stuff: - Move Michael MIC code from generic crypto into wireless, it's considered insecure but some WiFi networks still need it Netfilter: - Switch nft_fib_ipv6 module to no longer need temporary dst_entry object allocations by using fib6_lookup() + RCU. Florian W reports this gets us ~13% higher packet rate - Convert IPVS's global __ip_vs_mutex to per-net service_mutex and switch the service tables to be per-net. Convert some code that walks the service lists to use RCU instead of the service_mutex - Add more opinionated input validation to lower security exposure - Make IPVS hash tables to be per-netns and resizable Wireless: - Finished assoc frame encryption/EPPKE/802.1X-over-auth - Radar detection improvements - Add 6 GHz incumbent signal detection APIs - Multi-link support for FILS, probe response templates and client probing - New APIs and mac80211 support for NAN (Neighbor Aware Networking, aka Wi-Fi Aware) so less work must be in firmware Driver API: - Add numerical ID for devlink instances (to avoid having to create fake bus/device pairs just to have an ID). Support shared devlink instances which span multiple PFs - Add standard counters for reporting pause storm events (implement in mlx5 and fbnic) - Add configuration API for completion writeback buffering (implement in mana) - Support driver-initiated change of RSS context sizes - Support DPLL monitoring input frequency (implement in zl3073x) - Support per-port resources in devlink (implement in mlx5) Misc: - Expand the YAML spec for Netfilter Drivers - Software: - macvlan: support multicast rx for bridge ports with shared source MAC address - team: decouple receive and transmit enablement for IEEE 802.3ad LACP "independent control" - Ethernet high-speed NICs: - nVidia/Mellanox: - support high order pages in zero-copy mode (for payload coalescing) - support multiple packets in a page (for systems with 64kB pages) - Broadcom 25-400GE (bnxt): - implement XDP RSS hash metadata extraction - add software fallback for UDP GSO, lowering the IOMMU cost - Broadcom 800GE (bnge): - add link status and configuration handling - add various HW and SW statistics - Marvell/Cavium: - NPC HW block support for cn20k - Huawei (hinic3): - add mailbox / control queue - add rx VLAN offload - add driver info and link management - Ethernet NICs: - Marvell/Aquantia: - support reading SFP module info on some AQC100 cards - Realtek PCI (r8169): - add support for RTL8125cp - Realtek USB (r8152): - support for the RTL8157 5Gbit chip - add 2500baseT EEE status/configuration support - Ethernet NICs embedded and off-the-shelf IP: - Synopsys (stmmac): - cleanup and reorganize SerDes handling and PCS support - cleanup descriptor handling and per-platform data - cleanup and consolidate MDIO defines and handling - shrink driver memory use for internal structures - improve Tx IRQ coalescing - improve TCP segmentation handling - add support for Spacemit K3 - Cadence (macb): - support PHYs that have inband autoneg disabled with GEM - support IEEE 802.3az EEE - rework usrio capabilities and handling - AMD (xgbe): - improve power management for S0i3 - improve TX resilience for link-down handling - Virtual: - Google cloud vNIC: - support larger ring sizes in DQO-QPL mode - improve HW-GRO handling - support UDP GSO for DQO format - PCIe NTB: - support queue count configuration - Ethernet PHYs: - automatically disable PHY autonomous EEE if MAC is in charge - Broadcom: - add BCM84891/BCM84892 support - Micrel: - support for LAN9645X internal PHY - Realtek: - add RTL8224 pair order support - support PHY LEDs on RTL8211F-VD - support spread spectrum clocking (SSC) - Maxlinear: - add PHY-level statistics via ethtool - Ethernet switches: - Maxlinear (mxl862xx): - support for bridge offloading - support for VLANs - support driver statistics - Bluetooth: - large number of fixes and new device IDs - Mediatek: - support MT6639 (MT7927) - support MT7902 SDIO - WiFi: - Intel (iwlwifi): - UNII-9 and continuing UHR work - MediaTek (mt76): - mt7996/mt7925 MLO fixes/improvements - mt7996 NPU support (HW eth/wifi traffic offload) - Qualcomm (ath12k): - monitor mode support on IPQ5332 - basic hwmon temperature reporting - support IPQ5424 - Realtek: - add USB RX aggregation to improve performance - add USB TX flow control by tracking in-flight URBs - Cellular: - IPA v5.2 support" * tag 'net-next-7.1' of git://git.kernel.org/pub/scm/linux/kernel/git/netdev/net-next: (1561 commits) net: pse-pd: fix kernel-doc function name for pse_control_find_by_id() wireguard: device: use exit_rtnl callback instead of manual rtnl_lock in pre_exit wireguard: allowedips: remove redundant space tools: ynl: add sample for wireguard wireguard: allowedips: Use kfree_rcu() instead of call_rcu() MAINTAINERS: Add netkit selftest files selftests/net: Add additional test coverage in nk_qlease selftests/net: Split netdevsim tests from HW tests in nk_qlease tools/ynl: Make YnlFamily closeable as a context manager net: airoha: Add missing PPE configurations in airoha_ppe_hw_init() net: airoha: Fix VIP configuration for AN7583 SoC net: caif: clear client service pointer on teardown net: strparser: fix skb_head leak in strp_abort_strp() net: usb: cdc-phonet: fix skb frags[] overflow in rx_complete() selftests/bpf: add test for xdp_master_redirect with bond not up net, bpf: fix null-ptr-deref in xdp_master_redirect() for down master net: airoha: Remove PCE_MC_EN_MASK bit in REG_FE_PCE_CFG configuration sctp: disable BH before calling udp_tunnel_xmit_skb() sctp: fix missing encap_port propagation for GSO fragments net: airoha: Rely on net_device pointer in ETS callbacks ...

Linus Torvalds committed 7 months ago

Commit 91a48552 parents f5ad410 35c2c391687 files · +73530 −26553Browse files

Showing the changes to include/uapi/linux (16 of 1687 files). Show all

Unified · Split

16 files
  1. include/uapi/linux/devlink.h +15 −0
  2. include/uapi/linux/dpll.h +4 −1
  3. include/uapi/linux/ethtool.h +1 −1
  4. include/uapi/linux/ethtool_netlink_generated.h +3 −0
  5. include/uapi/linux/if_link.h +47 −0
  6. include/uapi/linux/if_pppox.h +4 −10
  7. include/uapi/linux/inet_diag.h +9 −0
  8. include/uapi/linux/mii.h +2 −1
  9. include/uapi/linux/netdev.h +11 −0
  10. include/uapi/linux/netfilter/nf_tables.h +5 −1
  11. include/uapi/linux/nfc.h +3 −3
  12. include/uapi/linux/nl80211.h +269 −3
  13. include/uapi/linux/openvswitch.h +68 −8
  14. include/uapi/linux/ovpn.h +2 −0
  15. include/uapi/linux/seg6_iptunnel.h +1 −0
  16. include/uapi/linux/udp.h +2 −0
include/uapi/linux/devlink.h+15−0
@@ -19,6 +19,8 @@ · 18 unmodified lines
19#define DEVLINK_GENL_VERSION 0x119#define DEVLINK_GENL_VERSION 0x1
20#define DEVLINK_GENL_MCGRP_CONFIG_NAME "config"20#define DEVLINK_GENL_MCGRP_CONFIG_NAME "config"
21 21
22#define DEVLINK_INDEX_BUS_NAME "devlink_index"
23
22enum devlink_command {24enum devlink_command {
23 /* don't change the order or add anything between, this is ABI! */25 /* don't change the order or add anything between, this is ABI! */
24 DEVLINK_CMD_UNSPEC,26 DEVLINK_CMD_UNSPEC,
@@ -642,6 +644,9 @@ enum devlink_attr { · 617 unmodified lines
642 DEVLINK_ATTR_PARAM_VALUE_DEFAULT, /* dynamic */644 DEVLINK_ATTR_PARAM_VALUE_DEFAULT, /* dynamic */
643 DEVLINK_ATTR_PARAM_RESET_DEFAULT, /* flag */645 DEVLINK_ATTR_PARAM_RESET_DEFAULT, /* flag */
644 646
647 DEVLINK_ATTR_INDEX, /* uint */
648 DEVLINK_ATTR_RESOURCE_SCOPE_MASK, /* u32 */
649
645 /* Add new attributes above here, update the spec in650 /* Add new attributes above here, update the spec in
646 * Documentation/netlink/specs/devlink.yaml and re-generate651 * Documentation/netlink/specs/devlink.yaml and re-generate
647 * net/devlink/netlink_gen.c.652 * net/devlink/netlink_gen.c.
@@ -700,6 +705,16 @@ enum devlink_resource_unit { · 52 unmodified lines
700 DEVLINK_RESOURCE_UNIT_ENTRY,705 DEVLINK_RESOURCE_UNIT_ENTRY,
701};706};
702 707
708enum devlink_resource_scope {
709 DEVLINK_RESOURCE_SCOPE_DEV_BIT,
710 DEVLINK_RESOURCE_SCOPE_PORT_BIT,
711};
712
713#define DEVLINK_RESOURCE_SCOPE_DEV \
714 _BITUL(DEVLINK_RESOURCE_SCOPE_DEV_BIT)
715#define DEVLINK_RESOURCE_SCOPE_PORT \
716 _BITUL(DEVLINK_RESOURCE_SCOPE_PORT_BIT)
717
703enum devlink_port_fn_attr_cap {718enum devlink_port_fn_attr_cap {
704 DEVLINK_PORT_FN_ATTR_CAP_ROCE_BIT,719 DEVLINK_PORT_FN_ATTR_CAP_ROCE_BIT,
705 DEVLINK_PORT_FN_ATTR_CAP_MIGRATABLE_BIT,720 DEVLINK_PORT_FN_ATTR_CAP_MIGRATABLE_BIT,
include/uapi/linux/dpll.h+4−1
@@ -191,7 +191,8 @@ enum dpll_pin_capabilities { · 190 unmodified lines
191 DPLL_PIN_CAPABILITIES_STATE_CAN_CHANGE = 4,191 DPLL_PIN_CAPABILITIES_STATE_CAN_CHANGE = 4,
192};192};
193 193
194#define DPLL_PHASE_OFFSET_DIVIDER 1000194#define DPLL_PHASE_OFFSET_DIVIDER 1000
195#define DPLL_PIN_MEASURED_FREQUENCY_DIVIDER 1000
195 196
196/**197/**
197 * enum dpll_feature_state - Allow control (enable/disable) and status checking198 * enum dpll_feature_state - Allow control (enable/disable) and status checking
@@ -218,6 +219,7 @@ enum dpll_a { · 20 unmodified lines
218 DPLL_A_CLOCK_QUALITY_LEVEL,219 DPLL_A_CLOCK_QUALITY_LEVEL,
219 DPLL_A_PHASE_OFFSET_MONITOR,220 DPLL_A_PHASE_OFFSET_MONITOR,
220 DPLL_A_PHASE_OFFSET_AVG_FACTOR,221 DPLL_A_PHASE_OFFSET_AVG_FACTOR,
222 DPLL_A_FREQUENCY_MONITOR,
221 223
222 __DPLL_A_MAX,224 __DPLL_A_MAX,
223 DPLL_A_MAX = (__DPLL_A_MAX - 1)225 DPLL_A_MAX = (__DPLL_A_MAX - 1)
@@ -254,6 +256,7 @@ enum dpll_a_pin { · 30 unmodified lines
254 DPLL_A_PIN_REFERENCE_SYNC,256 DPLL_A_PIN_REFERENCE_SYNC,
255 DPLL_A_PIN_PHASE_ADJUST_GRAN,257 DPLL_A_PIN_PHASE_ADJUST_GRAN,
256 DPLL_A_PIN_FRACTIONAL_FREQUENCY_OFFSET_PPT,258 DPLL_A_PIN_FRACTIONAL_FREQUENCY_OFFSET_PPT,
259 DPLL_A_PIN_MEASURED_FREQUENCY,
257 260
258 __DPLL_A_PIN_MAX,261 __DPLL_A_PIN_MAX,
259 DPLL_A_PIN_MAX = (__DPLL_A_PIN_MAX - 1)262 DPLL_A_PIN_MAX = (__DPLL_A_PIN_MAX - 1)
include/uapi/linux/ethtool.h+1−1
@@ -225,7 +225,7 @@ enum tunable_id { · 224 unmodified lines
225 ETHTOOL_ID_UNSPEC,225 ETHTOOL_ID_UNSPEC,
226 ETHTOOL_RX_COPYBREAK,226 ETHTOOL_RX_COPYBREAK,
227 ETHTOOL_TX_COPYBREAK,227 ETHTOOL_TX_COPYBREAK,
228 ETHTOOL_PFC_PREVENTION_TOUT, /* timeout in msecs */228 ETHTOOL_PFC_PREVENTION_TOUT, /* both pause and pfc, see man ethtool */
229 ETHTOOL_TX_COPYBREAK_BUF_SIZE,229 ETHTOOL_TX_COPYBREAK_BUF_SIZE,
230 /*230 /*
231 * Add your fresh new tunable attribute above and remember to update231 * Add your fresh new tunable attribute above and remember to update
include/uapi/linux/ethtool_netlink_generated.h+3−0
@@ -371,6 +371,8 @@ enum { · 370 unmodified lines
371 ETHTOOL_A_COALESCE_TX_AGGR_TIME_USECS,371 ETHTOOL_A_COALESCE_TX_AGGR_TIME_USECS,
372 ETHTOOL_A_COALESCE_RX_PROFILE,372 ETHTOOL_A_COALESCE_RX_PROFILE,
373 ETHTOOL_A_COALESCE_TX_PROFILE,373 ETHTOOL_A_COALESCE_TX_PROFILE,
374 ETHTOOL_A_COALESCE_RX_CQE_FRAMES,
375 ETHTOOL_A_COALESCE_RX_CQE_NSECS,
374 376
375 __ETHTOOL_A_COALESCE_CNT,377 __ETHTOOL_A_COALESCE_CNT,
376 ETHTOOL_A_COALESCE_MAX = (__ETHTOOL_A_COALESCE_CNT - 1)378 ETHTOOL_A_COALESCE_MAX = (__ETHTOOL_A_COALESCE_CNT - 1)
@@ -381,6 +383,7 @@ enum { · 4 unmodified lines
381 ETHTOOL_A_PAUSE_STAT_PAD,383 ETHTOOL_A_PAUSE_STAT_PAD,
382 ETHTOOL_A_PAUSE_STAT_TX_FRAMES,384 ETHTOOL_A_PAUSE_STAT_TX_FRAMES,
383 ETHTOOL_A_PAUSE_STAT_RX_FRAMES,385 ETHTOOL_A_PAUSE_STAT_RX_FRAMES,
386 ETHTOOL_A_PAUSE_STAT_TX_PAUSE_STORM_EVENTS,
384 387
385 __ETHTOOL_A_PAUSE_STAT_CNT,388 __ETHTOOL_A_PAUSE_STAT_CNT,
386 ETHTOOL_A_PAUSE_STAT_MAX = (__ETHTOOL_A_PAUSE_STAT_CNT - 1)389 ETHTOOL_A_PAUSE_STAT_MAX = (__ETHTOOL_A_PAUSE_STAT_CNT - 1)
include/uapi/linux/if_link.h+47−0
@@ -744,6 +744,11 @@ enum in6_addr_gen_mode { · 743 unmodified lines
744 * @IFLA_BR_FDB_MAX_LEARNED744 * @IFLA_BR_FDB_MAX_LEARNED
745 * Set the number of max dynamically learned FDB entries for the current745 * Set the number of max dynamically learned FDB entries for the current
746 * bridge.746 * bridge.
747 *
748 * @IFLA_BR_STP_MODE
749 * Set the STP mode for the bridge, which controls how the bridge
750 * selects between userspace and kernel STP. The valid values are
751 * documented below in the ``BR_STP_MODE_*`` constants.
747 */752 */
748enum {753enum {
749 IFLA_BR_UNSPEC,754 IFLA_BR_UNSPEC,
@@ -796,11 +801,45 @@ enum { · 46 unmodified lines
796 IFLA_BR_MCAST_QUERIER_STATE,801 IFLA_BR_MCAST_QUERIER_STATE,
797 IFLA_BR_FDB_N_LEARNED,802 IFLA_BR_FDB_N_LEARNED,
798 IFLA_BR_FDB_MAX_LEARNED,803 IFLA_BR_FDB_MAX_LEARNED,
804 IFLA_BR_STP_MODE,
799 __IFLA_BR_MAX,805 __IFLA_BR_MAX,
800};806};
801 807
802#define IFLA_BR_MAX (__IFLA_BR_MAX - 1)808#define IFLA_BR_MAX (__IFLA_BR_MAX - 1)
803 809
810/**
811 * DOC: Bridge STP mode values
812 *
813 * @BR_STP_MODE_AUTO
814 * Default. The kernel invokes the ``/sbin/bridge-stp`` helper to hand
815 * the bridge to a userspace STP daemon (e.g. mstpd). Only attempted in
816 * the initial network namespace; in other namespaces this falls back to
817 * kernel STP.
818 *
819 * @BR_STP_MODE_USER
820 * Directly enable userspace STP (``BR_USER_STP``) without invoking the
821 * ``/sbin/bridge-stp`` helper. Works in any network namespace.
822 * Userspace is responsible for ensuring an STP daemon manages the
823 * bridge.
824 *
825 * @BR_STP_MODE_KERNEL
826 * Directly enable kernel STP (``BR_KERNEL_STP``) without invoking the
827 * helper.
828 *
829 * The mode controls how the bridge selects between userspace and kernel
830 * STP when STP is enabled via ``IFLA_BR_STP_STATE``. It can only be
831 * changed while STP is disabled (``IFLA_BR_STP_STATE`` == 0), returns
832 * ``-EBUSY`` otherwise. The default value is ``BR_STP_MODE_AUTO``.
833 */
834enum br_stp_mode {
835 BR_STP_MODE_AUTO,
836 BR_STP_MODE_USER,
837 BR_STP_MODE_KERNEL,
838 __BR_STP_MODE_MAX
839};
840
841#define BR_STP_MODE_MAX (__BR_STP_MODE_MAX - 1)
842
804struct ifla_bridge_id {843struct ifla_bridge_id {
805 __u8 prio[2];844 __u8 prio[2];
806 __u8 addr[6]; /* ETH_ALEN */845 __u8 addr[6]; /* ETH_ALEN */
@@ -1296,6 +1335,11 @@ enum netkit_mode { · 489 unmodified lines
1296 NETKIT_L3,1335 NETKIT_L3,
1297};1336};
1298 1337
1338enum netkit_pairing {
1339 NETKIT_DEVICE_PAIR,
1340 NETKIT_DEVICE_SINGLE,
1341};
1342
1299/* NETKIT_SCRUB_NONE leaves clearing skb->{mark,priority} up to1343/* NETKIT_SCRUB_NONE leaves clearing skb->{mark,priority} up to
1300 * the BPF program if attached. This also means the latter can1344 * the BPF program if attached. This also means the latter can
1301 * consume the two fields if they were populated earlier.1345 * consume the two fields if they were populated earlier.
@@ -1320,6 +1364,7 @@ enum { · 18 unmodified lines
1320 IFLA_NETKIT_PEER_SCRUB,1364 IFLA_NETKIT_PEER_SCRUB,
1321 IFLA_NETKIT_HEADROOM,1365 IFLA_NETKIT_HEADROOM,
1322 IFLA_NETKIT_TAILROOM,1366 IFLA_NETKIT_TAILROOM,
1367 IFLA_NETKIT_PAIRING,
1323 __IFLA_NETKIT_MAX,1368 __IFLA_NETKIT_MAX,
1324};1369};
1325#define IFLA_NETKIT_MAX (__IFLA_NETKIT_MAX - 1)1370#define IFLA_NETKIT_MAX (__IFLA_NETKIT_MAX - 1)
@@ -1568,6 +1613,8 @@ enum { · 242 unmodified lines
1568 IFLA_BOND_SLAVE_AD_PARTNER_OPER_PORT_STATE,1613 IFLA_BOND_SLAVE_AD_PARTNER_OPER_PORT_STATE,
1569 IFLA_BOND_SLAVE_PRIO,1614 IFLA_BOND_SLAVE_PRIO,
1570 IFLA_BOND_SLAVE_ACTOR_PORT_PRIO,1615 IFLA_BOND_SLAVE_ACTOR_PORT_PRIO,
1616 IFLA_BOND_SLAVE_AD_CHURN_ACTOR_STATE,
1617 IFLA_BOND_SLAVE_AD_CHURN_PARTNER_STATE,
1571 __IFLA_BOND_SLAVE_MAX,1618 __IFLA_BOND_SLAVE_MAX,
1572};1619};
1573 1620
include/uapi/linux/if_pppox.h+4−10
@@ -103,16 +103,6 @@ struct sockaddr_pppol2tpv3in6 { · 102 unmodified lines
103 struct pppol2tpv3in6_addr pppol2tp;103 struct pppol2tpv3in6_addr pppol2tp;
104} __packed;104} __packed;
105 105
106/*********************************************************************
107 *
108 * ioctl interface for defining forwarding of connections
109 *
110 ********************************************************************/
111
112#define PPPOEIOCSFWD _IOW(0xB1 ,0, size_t)
113#define PPPOEIOCDFWD _IO(0xB1 ,1)
114/*#define PPPOEIOCGFWD _IOWR(0xB1,2, size_t)*/
115
116/* Codes to identify message types */106/* Codes to identify message types */
117#define PADI_CODE 0x09107#define PADI_CODE 0x09
118#define PADO_CODE 0x07108#define PADO_CODE 0x07
@@ -122,7 +112,9 @@ struct sockaddr_pppol2tpv3in6 { · 3 unmodified lines
122struct pppoe_tag {112struct pppoe_tag {
123 __be16 tag_type;113 __be16 tag_type;
124 __be16 tag_len;114 __be16 tag_len;
115#ifndef __KERNEL__
125 char tag_data[];116 char tag_data[];
117#endif
126} __attribute__ ((packed));118} __attribute__ ((packed));
127 119
128/* Tag identifiers */120/* Tag identifiers */
@@ -150,7 +142,9 @@ struct pppoe_hdr { · 21 unmodified lines
150 __u8 code;142 __u8 code;
151 __be16 sid;143 __be16 sid;
152 __be16 length;144 __be16 length;
145#ifndef __KERNEL__
153 struct pppoe_tag tag[];146 struct pppoe_tag tag[];
147#endif
154} __packed;148} __packed;
155 149
156/* Length of entire PPPoE + PPP header */150/* Length of entire PPPoE + PPP header */
include/uapi/linux/inet_diag.h+9−0
@@ -129,6 +129,15 @@ struct inet_diag_msg { · 128 unmodified lines
129 __u32 idiag_inode;129 __u32 idiag_inode;
130};130};
131 131
132enum {
133 IDIAG_TIMER_OFF,
134 IDIAG_TIMER_ON,
135 IDIAG_TIMER_KEEPALIVE,
136 IDIAG_TIMER_TIMEWAIT,
137 IDIAG_TIMER_PROBE0,
138 IDIAG_TIMER_DELACK,
139};
140
132/* Extensions */141/* Extensions */
133 142
134enum {143enum {
include/uapi/linux/mii.h+2−1
@@ -82,7 +82,8 @@ · 81 unmodified lines
82#define ADVERTISE_100BASE4 0x0200 /* Try for 100mbps 4k packets */82#define ADVERTISE_100BASE4 0x0200 /* Try for 100mbps 4k packets */
83#define ADVERTISE_PAUSE_CAP 0x0400 /* Try for pause */83#define ADVERTISE_PAUSE_CAP 0x0400 /* Try for pause */
84#define ADVERTISE_PAUSE_ASYM 0x0800 /* Try for asymetric pause */84#define ADVERTISE_PAUSE_ASYM 0x0800 /* Try for asymetric pause */
85#define ADVERTISE_RESV 0x1000 /* Unused... */85#define ADVERTISE_XNP 0x1000 /* Extended Next Page */
86#define ADVERTISE_RESV ADVERTISE_XNP /* Used to be reserved */
86#define ADVERTISE_RFAULT 0x2000 /* Say we can detect faults */87#define ADVERTISE_RFAULT 0x2000 /* Say we can detect faults */
87#define ADVERTISE_LPACK 0x4000 /* Ack link partners response */88#define ADVERTISE_LPACK 0x4000 /* Ack link partners response */
88#define ADVERTISE_NPAGE 0x8000 /* Next page bit */89#define ADVERTISE_NPAGE 0x8000 /* Next page bit */
include/uapi/linux/netdev.h+11−0
@@ -160,6 +160,7 @@ enum { · 159 unmodified lines
160 NETDEV_A_QUEUE_DMABUF,160 NETDEV_A_QUEUE_DMABUF,
161 NETDEV_A_QUEUE_IO_URING,161 NETDEV_A_QUEUE_IO_URING,
162 NETDEV_A_QUEUE_XSK,162 NETDEV_A_QUEUE_XSK,
163 NETDEV_A_QUEUE_LEASE,
163 164
164 __NETDEV_A_QUEUE_MAX,165 __NETDEV_A_QUEUE_MAX,
165 NETDEV_A_QUEUE_MAX = (__NETDEV_A_QUEUE_MAX - 1)166 NETDEV_A_QUEUE_MAX = (__NETDEV_A_QUEUE_MAX - 1)
@@ -202,6 +203,15 @@ enum { · 36 unmodified lines
202 NETDEV_A_QSTATS_MAX = (__NETDEV_A_QSTATS_MAX - 1)203 NETDEV_A_QSTATS_MAX = (__NETDEV_A_QSTATS_MAX - 1)
203};204};
204 205
206enum {
207 NETDEV_A_LEASE_IFINDEX = 1,
208 NETDEV_A_LEASE_QUEUE,
209 NETDEV_A_LEASE_NETNS_ID,
210
211 __NETDEV_A_LEASE_MAX,
212 NETDEV_A_LEASE_MAX = (__NETDEV_A_LEASE_MAX - 1)
213};
214
205enum {215enum {
206 NETDEV_A_DMABUF_IFINDEX = 1,216 NETDEV_A_DMABUF_IFINDEX = 1,
207 NETDEV_A_DMABUF_QUEUES,217 NETDEV_A_DMABUF_QUEUES,
@@ -228,6 +238,7 @@ enum { · 20 unmodified lines
228 NETDEV_CMD_BIND_RX,238 NETDEV_CMD_BIND_RX,
229 NETDEV_CMD_NAPI_SET,239 NETDEV_CMD_NAPI_SET,
230 NETDEV_CMD_BIND_TX,240 NETDEV_CMD_BIND_TX,
241 NETDEV_CMD_QUEUE_CREATE,
231 242
232 __NETDEV_CMD_MAX,243 __NETDEV_CMD_MAX,
233 NETDEV_CMD_MAX = (__NETDEV_CMD_MAX - 1)244 NETDEV_CMD_MAX = (__NETDEV_CMD_MAX - 1)
include/uapi/linux/netfilter/nf_tables.h+5−1
@@ -46,6 +46,10 @@ enum nft_registers { · 45 unmodified lines
46};46};
47#define NFT_REG_MAX (__NFT_REG_MAX - 1)47#define NFT_REG_MAX (__NFT_REG_MAX - 1)
48 48
49#ifdef __KERNEL__
50#define NFT_REG32_MAX NFT_REG32_15
51#endif
52
49#define NFT_REG_SIZE 1653#define NFT_REG_SIZE 16
50#define NFT_REG32_SIZE 454#define NFT_REG32_SIZE 4
51#define NFT_REG32_COUNT (NFT_REG32_15 - NFT_REG32_00 + 1)55#define NFT_REG32_COUNT (NFT_REG32_15 - NFT_REG32_00 + 1)
@@ -884,7 +888,7 @@ enum nft_exthdr_flags { · 832 unmodified lines
884 * @NFT_EXTHDR_OP_TCPOPT: match against tcp options888 * @NFT_EXTHDR_OP_TCPOPT: match against tcp options
885 * @NFT_EXTHDR_OP_IPV4: match against ipv4 options889 * @NFT_EXTHDR_OP_IPV4: match against ipv4 options
886 * @NFT_EXTHDR_OP_SCTP: match against sctp chunks890 * @NFT_EXTHDR_OP_SCTP: match against sctp chunks
887 * @NFT_EXTHDR_OP_DCCP: match against dccp otions891 * @NFT_EXTHDR_OP_DCCP: match against dccp options
888 */892 */
889enum nft_exthdr_op {893enum nft_exthdr_op {
890 NFT_EXTHDR_OP_IPV6,894 NFT_EXTHDR_OP_IPV6,
include/uapi/linux/nfc.h+3−3
@@ -55,7 +55,7 @@ · 54 unmodified lines
55 * (it sends %NFC_ATTR_DEVICE_INDEX)55 * (it sends %NFC_ATTR_DEVICE_INDEX)
56 * @NFC_EVENT_TM_ACTIVATED: event emitted when the adapter is activated in56 * @NFC_EVENT_TM_ACTIVATED: event emitted when the adapter is activated in
57 * target mode.57 * target mode.
58 * @NFC_EVENT_DEVICE_DEACTIVATED: event emitted when the adapter is deactivated58 * @NFC_EVENT_TM_DEACTIVATED: event emitted when the adapter is deactivated
59 * from target mode.59 * from target mode.
60 * @NFC_CMD_LLC_GET_PARAMS: request LTO, RW, and MIUX parameters for a device60 * @NFC_CMD_LLC_GET_PARAMS: request LTO, RW, and MIUX parameters for a device
61 * @NFC_CMD_LLC_SET_PARAMS: set one or more of LTO, RW, and MIUX parameters for61 * @NFC_CMD_LLC_SET_PARAMS: set one or more of LTO, RW, and MIUX parameters for
@@ -156,7 +156,7 @@ enum nfc_commands { · 94 unmodified lines
156 * @NFC_ATTR_SE_INDEX: Secure element index156 * @NFC_ATTR_SE_INDEX: Secure element index
157 * @NFC_ATTR_SE_TYPE: Secure element type (UICC or EMBEDDED)157 * @NFC_ATTR_SE_TYPE: Secure element type (UICC or EMBEDDED)
158 * @NFC_ATTR_FIRMWARE_DOWNLOAD_STATUS: Firmware download operation status158 * @NFC_ATTR_FIRMWARE_DOWNLOAD_STATUS: Firmware download operation status
159 * @NFC_ATTR_APDU: Secure element APDU159 * @NFC_ATTR_SE_APDU: Secure element APDU
160 * @NFC_ATTR_TARGET_ISO15693_DSFID: ISO 15693 Data Storage Format Identifier160 * @NFC_ATTR_TARGET_ISO15693_DSFID: ISO 15693 Data Storage Format Identifier
161 * @NFC_ATTR_TARGET_ISO15693_UID: ISO 15693 Unique Identifier161 * @NFC_ATTR_TARGET_ISO15693_UID: ISO 15693 Unique Identifier
162 * @NFC_ATTR_SE_PARAMS: Parameters data from an evt_transaction162 * @NFC_ATTR_SE_PARAMS: Parameters data from an evt_transaction
@@ -291,7 +291,7 @@ struct sockaddr_nfc_llcp { · 128 unmodified lines
291 291
292#define NFC_HEADER_SIZE 1292#define NFC_HEADER_SIZE 1
293 293
294/**294/*
295 * Pseudo-header info for raw socket packets295 * Pseudo-header info for raw socket packets
296 * First byte is the adapter index296 * First byte is the adapter index
297 * Second byte contains flags297 * Second byte contains flags
include/uapi/linux/nl80211.h+269−3
@@ -906,8 +906,9 @@ · 905 unmodified lines
906 * @NL80211_CMD_UNEXPECTED_FRAME: Used by an application controlling an AP906 * @NL80211_CMD_UNEXPECTED_FRAME: Used by an application controlling an AP
907 * (or GO) interface (i.e. hostapd) to ask for unexpected frames to907 * (or GO) interface (i.e. hostapd) to ask for unexpected frames to
908 * implement sending deauth to stations that send unexpected class 3908 * implement sending deauth to stations that send unexpected class 3
909 * frames. Also used as the event sent by the kernel when such a frame909 * frames. For NAN_DATA interfaces, this is used to report frames from
910 * is received.910 * unknown peers (A2 not assigned to any active NDP).
911 * Also used as the event sent by the kernel when such a frame is received.
911 * For the event, the %NL80211_ATTR_MAC attribute carries the TA and912 * For the event, the %NL80211_ATTR_MAC attribute carries the TA and
912 * other attributes like the interface index are present.913 * other attributes like the interface index are present.
913 * If used as the command it must have an interface index and you can914 * If used as the command it must have an interface index and you can
@@ -1361,6 +1362,59 @@ · 447 unmodified lines
1361 * user space that the NAN new cluster has been joined. The cluster ID is1362 * user space that the NAN new cluster has been joined. The cluster ID is
1362 * indicated by %NL80211_ATTR_MAC.1363 * indicated by %NL80211_ATTR_MAC.
1363 *1364 *
1365 * @NL80211_CMD_INCUMBENT_SIGNAL_DETECT: Once any incumbent signal is detected
1366 * on the operating channel in 6 GHz band, userspace is notified with the
1367 * signal interference bitmap using
1368 * %NL80211_ATTR_INCUMBENT_SIGNAL_INTERFERENCE_BITMAP. The current channel
1369 * definition is also sent.
1370 *
1371 * @NL80211_CMD_NAN_SET_LOCAL_SCHED: Set the local NAN schedule. NAN must be
1372 * operational (%NL80211_CMD_START_NAN was executed). Must contain
1373 * %NL80211_ATTR_NAN_TIME_SLOTS and %NL80211_ATTR_NAN_AVAIL_BLOB, but
1374 * %NL80211_ATTR_NAN_CHANNEL is optional (for example in case of a channel
1375 * removal, that channel won't be provided).
1376 * If %NL80211_ATTR_NAN_SCHED_DEFERRED is set, the command is a request
1377 * from the device to perform an announced schedule update. See
1378 * %NL80211_ATTR_NAN_SCHED_DEFERRED for more details.
1379 * If not set, the schedule should be applied immediately.
1380 * @NL80211_CMD_NAN_SCHED_UPDATE_DONE: Event sent to user space to notify that
1381 * a deferred local NAN schedule update (requested with
1382 * %NL80211_CMD_NAN_SET_LOCAL_SCHED and %NL80211_ATTR_NAN_SCHED_DEFERRED)
1383 * has been completed. The presence of %NL80211_ATTR_NAN_SCHED_UPDATE_SUCCESS
1384 * indicates that the update was successful.
1385 * @NL80211_CMD_NAN_SET_PEER_SCHED: Set the peer NAN schedule. NAN
1386 * must be operational (%NL80211_CMD_START_NAN was executed).
1387 * Required attributes: %NL80211_ATTR_MAC (peer NMI address) and
1388 * %NL80211_ATTR_NAN_COMMITTED_DW.
1389 * Optionally, the full schedule can be provided by including all of:
1390 * %NL80211_ATTR_NAN_SEQ_ID, %NL80211_ATTR_NAN_CHANNEL (one or more), and
1391 * %NL80211_ATTR_NAN_PEER_MAPS (see &enum nl80211_nan_peer_map_attrs).
1392 * If any of these three optional attributes is provided, all three must
1393 * be provided.
1394 * Each peer channel must be compatible with at least one local channel
1395 * set by %NL80211_CMD_SET_LOCAL_NAN_SCHED. Different maps must not
1396 * contain compatible channels.
1397 * For single-radio devices (n_radio <= 1), different maps must not
1398 * schedule the same time slot, as the device cannot operate on multiple
1399 * channels simultaneously.
1400 * When updating an existing peer schedule, the full new schedule must be
1401 * provided - partial updates are not supported. The new schedule will
1402 * completely replace the previous one.
1403 * The peer schedule is automatically removed when the NMI station is
1404 * removed.
1405 * @NL80211_CMD_NAN_ULW_UPDATE: Notification from the driver to user space
1406 * with the updated ULW blob of the device. User space can use this blob
1407 * to attach to frames sent to peers. This notification contains
1408 * %NL80211_ATTR_NAN_ULW with the ULW blob.
1409 * @NL80211_CMD_NAN_CHANNEL_EVAC: Notification to indicate that a NAN
1410 * channel has been evacuated due to resource conflicts with other
1411 * interfaces. This can happen when another interface sharing the channel
1412 * resource with NAN needs to move to a different channel (e.g., channel
1413 * switch or link switch on a BSS interface).
1414 * The notification contains %NL80211_ATTR_NAN_CHANNEL attribute
1415 * identifying the evacuated channel.
1416 * User space may reconfigure the local schedule in response to this
1417 * notification.
1364 * @NL80211_CMD_MAX: highest used command number1418 * @NL80211_CMD_MAX: highest used command number
1365 * @__NL80211_CMD_AFTER_LAST: internal use1419 * @__NL80211_CMD_AFTER_LAST: internal use
1366 */1420 */
@@ -1624,6 +1678,18 @@ enum nl80211_commands { · 257 unmodified lines
1624 NL80211_CMD_NAN_NEXT_DW_NOTIFICATION,1678 NL80211_CMD_NAN_NEXT_DW_NOTIFICATION,
1625 NL80211_CMD_NAN_CLUSTER_JOINED,1679 NL80211_CMD_NAN_CLUSTER_JOINED,
1626 1680
1681 NL80211_CMD_INCUMBENT_SIGNAL_DETECT,
1682
1683 NL80211_CMD_NAN_SET_LOCAL_SCHED,
1684
1685 NL80211_CMD_NAN_SCHED_UPDATE_DONE,
1686
1687 NL80211_CMD_NAN_SET_PEER_SCHED,
1688
1689 NL80211_CMD_NAN_ULW_UPDATE,
1690
1691 NL80211_CMD_NAN_CHANNEL_EVAC,
1692
1627 /* add new commands above here */1693 /* add new commands above here */
1628 1694
1629 /* used to define NL80211_CMD_MAX below */1695 /* used to define NL80211_CMD_MAX below */
@@ -2651,7 +2717,8 @@ enum nl80211_commands { · 1021 unmodified lines
2651 * a flow is assigned on each round of the DRR scheduler.2717 * a flow is assigned on each round of the DRR scheduler.
2652 * @NL80211_ATTR_HE_CAPABILITY: HE Capability information element (from2718 * @NL80211_ATTR_HE_CAPABILITY: HE Capability information element (from
2653 * association request when used with NL80211_CMD_NEW_STATION). Can be set2719 * association request when used with NL80211_CMD_NEW_STATION). Can be set
2654 * only if %NL80211_STA_FLAG_WME is set.2720 * only if %NL80211_STA_FLAG_WME is set (except for NAN, which uses WME
2721 * anyway).
2655 *2722 *
2656 * @NL80211_ATTR_FTM_RESPONDER: nested attribute which user-space can include2723 * @NL80211_ATTR_FTM_RESPONDER: nested attribute which user-space can include
2657 * in %NL80211_CMD_START_AP or %NL80211_CMD_SET_BEACON for fine timing2724 * in %NL80211_CMD_START_AP or %NL80211_CMD_SET_BEACON for fine timing
@@ -2983,6 +3050,95 @@ enum nl80211_commands { · 325 unmodified lines
2983 * @NL80211_ATTR_DISABLE_UHR: Force UHR capable interfaces to disable3050 * @NL80211_ATTR_DISABLE_UHR: Force UHR capable interfaces to disable
2984 * this feature during association. This is a flag attribute.3051 * this feature during association. This is a flag attribute.
2985 * Currently only supported in mac80211 drivers.3052 * Currently only supported in mac80211 drivers.
3053 * @NL80211_ATTR_NAN_CHANNEL: This is a nested attribute. There can be multiple
3054 * attributes of this type, each one represents a channel definition and
3055 * consists of top-level attributes like %NL80211_ATTR_WIPHY_FREQ.
3056 * When used with %NL80211_CMD_NAN_SET_LOCAL_SCHED, it specifies
3057 * the channel definitions on which the radio needs to operate during
3058 * specific time slots. All of the channel definitions should be mutually
3059 * incompatible. With this command, %NL80211_ATTR_NAN_CHANNEL_ENTRY and
3060 * %NL80211_ATTR_NAN_RX_NSS are mandatory.
3061 * When used with %NL80211_CMD_NAN_SET_PEER_SCHED, it configures the
3062 * peer NAN channels. In that case, the channel definitions can be
3063 * compatible to each other, or even identical just with different RX NSS.
3064 * With this command, %NL80211_ATTR_NAN_CHANNEL_ENTRY and
3065 * %NL80211_ATTR_NAN_RX_NSS are mandatory.
3066 * The number of channels should fit the current configuration of channels
3067 * and the possible interface combinations.
3068 * If an existing NAN channel is changed but the chandef isn't, the
3069 * channel entry must also remain unchanged.
3070 * When used with %NL80211_CMD_NAN_CHANNEL_EVAC, this identifies the
3071 * channels that were evacuated.
3072 * @NL80211_ATTR_NAN_CHANNEL_ENTRY: a byte array of 6 bytes. contains the
3073 * Channel Entry as defined in Wi-Fi Aware (TM) 4.0 specification Table
3074 * 100 (Channel Entry format for the NAN Availability attribute).
3075 * @NL80211_ATTR_NAN_RX_NSS: (u8) RX NSS used for a NAN channel. This is
3076 * used with %NL80211_ATTR_NAN_CHANNEL when configuring NAN channels with
3077 * %NL80211_CMD_NAN_SET_LOCAL_SCHED or %NL80211_CMD_NAN_SET_PEER_SCHED.
3078 * @NL80211_ATTR_NAN_TIME_SLOTS: an array of u8 values and 32 cells. each value
3079 * maps a time slot to the chandef on which the radio should operate on in
3080 * that time. %NL80211_NAN_SCHED_NOT_AVAIL_SLOT indicates unscheduled.
3081 * The chandef is represented using its index, where the index is the
3082 * sequential number of the %NL80211_ATTR_NAN_CHANNEL attribute within all
3083 * the attributes of this type.
3084 * Each slots spans over 16TUs, hence the entire schedule spans over
3085 * 512TUs. Other slot durations and periods are currently not supported.
3086 * @NL80211_ATTR_NAN_AVAIL_BLOB: (Binary) The NAN Availability attribute blob,
3087 * including the attribute header, as defined in Wi-Fi Aware (TM) 4.0
3088 * specification Table 93 (NAN Availability attribute format). Required with
3089 * %NL80211_CMD_NAN_SET_LOCAL_SCHED to provide the raw NAN Availability
3090 * attribute. Used by the device to publish Schedule Update NAFs.
3091 * @NL80211_ATTR_NAN_SCHED_DEFERRED: Flag attribute used with
3092 * %NL80211_CMD_NAN_SET_LOCAL_SCHED. When present, the command is a
3093 * request from the device to perform an announced schedule update. This
3094 * means that it needs to send the updated NAN availability to the peers,
3095 * and do the actual switch on the right time (i.e. at the end of the slot
3096 * after the slot in which the updated NAN Availability was sent). Since
3097 * the slots management is done in the device, the update to the peers
3098 * needs to be sent by the device, so it knows the actual switch time.
3099 * If the flag is not set, the schedule should be applied immediately.
3100 * When this flag is set, the total number of NAN channels from both the
3101 * old and new schedules must not exceed the allowed number of local NAN
3102 * channels, because with deferred scheduling the old channels cannot be
3103 * removed before adding the new ones to free up space.
3104 * @NL80211_ATTR_NAN_SCHED_UPDATE_SUCCESS: flag attribute used with
3105 * %NL80211_CMD_NAN_SCHED_UPDATE_DONE to indicate that the deferred
3106 * schedule update completed successfully. If this flag is not present,
3107 * the update failed.
3108 * @NL80211_ATTR_NAN_NMI_MAC: The address of the NMI station to which this NDI
3109 * station belongs. Used with %NL80211_CMD_NEW_STATION when adding an NDI
3110 * station.
3111 * @NL80211_ATTR_NAN_ULW: (Binary) The initial ULW(s) as published by the
3112 * peer, as defined in the Wi-Fi Aware (TM) 4.0 specification Table 109
3113 * (Unaligned Schedule attribute format). Used to configure the device
3114 * with the initial ULW(s) of a peer, before the device starts tracking it.
3115 * @NL80211_ATTR_NAN_COMMITTED_DW: (u16) The committed DW as published by the
3116 * peer, as defined in the Wi-Fi Aware (TM) 4.0 specification Table 80
3117 * (Committed DW Information field format).
3118 * @NL80211_ATTR_NAN_SEQ_ID: (u8) The sequence ID of the peer schedule that
3119 * %NL80211_CMD_NAN_SET_PEER_SCHED defines. The device follows the
3120 * sequence ID in the frames to identify newer schedules. Once a schedule
3121 * with a higher sequence ID is received, the device may stop communicating
3122 * with that peer until a new peer schedule with a matching sequence ID is
3123 * received.
3124 * @NL80211_ATTR_NAN_MAX_CHAN_SWITCH_TIME: (u16) The maximum channel switch
3125 * time, in microseconds.
3126 * @NL80211_ATTR_NAN_PEER_MAPS: Nested array of peer schedule maps.
3127 * Used with %NL80211_CMD_NAN_SET_PEER_SCHED. Contains up to 2 entries,
3128 * each containing nested attributes from &enum nl80211_nan_peer_map_attrs.
3129 *
3130 * @NL80211_ATTR_INCUMBENT_SIGNAL_INTERFERENCE_BITMAP: u32 attribute specifying
3131 * the signal interference bitmap detected on the operating bandwidth for
3132 * %NL80211_CMD_INCUMBENT_SIGNAL_DETECT. Each bit represents a 20 MHz
3133 * segment, lowest bit corresponds to the lowest 20 MHz segment, in the
3134 * operating bandwidth where the interference is detected. Punctured
3135 * sub-channels are included in the bitmap structure; however, since
3136 * interference detection is not performed on these sub-channels, their
3137 * corresponding bits are consistently set to zero.
3138 *
3139 * @NL80211_ATTR_UHR_OPERATION: Full UHR Operation element, as it appears in
3140 * association response etc., since it's abridged in the beacon. Used
3141 * for START_AP etc.
2986 *3142 *
2987 * @NUM_NL80211_ATTR: total number of nl80211_attrs available3143 * @NUM_NL80211_ATTR: total number of nl80211_attrs available
2988 * @NL80211_ATTR_MAX: highest attribute number currently defined3144 * @NL80211_ATTR_MAX: highest attribute number currently defined
@@ -3557,6 +3713,26 @@ enum nl80211_attrs { · 568 unmodified lines
3557 NL80211_ATTR_UHR_CAPABILITY,3713 NL80211_ATTR_UHR_CAPABILITY,
3558 NL80211_ATTR_DISABLE_UHR,3714 NL80211_ATTR_DISABLE_UHR,
3559 3715
3716 NL80211_ATTR_INCUMBENT_SIGNAL_INTERFERENCE_BITMAP,
3717
3718 NL80211_ATTR_UHR_OPERATION,
3719
3720 NL80211_ATTR_NAN_CHANNEL,
3721 NL80211_ATTR_NAN_CHANNEL_ENTRY,
3722 NL80211_ATTR_NAN_TIME_SLOTS,
3723 NL80211_ATTR_NAN_RX_NSS,
3724 NL80211_ATTR_NAN_AVAIL_BLOB,
3725 NL80211_ATTR_NAN_SCHED_DEFERRED,
3726 NL80211_ATTR_NAN_SCHED_UPDATE_SUCCESS,
3727
3728 NL80211_ATTR_NAN_NMI_MAC,
3729
3730 NL80211_ATTR_NAN_ULW,
3731 NL80211_ATTR_NAN_COMMITTED_DW,
3732 NL80211_ATTR_NAN_SEQ_ID,
3733 NL80211_ATTR_NAN_MAX_CHAN_SWITCH_TIME,
3734 NL80211_ATTR_NAN_PEER_MAPS,
3735
3560 /* add attributes here, update the policy in nl80211.c */3736 /* add attributes here, update the policy in nl80211.c */
3561 3737
3562 __NL80211_ATTR_AFTER_LAST,3738 __NL80211_ATTR_AFTER_LAST,
@@ -3650,6 +3826,9 @@ enum nl80211_attrs { · 87 unmodified lines
3650 * @NL80211_IFTYPE_OCB: Outside Context of a BSS3826 * @NL80211_IFTYPE_OCB: Outside Context of a BSS
3651 * This mode corresponds to the MIB variable dot11OCBActivated=true3827 * This mode corresponds to the MIB variable dot11OCBActivated=true
3652 * @NL80211_IFTYPE_NAN: NAN device interface type (not a netdev)3828 * @NL80211_IFTYPE_NAN: NAN device interface type (not a netdev)
3829 * @NL80211_IFTYPE_NAN_DATA: NAN data interface type (netdev); NAN data
3830 * interfaces can only be brought up (IFF_UP) when a NAN interface
3831 * already exists and NAN has been started (using %NL80211_CMD_START_NAN).
3653 * @NL80211_IFTYPE_MAX: highest interface type number currently defined3832 * @NL80211_IFTYPE_MAX: highest interface type number currently defined
3654 * @NUM_NL80211_IFTYPES: number of defined interface types3833 * @NUM_NL80211_IFTYPES: number of defined interface types
3655 *3834 *
@@ -3671,6 +3850,7 @@ enum nl80211_iftype { · 15 unmodified lines
3671 NL80211_IFTYPE_P2P_DEVICE,3850 NL80211_IFTYPE_P2P_DEVICE,
3672 NL80211_IFTYPE_OCB,3851 NL80211_IFTYPE_OCB,
3673 NL80211_IFTYPE_NAN,3852 NL80211_IFTYPE_NAN,
3853 NL80211_IFTYPE_NAN_DATA,
3674 3854
3675 /* keep last */3855 /* keep last */
3676 NUM_NL80211_IFTYPES,3856 NUM_NL80211_IFTYPES,
@@ -4359,6 +4539,46 @@ enum nl80211_band_attr { · 682 unmodified lines
4359 4539
4360#define NL80211_BAND_ATTR_HT_CAPA NL80211_BAND_ATTR_HT_CAPA4540#define NL80211_BAND_ATTR_HT_CAPA NL80211_BAND_ATTR_HT_CAPA
4361 4541
4542/**
4543 * enum nl80211_nan_phy_cap_attr - NAN PHY capabilities attributes
4544 * @__NL80211_NAN_PHY_CAP_ATTR_INVALID: attribute number 0 is reserved
4545 * @NL80211_NAN_PHY_CAP_ATTR_HT_MCS_SET: 16-byte attribute containing HT MCS set
4546 * @NL80211_NAN_PHY_CAP_ATTR_HT_CAPA: HT capabilities (u16)
4547 * @NL80211_NAN_PHY_CAP_ATTR_HT_AMPDU_FACTOR: HT A-MPDU factor (u8)
4548 * @NL80211_NAN_PHY_CAP_ATTR_HT_AMPDU_DENSITY: HT A-MPDU density (u8)
4549 * @NL80211_NAN_PHY_CAP_ATTR_VHT_MCS_SET: 8-byte attribute containing VHT MCS set
4550 * @NL80211_NAN_PHY_CAP_ATTR_VHT_CAPA: VHT capabilities (u32)
4551 * @NL80211_NAN_PHY_CAP_ATTR_HE_MAC: HE MAC capabilities
4552 * @NL80211_NAN_PHY_CAP_ATTR_HE_PHY: HE PHY capabilities
4553 * @NL80211_NAN_PHY_CAP_ATTR_HE_MCS_SET: HE supported NSS/MCS combinations
4554 * @NL80211_NAN_PHY_CAP_ATTR_HE_PPE: HE PPE thresholds
4555 * @NL80211_NAN_PHY_CAP_ATTR_MAX: highest NAN PHY cap attribute number
4556 * @__NL80211_NAN_PHY_CAP_ATTR_AFTER_LAST: internal use
4557 */
4558enum nl80211_nan_phy_cap_attr {
4559 __NL80211_NAN_PHY_CAP_ATTR_INVALID,
4560
4561 /* HT capabilities */
4562 NL80211_NAN_PHY_CAP_ATTR_HT_MCS_SET,
4563 NL80211_NAN_PHY_CAP_ATTR_HT_CAPA,
4564 NL80211_NAN_PHY_CAP_ATTR_HT_AMPDU_FACTOR,
4565 NL80211_NAN_PHY_CAP_ATTR_HT_AMPDU_DENSITY,
4566
4567 /* VHT capabilities */
4568 NL80211_NAN_PHY_CAP_ATTR_VHT_MCS_SET,
4569 NL80211_NAN_PHY_CAP_ATTR_VHT_CAPA,
4570
4571 /* HE capabilities */
4572 NL80211_NAN_PHY_CAP_ATTR_HE_MAC,
4573 NL80211_NAN_PHY_CAP_ATTR_HE_PHY,
4574 NL80211_NAN_PHY_CAP_ATTR_HE_MCS_SET,
4575 NL80211_NAN_PHY_CAP_ATTR_HE_PPE,
4576
4577 /* keep last */
4578 __NL80211_NAN_PHY_CAP_ATTR_AFTER_LAST,
4579 NL80211_NAN_PHY_CAP_ATTR_MAX = __NL80211_NAN_PHY_CAP_ATTR_AFTER_LAST - 1
4580};
4581
4362/**4582/**
4363 * enum nl80211_wmm_rule - regulatory wmm rule4583 * enum nl80211_wmm_rule - regulatory wmm rule
4364 *4584 *
@@ -4480,6 +4700,10 @@ enum nl80211_wmm_rule { · 115 unmodified lines
4480 * as a non-primary subchannel. Only applicable to S1G channels.4700 * as a non-primary subchannel. Only applicable to S1G channels.
4481 * @NL80211_FREQUENCY_ATTR_NO_UHR: UHR operation is not allowed on this channel4701 * @NL80211_FREQUENCY_ATTR_NO_UHR: UHR operation is not allowed on this channel
4482 * in current regulatory domain.4702 * in current regulatory domain.
4703 * @NL80211_FREQUENCY_ATTR_CAC_START_TIME: Channel Availability Check (CAC)
4704 * start time (CLOCK_BOOTTIME, nanoseconds). Only present when CAC is
4705 * currently in progress on this channel.
4706 * @NL80211_FREQUENCY_ATTR_PAD: attribute used for padding for 64-bit alignment
4483 * @NL80211_FREQUENCY_ATTR_MAX: highest frequency attribute number4707 * @NL80211_FREQUENCY_ATTR_MAX: highest frequency attribute number
4484 * currently defined4708 * currently defined
4485 * @__NL80211_FREQUENCY_ATTR_AFTER_LAST: internal use4709 * @__NL80211_FREQUENCY_ATTR_AFTER_LAST: internal use
@@ -4530,6 +4754,8 @@ enum nl80211_frequency_attr { · 44 unmodified lines
4530 NL80211_FREQUENCY_ATTR_NO_16MHZ,4754 NL80211_FREQUENCY_ATTR_NO_16MHZ,
4531 NL80211_FREQUENCY_ATTR_S1G_NO_PRIMARY,4755 NL80211_FREQUENCY_ATTR_S1G_NO_PRIMARY,
4532 NL80211_FREQUENCY_ATTR_NO_UHR,4756 NL80211_FREQUENCY_ATTR_NO_UHR,
4757 NL80211_FREQUENCY_ATTR_CAC_START_TIME,
4758 NL80211_FREQUENCY_ATTR_PAD,
4533 4759
4534 /* keep last */4760 /* keep last */
4535 __NL80211_FREQUENCY_ATTR_AFTER_LAST,4761 __NL80211_FREQUENCY_ATTR_AFTER_LAST,
@@ -5466,6 +5692,8 @@ enum nl80211_bss_status { · 930 unmodified lines
5466 * @NL80211_AUTHTYPE_FILS_SK_PFS: Fast Initial Link Setup shared key with PFS5692 * @NL80211_AUTHTYPE_FILS_SK_PFS: Fast Initial Link Setup shared key with PFS
5467 * @NL80211_AUTHTYPE_FILS_PK: Fast Initial Link Setup public key5693 * @NL80211_AUTHTYPE_FILS_PK: Fast Initial Link Setup public key
5468 * @NL80211_AUTHTYPE_EPPKE: Enhanced Privacy Protection Key Exchange5694 * @NL80211_AUTHTYPE_EPPKE: Enhanced Privacy Protection Key Exchange
5695 * @NL80211_AUTHTYPE_IEEE8021X: IEEE 802.1X authentication utilizing
5696 * Authentication frames
5469 * @__NL80211_AUTHTYPE_NUM: internal5697 * @__NL80211_AUTHTYPE_NUM: internal
5470 * @NL80211_AUTHTYPE_MAX: maximum valid auth algorithm5698 * @NL80211_AUTHTYPE_MAX: maximum valid auth algorithm
5471 * @NL80211_AUTHTYPE_AUTOMATIC: determine automatically (if necessary by5699 * @NL80211_AUTHTYPE_AUTOMATIC: determine automatically (if necessary by
@@ -5482,6 +5710,7 @@ enum nl80211_auth_type { · 10 unmodified lines
5482 NL80211_AUTHTYPE_FILS_SK_PFS,5710 NL80211_AUTHTYPE_FILS_SK_PFS,
5483 NL80211_AUTHTYPE_FILS_PK,5711 NL80211_AUTHTYPE_FILS_PK,
5484 NL80211_AUTHTYPE_EPPKE,5712 NL80211_AUTHTYPE_EPPKE,
5713 NL80211_AUTHTYPE_IEEE8021X,
5485 5714
5486 /* keep last */5715 /* keep last */
5487 __NL80211_AUTHTYPE_NUM,5716 __NL80211_AUTHTYPE_NUM,
@@ -6795,6 +7024,11 @@ enum nl80211_feature_flags { · 1307 unmodified lines
6795 * frames in both non‑AP STA and AP mode as specified in7024 * frames in both non‑AP STA and AP mode as specified in
6796 * "IEEE P802.11bi/D3.0, 12.16.6".7025 * "IEEE P802.11bi/D3.0, 12.16.6".
6797 *7026 *
7027 * @NL80211_EXT_FEATURE_IEEE8021X_AUTH: Driver supports IEEE 802.1X
7028 * authentication utilizing Authentication frames with user space SME
7029 * (NL80211_CMD_AUTHENTICATE) in non-AP STA mode, as specified in
7030 * "IEEE P802.11bi/D4.0, 12.16.5".
7031 *
6798 * @NUM_NL80211_EXT_FEATURES: number of extended features.7032 * @NUM_NL80211_EXT_FEATURES: number of extended features.
6799 * @MAX_NL80211_EXT_FEATURES: highest extended feature index.7033 * @MAX_NL80211_EXT_FEATURES: highest extended feature index.
6800 */7034 */
@@ -6873,6 +7107,7 @@ enum nl80211_ext_feature_index { · 72 unmodified lines
6873 NL80211_EXT_FEATURE_BEACON_RATE_EHT,7107 NL80211_EXT_FEATURE_BEACON_RATE_EHT,
6874 NL80211_EXT_FEATURE_EPPKE,7108 NL80211_EXT_FEATURE_EPPKE,
6875 NL80211_EXT_FEATURE_ASSOC_FRAME_ENCRYPTION,7109 NL80211_EXT_FEATURE_ASSOC_FRAME_ENCRYPTION,
7110 NL80211_EXT_FEATURE_IEEE8021X_AUTH,
6876 7111
6877 /* add new features before the definition below */7112 /* add new features before the definition below */
6878 NUM_NL80211_EXT_FEATURES,7113 NUM_NL80211_EXT_FEATURES,
@@ -8517,6 +8752,8 @@ enum nl80211_s1g_short_beacon_attrs { · 1638 unmodified lines
8517 * @NL80211_NAN_CAPA_CAPABILITIES: u8 attribute containing the8752 * @NL80211_NAN_CAPA_CAPABILITIES: u8 attribute containing the
8518 * capabilities of the device as defined in Wi-Fi Aware (TM)8753 * capabilities of the device as defined in Wi-Fi Aware (TM)
8519 * specification Table 79 (Capabilities field).8754 * specification Table 79 (Capabilities field).
8755 * @NL80211_NAN_CAPA_PHY: nested attribute containing band-agnostic
8756 * capabilities for NAN data path. See &enum nl80211_nan_phy_cap_attr.
8520 * @__NL80211_NAN_CAPABILITIES_LAST: Internal8757 * @__NL80211_NAN_CAPABILITIES_LAST: Internal
8521 * @NL80211_NAN_CAPABILITIES_MAX: Highest NAN capability attribute.8758 * @NL80211_NAN_CAPABILITIES_MAX: Highest NAN capability attribute.
8522 */8759 */
@@ -8529,9 +8766,38 @@ enum nl80211_nan_capabilities { · 6 unmodified lines
8529 NL80211_NAN_CAPA_NUM_ANTENNAS,8766 NL80211_NAN_CAPA_NUM_ANTENNAS,
8530 NL80211_NAN_CAPA_MAX_CHANNEL_SWITCH_TIME,8767 NL80211_NAN_CAPA_MAX_CHANNEL_SWITCH_TIME,
8531 NL80211_NAN_CAPA_CAPABILITIES,8768 NL80211_NAN_CAPA_CAPABILITIES,
8769 NL80211_NAN_CAPA_PHY,
8532 /* keep last */8770 /* keep last */
8533 __NL80211_NAN_CAPABILITIES_LAST,8771 __NL80211_NAN_CAPABILITIES_LAST,
8534 NL80211_NAN_CAPABILITIES_MAX = __NL80211_NAN_CAPABILITIES_LAST - 1,8772 NL80211_NAN_CAPABILITIES_MAX = __NL80211_NAN_CAPABILITIES_LAST - 1,
8535};8773};
8536 8774
8775/**
8776 * enum nl80211_nan_peer_map_attrs - NAN peer schedule map attributes
8777 *
8778 * Nested attributes used within %NL80211_ATTR_NAN_PEER_MAPS to define
8779 * individual peer schedule maps.
8780 *
8781 * @__NL80211_NAN_PEER_MAP_ATTR_INVALID: Invalid
8782 * @NL80211_NAN_PEER_MAP_ATTR_MAP_ID: (u8) The map ID for this schedule map.
8783 * @NL80211_NAN_PEER_MAP_ATTR_TIME_SLOTS: An array of u8 values with 32 cells.
8784 * Each value maps a time slot to a channel index within the schedule's
8785 * channel list (%NL80211_ATTR_NAN_CHANNEL attributes).
8786 * %NL80211_NAN_SCHED_NOT_AVAIL_SLOT indicates unscheduled.
8787 * @__NL80211_NAN_PEER_MAP_ATTR_LAST: Internal
8788 * @NL80211_NAN_PEER_MAP_ATTR_MAX: Highest peer map attribute
8789 */
8790enum nl80211_nan_peer_map_attrs {
8791 __NL80211_NAN_PEER_MAP_ATTR_INVALID,
8792
8793 NL80211_NAN_PEER_MAP_ATTR_MAP_ID,
8794 NL80211_NAN_PEER_MAP_ATTR_TIME_SLOTS,
8795
8796 /* keep last */
8797 __NL80211_NAN_PEER_MAP_ATTR_LAST,
8798 NL80211_NAN_PEER_MAP_ATTR_MAX = __NL80211_NAN_PEER_MAP_ATTR_LAST - 1,
8799};
8800
8801#define NL80211_NAN_SCHED_NOT_AVAIL_SLOT 0xff
8802
8537#endif /* __LINUX_NL80211_H */8803#endif /* __LINUX_NL80211_H */
include/uapi/linux/openvswitch.h+68−8
@@ -70,12 +70,15 @@ enum ovs_datapath_cmd { · 69 unmodified lines
70 * set on the datapath port (for OVS_ACTION_ATTR_MISS). Only valid on70 * set on the datapath port (for OVS_ACTION_ATTR_MISS). Only valid on
71 * %OVS_DP_CMD_NEW requests. A value of zero indicates that upcalls should71 * %OVS_DP_CMD_NEW requests. A value of zero indicates that upcalls should
72 * not be sent.72 * not be sent.
73 * @OVS_DP_ATTR_MASKS_CACHE_SIZE: Number of the entries in the flow table
74 * masks cache.
73 * @OVS_DP_ATTR_PER_CPU_PIDS: Per-cpu array of PIDs for upcalls when75 * @OVS_DP_ATTR_PER_CPU_PIDS: Per-cpu array of PIDs for upcalls when
74 * OVS_DP_F_DISPATCH_UPCALL_PER_CPU feature is set.76 * OVS_DP_F_DISPATCH_UPCALL_PER_CPU feature is set.
75 * @OVS_DP_ATTR_STATS: Statistics about packets that have passed through the77 * @OVS_DP_ATTR_STATS: Statistics about packets that have passed through the
76 * datapath. Always present in notifications.78 * datapath. Always present in notifications.
77 * @OVS_DP_ATTR_MEGAFLOW_STATS: Statistics about mega flow masks usage for the79 * @OVS_DP_ATTR_MEGAFLOW_STATS: Statistics about mega flow masks usage for the
78 * datapath. Always present in notifications.80 * datapath. Always present in notifications.
81 * @OVS_DP_ATTR_USER_FEATURES: OVS_DP_F_* flags.
79 * @OVS_DP_ATTR_IFINDEX: Interface index for a new datapath netdev. Only82 * @OVS_DP_ATTR_IFINDEX: Interface index for a new datapath netdev. Only
80 * valid for %OVS_DP_CMD_NEW requests.83 * valid for %OVS_DP_CMD_NEW requests.
81 *84 *
@@ -83,18 +86,23 @@ enum ovs_datapath_cmd { · 1 unmodified line
83 * payload for %OVS_DP_* commands.86 * payload for %OVS_DP_* commands.
84 */87 */
85enum ovs_datapath_attr {88enum ovs_datapath_attr {
89 /* private: */
86 OVS_DP_ATTR_UNSPEC,90 OVS_DP_ATTR_UNSPEC,
91 /* public: */
87 OVS_DP_ATTR_NAME, /* name of dp_ifindex netdev */92 OVS_DP_ATTR_NAME, /* name of dp_ifindex netdev */
88 OVS_DP_ATTR_UPCALL_PID, /* Netlink PID to receive upcalls */93 OVS_DP_ATTR_UPCALL_PID, /* Netlink PID to receive upcalls */
89 OVS_DP_ATTR_STATS, /* struct ovs_dp_stats */94 OVS_DP_ATTR_STATS, /* struct ovs_dp_stats */
90 OVS_DP_ATTR_MEGAFLOW_STATS, /* struct ovs_dp_megaflow_stats */95 OVS_DP_ATTR_MEGAFLOW_STATS, /* struct ovs_dp_megaflow_stats */
91 OVS_DP_ATTR_USER_FEATURES, /* OVS_DP_F_* */96 OVS_DP_ATTR_USER_FEATURES, /* OVS_DP_F_* */
97 /* private: */
92 OVS_DP_ATTR_PAD,98 OVS_DP_ATTR_PAD,
99 /* public: */
93 OVS_DP_ATTR_MASKS_CACHE_SIZE,100 OVS_DP_ATTR_MASKS_CACHE_SIZE,
94 OVS_DP_ATTR_PER_CPU_PIDS, /* Netlink PIDS to receive upcalls in101 OVS_DP_ATTR_PER_CPU_PIDS, /* Netlink PIDS to receive upcalls in
95 * per-cpu dispatch mode102 * per-cpu dispatch mode
96 */103 */
97 OVS_DP_ATTR_IFINDEX,104 OVS_DP_ATTR_IFINDEX,
105 /* private: */
98 __OVS_DP_ATTR_MAX106 __OVS_DP_ATTR_MAX
99};107};
100 108
@@ -181,6 +189,7 @@ enum ovs_packet_cmd { · 80 unmodified lines
181 * %OVS_USERSPACE_ATTR_EGRESS_TUN_PORT attribute, which is sent only if the189 * %OVS_USERSPACE_ATTR_EGRESS_TUN_PORT attribute, which is sent only if the
182 * output port is actually a tunnel port. Contains the output tunnel key190 * output port is actually a tunnel port. Contains the output tunnel key
183 * extracted from the packet as nested %OVS_TUNNEL_KEY_ATTR_* attributes.191 * extracted from the packet as nested %OVS_TUNNEL_KEY_ATTR_* attributes.
192 * @OVS_PACKET_ATTR_PROBE: Packet operation is a feature probe.
184 * @OVS_PACKET_ATTR_MRU: Present for an %OVS_PACKET_CMD_ACTION and193 * @OVS_PACKET_ATTR_MRU: Present for an %OVS_PACKET_CMD_ACTION and
185 * @OVS_PACKET_ATTR_LEN: Packet size before truncation.194 * @OVS_PACKET_ATTR_LEN: Packet size before truncation.
186 * %OVS_PACKET_ATTR_USERSPACE action specify the Maximum received fragment195 * %OVS_PACKET_ATTR_USERSPACE action specify the Maximum received fragment
@@ -196,21 +205,26 @@ enum ovs_packet_cmd { · 9 unmodified lines
196 * payload for %OVS_PACKET_* commands.205 * payload for %OVS_PACKET_* commands.
197 */206 */
198enum ovs_packet_attr {207enum ovs_packet_attr {
208 /* private: */
199 OVS_PACKET_ATTR_UNSPEC,209 OVS_PACKET_ATTR_UNSPEC,
210 /* public: */
200 OVS_PACKET_ATTR_PACKET, /* Packet data. */211 OVS_PACKET_ATTR_PACKET, /* Packet data. */
201 OVS_PACKET_ATTR_KEY, /* Nested OVS_KEY_ATTR_* attributes. */212 OVS_PACKET_ATTR_KEY, /* Nested OVS_KEY_ATTR_* attributes. */
202 OVS_PACKET_ATTR_ACTIONS, /* Nested OVS_ACTION_ATTR_* attributes. */213 OVS_PACKET_ATTR_ACTIONS, /* Nested OVS_ACTION_ATTR_* attributes. */
203 OVS_PACKET_ATTR_USERDATA, /* OVS_ACTION_ATTR_USERSPACE arg. */214 OVS_PACKET_ATTR_USERDATA, /* OVS_ACTION_ATTR_USERSPACE arg. */
204 OVS_PACKET_ATTR_EGRESS_TUN_KEY, /* Nested OVS_TUNNEL_KEY_ATTR_*215 OVS_PACKET_ATTR_EGRESS_TUN_KEY, /* Nested OVS_TUNNEL_KEY_ATTR_*
205 attributes. */216 attributes. */
217 /* private: */
206 OVS_PACKET_ATTR_UNUSED1,218 OVS_PACKET_ATTR_UNUSED1,
207 OVS_PACKET_ATTR_UNUSED2,219 OVS_PACKET_ATTR_UNUSED2,
220 /* public: */
208 OVS_PACKET_ATTR_PROBE, /* Packet operation is a feature probe,221 OVS_PACKET_ATTR_PROBE, /* Packet operation is a feature probe,
209 error logging should be suppressed. */222 error logging should be suppressed. */
210 OVS_PACKET_ATTR_MRU, /* Maximum received IP fragment size. */223 OVS_PACKET_ATTR_MRU, /* Maximum received IP fragment size. */
211 OVS_PACKET_ATTR_LEN, /* Packet size before truncation. */224 OVS_PACKET_ATTR_LEN, /* Packet size before truncation. */
212 OVS_PACKET_ATTR_HASH, /* Packet hash. */225 OVS_PACKET_ATTR_HASH, /* Packet hash. */
213 OVS_PACKET_ATTR_UPCALL_PID, /* u32 Netlink PID. */226 OVS_PACKET_ATTR_UPCALL_PID, /* u32 Netlink PID. */
227 /* private: */
214 __OVS_PACKET_ATTR_MAX228 __OVS_PACKET_ATTR_MAX
215};229};
216 230
@@ -257,6 +271,11 @@ enum ovs_vport_type { · 40 unmodified lines
257 * upcalls should not be sent.271 * upcalls should not be sent.
258 * @OVS_VPORT_ATTR_STATS: A &struct ovs_vport_stats giving statistics for272 * @OVS_VPORT_ATTR_STATS: A &struct ovs_vport_stats giving statistics for
259 * packets sent or received through the vport.273 * packets sent or received through the vport.
274 * @OVS_VPORT_ATTR_IFINDEX: Provides the ifindex of a vport, or sets the desired
275 * ifindex while creating a new vport with type %OVS_VPORT_TYPE_INTERNAL.
276 * @OVS_VPORT_ATTR_NETNSID: Provides the netns id of the vport if it's not local.
277 * @OVS_VPORT_ATTR_UPCALL_STATS: Provides upcall statistics for a vport.
278 * Contains nested %OVS_VPORT_UPCALL_ATTR_* attributes.
260 *279 *
261 * These attributes follow the &struct ovs_header within the Generic Netlink280 * These attributes follow the &struct ovs_header within the Generic Netlink
262 * payload for %OVS_VPORT_* commands.281 * payload for %OVS_VPORT_* commands.
@@ -272,7 +291,9 @@ enum ovs_vport_type { · 9 unmodified lines
272 * ovs_header plus %OVS_VPORT_ATTR_PORT_NO determine the vport.291 * ovs_header plus %OVS_VPORT_ATTR_PORT_NO determine the vport.
273 */292 */
274enum ovs_vport_attr {293enum ovs_vport_attr {
294 /* private: */
275 OVS_VPORT_ATTR_UNSPEC,295 OVS_VPORT_ATTR_UNSPEC,
296 /* public: */
276 OVS_VPORT_ATTR_PORT_NO, /* u32 port number within datapath */297 OVS_VPORT_ATTR_PORT_NO, /* u32 port number within datapath */
277 OVS_VPORT_ATTR_TYPE, /* u32 OVS_VPORT_TYPE_* constant. */298 OVS_VPORT_ATTR_TYPE, /* u32 OVS_VPORT_TYPE_* constant. */
278 OVS_VPORT_ATTR_NAME, /* string name, up to IFNAMSIZ bytes long */299 OVS_VPORT_ATTR_NAME, /* string name, up to IFNAMSIZ bytes long */
@@ -280,23 +301,27 @@ enum ovs_vport_attr { · 1 unmodified line
280 OVS_VPORT_ATTR_UPCALL_PID, /* array of u32 Netlink socket PIDs for */301 OVS_VPORT_ATTR_UPCALL_PID, /* array of u32 Netlink socket PIDs for */
281 /* receiving upcalls */302 /* receiving upcalls */
282 OVS_VPORT_ATTR_STATS, /* struct ovs_vport_stats */303 OVS_VPORT_ATTR_STATS, /* struct ovs_vport_stats */
304 /* private: */
283 OVS_VPORT_ATTR_PAD,305 OVS_VPORT_ATTR_PAD,
306 /* public: */
284 OVS_VPORT_ATTR_IFINDEX,307 OVS_VPORT_ATTR_IFINDEX,
285 OVS_VPORT_ATTR_NETNSID,308 OVS_VPORT_ATTR_NETNSID,
286 OVS_VPORT_ATTR_UPCALL_STATS,309 OVS_VPORT_ATTR_UPCALL_STATS,
310 /* private: */
287 __OVS_VPORT_ATTR_MAX311 __OVS_VPORT_ATTR_MAX
288};312};
289 313
290#define OVS_VPORT_ATTR_MAX (__OVS_VPORT_ATTR_MAX - 1)314#define OVS_VPORT_ATTR_MAX (__OVS_VPORT_ATTR_MAX - 1)
291 315
292/**316/**
293 * enum ovs_vport_upcall_attr - attributes for %OVS_VPORT_UPCALL* commands317 * enum ovs_vport_upcall_attr - attributes for %OVS_VPORT_ATTR_UPCALL_STATS
294 * @OVS_VPORT_UPCALL_SUCCESS: 64-bit upcall success packets.318 * @OVS_VPORT_UPCALL_ATTR_SUCCESS: 64-bit upcall success packets.
295 * @OVS_VPORT_UPCALL_FAIL: 64-bit upcall fail packets.319 * @OVS_VPORT_UPCALL_ATTR_FAIL: 64-bit upcall fail packets.
296 */320 */
297enum ovs_vport_upcall_attr {321enum ovs_vport_upcall_attr {
298 OVS_VPORT_UPCALL_ATTR_SUCCESS,322 OVS_VPORT_UPCALL_ATTR_SUCCESS,
299 OVS_VPORT_UPCALL_ATTR_FAIL,323 OVS_VPORT_UPCALL_ATTR_FAIL,
324 /* private: */
300 __OVS_VPORT_UPCALL_ATTR_MAX325 __OVS_VPORT_UPCALL_ATTR_MAX
301};326};
302 327
@@ -431,6 +456,7 @@ enum ovs_frag_type { · 128 unmodified lines
431 OVS_FRAG_TYPE_NONE,456 OVS_FRAG_TYPE_NONE,
432 OVS_FRAG_TYPE_FIRST,457 OVS_FRAG_TYPE_FIRST,
433 OVS_FRAG_TYPE_LATER,458 OVS_FRAG_TYPE_LATER,
459 /* private: */
434 __OVS_FRAG_TYPE_MAX460 __OVS_FRAG_TYPE_MAX
435};461};
436 462
@@ -604,6 +630,8 @@ struct ovs_nsh_key_md1 { · 167 unmodified lines
604 * a wildcarded match. Omitting attribute is treated as wildcarding all630 * a wildcarded match. Omitting attribute is treated as wildcarding all
605 * corresponding fields. Optional for all requests. If not present,631 * corresponding fields. Optional for all requests. If not present,
606 * all flow key bits are exact match bits.632 * all flow key bits are exact match bits.
633 * @OVS_FLOW_ATTR_PROBE: Flow operation is a feature probe, error logging
634 * should be suppressed.
607 * @OVS_FLOW_ATTR_UFID: A value between 1-16 octets specifying a unique635 * @OVS_FLOW_ATTR_UFID: A value between 1-16 octets specifying a unique
608 * identifier for the flow. Causes the flow to be indexed by this value rather636 * identifier for the flow. Causes the flow to be indexed by this value rather
609 * than the value of the %OVS_FLOW_ATTR_KEY attribute. Optional for all637 * than the value of the %OVS_FLOW_ATTR_KEY attribute. Optional for all
@@ -617,7 +645,9 @@ struct ovs_nsh_key_md1 { · 7 unmodified lines
617 * payload for %OVS_FLOW_* commands.645 * payload for %OVS_FLOW_* commands.
618 */646 */
619enum ovs_flow_attr {647enum ovs_flow_attr {
648 /* private: */
620 OVS_FLOW_ATTR_UNSPEC,649 OVS_FLOW_ATTR_UNSPEC,
650 /* public: */
621 OVS_FLOW_ATTR_KEY, /* Sequence of OVS_KEY_ATTR_* attributes. */651 OVS_FLOW_ATTR_KEY, /* Sequence of OVS_KEY_ATTR_* attributes. */
622 OVS_FLOW_ATTR_ACTIONS, /* Nested OVS_ACTION_ATTR_* attributes. */652 OVS_FLOW_ATTR_ACTIONS, /* Nested OVS_ACTION_ATTR_* attributes. */
623 OVS_FLOW_ATTR_STATS, /* struct ovs_flow_stats. */653 OVS_FLOW_ATTR_STATS, /* struct ovs_flow_stats. */
@@ -629,13 +659,14 @@ enum ovs_flow_attr { · 5 unmodified lines
629 * logging should be suppressed. */659 * logging should be suppressed. */
630 OVS_FLOW_ATTR_UFID, /* Variable length unique flow identifier. */660 OVS_FLOW_ATTR_UFID, /* Variable length unique flow identifier. */
631 OVS_FLOW_ATTR_UFID_FLAGS,/* u32 of OVS_UFID_F_*. */661 OVS_FLOW_ATTR_UFID_FLAGS,/* u32 of OVS_UFID_F_*. */
662 /* private: */
632 OVS_FLOW_ATTR_PAD,663 OVS_FLOW_ATTR_PAD,
633 __OVS_FLOW_ATTR_MAX664 __OVS_FLOW_ATTR_MAX
634};665};
635 666
636#define OVS_FLOW_ATTR_MAX (__OVS_FLOW_ATTR_MAX - 1)667#define OVS_FLOW_ATTR_MAX (__OVS_FLOW_ATTR_MAX - 1)
637 668
638/**669/*
639 * Omit attributes for notifications.670 * Omit attributes for notifications.
640 *671 *
641 * If a datapath request contains an %OVS_UFID_F_OMIT_* flag, then the datapath672 * If a datapath request contains an %OVS_UFID_F_OMIT_* flag, then the datapath
@@ -653,17 +684,23 @@ enum ovs_flow_attr { · 11 unmodified lines
653 * fractions of packets.684 * fractions of packets.
654 * @OVS_SAMPLE_ATTR_ACTIONS: Set of actions to execute in sampling event.685 * @OVS_SAMPLE_ATTR_ACTIONS: Set of actions to execute in sampling event.
655 * Actions are passed as nested attributes.686 * Actions are passed as nested attributes.
687 * @OVS_SAMPLE_ATTR_ARG: For in-kernel use, passing &struct sample_arg
688 * derived from other attributes.
656 *689 *
657 * Executes the specified actions with the given probability on a per-packet690 * Executes the specified actions with the given probability on a per-packet
658 * basis. Nested actions will be able to access the probability value of the691 * basis. Nested actions will be able to access the probability value of the
659 * parent @OVS_ACTION_ATTR_SAMPLE.692 * parent @OVS_ACTION_ATTR_SAMPLE.
660 */693 */
661enum ovs_sample_attr {694enum ovs_sample_attr {
695 /* private: */
662 OVS_SAMPLE_ATTR_UNSPEC,696 OVS_SAMPLE_ATTR_UNSPEC,
697 /* public: */
663 OVS_SAMPLE_ATTR_PROBABILITY, /* u32 number */698 OVS_SAMPLE_ATTR_PROBABILITY, /* u32 number */
664 OVS_SAMPLE_ATTR_ACTIONS, /* Nested OVS_ACTION_ATTR_* attributes. */699 OVS_SAMPLE_ATTR_ACTIONS, /* Nested OVS_ACTION_ATTR_* attributes. */
700 /* private: */
665 __OVS_SAMPLE_ATTR_MAX,701 __OVS_SAMPLE_ATTR_MAX,
666 702
703 /* public: */
667#ifdef __KERNEL__704#ifdef __KERNEL__
668 OVS_SAMPLE_ATTR_ARG /* struct sample_arg */705 OVS_SAMPLE_ATTR_ARG /* struct sample_arg */
669#endif706#endif
@@ -693,12 +730,15 @@ struct sample_arg { · 23 unmodified lines
693 * @OVS_USERSPACE_ATTR_ACTIONS: If present, send actions with upcall.730 * @OVS_USERSPACE_ATTR_ACTIONS: If present, send actions with upcall.
694 */731 */
695enum ovs_userspace_attr {732enum ovs_userspace_attr {
733 /* private: */
696 OVS_USERSPACE_ATTR_UNSPEC,734 OVS_USERSPACE_ATTR_UNSPEC,
735 /* public: */
697 OVS_USERSPACE_ATTR_PID, /* u32 Netlink PID to receive upcalls. */736 OVS_USERSPACE_ATTR_PID, /* u32 Netlink PID to receive upcalls. */
698 OVS_USERSPACE_ATTR_USERDATA, /* Optional user-specified cookie. */737 OVS_USERSPACE_ATTR_USERDATA, /* Optional user-specified cookie. */
699 OVS_USERSPACE_ATTR_EGRESS_TUN_PORT, /* Optional, u32 output port738 OVS_USERSPACE_ATTR_EGRESS_TUN_PORT, /* Optional, u32 output port
700 * to get tunnel info. */739 * to get tunnel info. */
701 OVS_USERSPACE_ATTR_ACTIONS, /* Optional flag to get actions. */740 OVS_USERSPACE_ATTR_ACTIONS, /* Optional flag to get actions. */
741 /* private: */
702 __OVS_USERSPACE_ATTR_MAX742 __OVS_USERSPACE_ATTR_MAX
703};743};
704 744
@@ -819,7 +859,9 @@ struct ovs_action_hash { · 114 unmodified lines
819 * @OVS_CT_ATTR_TIMEOUT: Variable length string defining conntrack timeout.859 * @OVS_CT_ATTR_TIMEOUT: Variable length string defining conntrack timeout.
820 */860 */
821enum ovs_ct_attr {861enum ovs_ct_attr {
862 /* private: */
822 OVS_CT_ATTR_UNSPEC,863 OVS_CT_ATTR_UNSPEC,
864 /* public: */
823 OVS_CT_ATTR_COMMIT, /* No argument, commits connection. */865 OVS_CT_ATTR_COMMIT, /* No argument, commits connection. */
824 OVS_CT_ATTR_ZONE, /* u16 zone id. */866 OVS_CT_ATTR_ZONE, /* u16 zone id. */
825 OVS_CT_ATTR_MARK, /* mark to associate with this connection. */867 OVS_CT_ATTR_MARK, /* mark to associate with this connection. */
@@ -831,6 +873,7 @@ enum ovs_ct_attr { · 5 unmodified lines
831 OVS_CT_ATTR_EVENTMASK, /* u32 mask of IPCT_* events. */873 OVS_CT_ATTR_EVENTMASK, /* u32 mask of IPCT_* events. */
832 OVS_CT_ATTR_TIMEOUT, /* Associate timeout with this connection for874 OVS_CT_ATTR_TIMEOUT, /* Associate timeout with this connection for
833 * fine-grain timeout tuning. */875 * fine-grain timeout tuning. */
876 /* private: */
834 __OVS_CT_ATTR_MAX877 __OVS_CT_ATTR_MAX
835};878};
836 879
@@ -859,7 +902,9 @@ enum ovs_ct_attr { · 22 unmodified lines
859 * @OVS_NAT_ATTR_PROTO_RANDOM: Flag for fully randomized L4 port mapping902 * @OVS_NAT_ATTR_PROTO_RANDOM: Flag for fully randomized L4 port mapping
860 */903 */
861enum ovs_nat_attr {904enum ovs_nat_attr {
905 /* private: */
862 OVS_NAT_ATTR_UNSPEC,906 OVS_NAT_ATTR_UNSPEC,
907 /* public: */
863 OVS_NAT_ATTR_SRC,908 OVS_NAT_ATTR_SRC,
864 OVS_NAT_ATTR_DST,909 OVS_NAT_ATTR_DST,
865 OVS_NAT_ATTR_IP_MIN,910 OVS_NAT_ATTR_IP_MIN,
@@ -869,38 +914,44 @@ enum ovs_nat_attr { · 3 unmodified lines
869 OVS_NAT_ATTR_PERSISTENT,914 OVS_NAT_ATTR_PERSISTENT,
870 OVS_NAT_ATTR_PROTO_HASH,915 OVS_NAT_ATTR_PROTO_HASH,
871 OVS_NAT_ATTR_PROTO_RANDOM,916 OVS_NAT_ATTR_PROTO_RANDOM,
917 /* private: */
872 __OVS_NAT_ATTR_MAX,918 __OVS_NAT_ATTR_MAX,
873};919};
874 920
875#define OVS_NAT_ATTR_MAX (__OVS_NAT_ATTR_MAX - 1)921#define OVS_NAT_ATTR_MAX (__OVS_NAT_ATTR_MAX - 1)
876 922
877/*923/**
878 * struct ovs_action_push_eth - %OVS_ACTION_ATTR_PUSH_ETH action argument.924 * struct ovs_action_push_eth - %OVS_ACTION_ATTR_PUSH_ETH action argument.
879 * @addresses: Source and destination MAC addresses.925 * @addresses: Source and destination MAC addresses.
880 * @eth_type: Ethernet type
881 */926 */
882struct ovs_action_push_eth {927struct ovs_action_push_eth {
883 struct ovs_key_ethernet addresses;928 struct ovs_key_ethernet addresses;
884};929};
885 930
886/*931/**
887 * enum ovs_check_pkt_len_attr - Attributes for %OVS_ACTION_ATTR_CHECK_PKT_LEN.932 * enum ovs_check_pkt_len_attr - Attributes for %OVS_ACTION_ATTR_CHECK_PKT_LEN.
888 *933 *
889 * @OVS_CHECK_PKT_LEN_ATTR_PKT_LEN: u16 Packet length to check for.934 * @OVS_CHECK_PKT_LEN_ATTR_PKT_LEN: u16 Packet length to check for.
890 * @OVS_CHECK_PKT_LEN_ATTR_ACTIONS_IF_GREATER: Nested OVS_ACTION_ATTR_*935 * @OVS_CHECK_PKT_LEN_ATTR_ACTIONS_IF_GREATER: Nested OVS_ACTION_ATTR_*
891 * actions to apply if the packer length is greater than the specified936 * actions to apply if the packer length is greater than the specified
892 * length in the attr - OVS_CHECK_PKT_LEN_ATTR_PKT_LEN.937 * length in the attr - OVS_CHECK_PKT_LEN_ATTR_PKT_LEN.
893 * @OVS_CHECK_PKT_LEN_ATTR_ACTIONS_IF_LESS_EQUAL - Nested OVS_ACTION_ATTR_*938 * @OVS_CHECK_PKT_LEN_ATTR_ACTIONS_IF_LESS_EQUAL: Nested OVS_ACTION_ATTR_*
894 * actions to apply if the packer length is lesser or equal to the specified939 * actions to apply if the packer length is lesser or equal to the specified
895 * length in the attr - OVS_CHECK_PKT_LEN_ATTR_PKT_LEN.940 * length in the attr - OVS_CHECK_PKT_LEN_ATTR_PKT_LEN.
941 * @OVS_CHECK_PKT_LEN_ATTR_ARG: For in-kernel use, passing &struct
942 * check_pkt_len_arg derived from other attributes.
896 */943 */
897enum ovs_check_pkt_len_attr {944enum ovs_check_pkt_len_attr {
945 /* private: */
898 OVS_CHECK_PKT_LEN_ATTR_UNSPEC,946 OVS_CHECK_PKT_LEN_ATTR_UNSPEC,
947 /* public: */
899 OVS_CHECK_PKT_LEN_ATTR_PKT_LEN,948 OVS_CHECK_PKT_LEN_ATTR_PKT_LEN,
900 OVS_CHECK_PKT_LEN_ATTR_ACTIONS_IF_GREATER,949 OVS_CHECK_PKT_LEN_ATTR_ACTIONS_IF_GREATER,
901 OVS_CHECK_PKT_LEN_ATTR_ACTIONS_IF_LESS_EQUAL,950 OVS_CHECK_PKT_LEN_ATTR_ACTIONS_IF_LESS_EQUAL,
951 /* private: */
902 __OVS_CHECK_PKT_LEN_ATTR_MAX,952 __OVS_CHECK_PKT_LEN_ATTR_MAX,
903 953
954 /* public: */
904#ifdef __KERNEL__955#ifdef __KERNEL__
905 OVS_CHECK_PKT_LEN_ATTR_ARG /* struct check_pkt_len_arg */956 OVS_CHECK_PKT_LEN_ATTR_ARG /* struct check_pkt_len_arg */
906#endif957#endif
@@ -968,6 +1019,9 @@ enum ovs_psample_attr { · 61 unmodified lines
968 * from the packet.1019 * from the packet.
969 * @OVS_ACTION_ATTR_SAMPLE: Probabilitically executes actions, as specified in1020 * @OVS_ACTION_ATTR_SAMPLE: Probabilitically executes actions, as specified in
970 * the nested %OVS_SAMPLE_ATTR_* attributes.1021 * the nested %OVS_SAMPLE_ATTR_* attributes.
1022 * @OVS_ACTION_ATTR_RECIRC: Recirculate the clone of the packet through the
1023 * datapath with the new id (u32 recirc_id).
1024 * @OVS_ACTION_ATTR_HASH: Compute the packet hash, using &struct ovs_action_hash.
971 * @OVS_ACTION_ATTR_PUSH_MPLS: Push a new MPLS label stack entry onto the1025 * @OVS_ACTION_ATTR_PUSH_MPLS: Push a new MPLS label stack entry onto the
972 * top of the packets MPLS label stack. Set the ethertype of the1026 * top of the packets MPLS label stack. Set the ethertype of the
973 * encapsulating frame to either %ETH_P_MPLS_UC or %ETH_P_MPLS_MC to1027 * encapsulating frame to either %ETH_P_MPLS_UC or %ETH_P_MPLS_MC to
@@ -997,6 +1051,8 @@ enum ovs_psample_attr { · 23 unmodified lines
997 * start of the packet or at the start of the l3 header depending on the value1051 * start of the packet or at the start of the l3 header depending on the value
998 * of l3 tunnel flag in the tun_flags field of OVS_ACTION_ATTR_ADD_MPLS1052 * of l3 tunnel flag in the tun_flags field of OVS_ACTION_ATTR_ADD_MPLS
999 * argument.1053 * argument.
1054 * @OVS_ACTION_ATTR_DEC_TTL: Decrement TTL or hop limit of the packet. Execute
1055 * nested %OVS_DEC_TTL_ATTR_* actions if the value is less or equal to 1.
1000 * @OVS_ACTION_ATTR_DROP: Explicit drop action.1056 * @OVS_ACTION_ATTR_DROP: Explicit drop action.
1001 * @OVS_ACTION_ATTR_PSAMPLE: Send a sample of the packet to external observers1057 * @OVS_ACTION_ATTR_PSAMPLE: Send a sample of the packet to external observers
1002 * via psample.1058 * via psample.
@@ -1010,7 +1066,9 @@ enum ovs_psample_attr { · 7 unmodified lines
1010 */1066 */
1011 1067
1012enum ovs_action_attr {1068enum ovs_action_attr {
1069 /* private: */
1013 OVS_ACTION_ATTR_UNSPEC,1070 OVS_ACTION_ATTR_UNSPEC,
1071 /* public: */
1014 OVS_ACTION_ATTR_OUTPUT, /* u32 port number. */1072 OVS_ACTION_ATTR_OUTPUT, /* u32 port number. */
1015 OVS_ACTION_ATTR_USERSPACE, /* Nested OVS_USERSPACE_ATTR_*. */1073 OVS_ACTION_ATTR_USERSPACE, /* Nested OVS_USERSPACE_ATTR_*. */
1016 OVS_ACTION_ATTR_SET, /* One nested OVS_KEY_ATTR_*. */1074 OVS_ACTION_ATTR_SET, /* One nested OVS_KEY_ATTR_*. */
@@ -1040,9 +1098,11 @@ enum ovs_action_attr { · 23 unmodified lines
1040 OVS_ACTION_ATTR_DROP, /* u32 error code. */1098 OVS_ACTION_ATTR_DROP, /* u32 error code. */
1041 OVS_ACTION_ATTR_PSAMPLE, /* Nested OVS_PSAMPLE_ATTR_*. */1099 OVS_ACTION_ATTR_PSAMPLE, /* Nested OVS_PSAMPLE_ATTR_*. */
1042 1100
1101 /* private: */
1043 __OVS_ACTION_ATTR_MAX, /* Nothing past this will be accepted1102 __OVS_ACTION_ATTR_MAX, /* Nothing past this will be accepted
1044 * from userspace. */1103 * from userspace. */
1045 1104
1105 /* public: */
1046#ifdef __KERNEL__1106#ifdef __KERNEL__
1047 OVS_ACTION_ATTR_SET_TO_MASKED, /* Kernel module internal masked1107 OVS_ACTION_ATTR_SET_TO_MASKED, /* Kernel module internal masked
1048 * set action converted from1108 * set action converted from
include/uapi/linux/ovpn.h+2−0
@@ -55,6 +55,7 @@ enum { · 54 unmodified lines
55 OVPN_A_PEER_LINK_TX_BYTES,55 OVPN_A_PEER_LINK_TX_BYTES,
56 OVPN_A_PEER_LINK_RX_PACKETS,56 OVPN_A_PEER_LINK_RX_PACKETS,
57 OVPN_A_PEER_LINK_TX_PACKETS,57 OVPN_A_PEER_LINK_TX_PACKETS,
58 OVPN_A_PEER_TX_ID,
58 59
59 __OVPN_A_PEER_MAX,60 __OVPN_A_PEER_MAX,
60 OVPN_A_PEER_MAX = (__OVPN_A_PEER_MAX - 1)61 OVPN_A_PEER_MAX = (__OVPN_A_PEER_MAX - 1)
@@ -100,6 +101,7 @@ enum { · 39 unmodified lines
100 OVPN_CMD_KEY_SWAP,101 OVPN_CMD_KEY_SWAP,
101 OVPN_CMD_KEY_SWAP_NTF,102 OVPN_CMD_KEY_SWAP_NTF,
102 OVPN_CMD_KEY_DEL,103 OVPN_CMD_KEY_DEL,
104 OVPN_CMD_PEER_FLOAT_NTF,
103 105
104 __OVPN_CMD_MAX,106 __OVPN_CMD_MAX,
105 OVPN_CMD_MAX = (__OVPN_CMD_MAX - 1)107 OVPN_CMD_MAX = (__OVPN_CMD_MAX - 1)
include/uapi/linux/seg6_iptunnel.h+1−0
@@ -20,6 +20,7 @@ · 19 unmodified lines
20enum {20enum {
21 SEG6_IPTUNNEL_UNSPEC,21 SEG6_IPTUNNEL_UNSPEC,
22 SEG6_IPTUNNEL_SRH,22 SEG6_IPTUNNEL_SRH,
23 SEG6_IPTUNNEL_SRC, /* struct in6_addr */
23 __SEG6_IPTUNNEL_MAX,24 __SEG6_IPTUNNEL_MAX,
24};25};
25#define SEG6_IPTUNNEL_MAX (__SEG6_IPTUNNEL_MAX - 1)26#define SEG6_IPTUNNEL_MAX (__SEG6_IPTUNNEL_MAX - 1)
include/uapi/linux/udp.h+2−0
@@ -29,6 +29,8 @@ struct udphdr { · 28 unmodified lines
29 29
30/* UDP socket options */30/* UDP socket options */
31#define UDP_CORK 1 /* Never send partially complete segments */31#define UDP_CORK 1 /* Never send partially complete segments */
32/* Deprecated, reserved for UDPLITE_SEND_CSCOV 10 */
33/* Deprecated, reserved for UDPLITE_RECV_CSCOV 11 */
32#define UDP_ENCAP 100 /* Set the socket to accept encapsulated packets */34#define UDP_ENCAP 100 /* Set the socket to accept encapsulated packets */
33#define UDP_NO_CHECK6_TX 101 /* Disable sending checksum for UDP6X */35#define UDP_NO_CHECK6_TX 101 /* Disable sending checksum for UDP6X */
34#define UDP_NO_CHECK6_RX 102 /* Disable accepting checksum for UDP6 */36#define UDP_NO_CHECK6_RX 102 /* Disable accepting checksum for UDP6 */

Keyboard shortcuts

General

Show keyboard shortcuts
?
Focus the current search
/

Issues and pull requests

Open filters
f

Issues, pull requests and Inbox

Select next item
j↓
Select previous item
k↑
Open selected item
Enter
Dismiss filters or clear selection
Esc

Repository code

Go to file
t