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
1919 #define DEVLINK_GENL_VERSION 0x1
2020 #define DEVLINK_GENL_MCGRP_CONFIG_NAME "config"
2121
22+#define DEVLINK_INDEX_BUS_NAME "devlink_index"
23+
2224 enum devlink_command {
2325 /* don't change the order or add anything between, this is ABI! */
2426 DEVLINK_CMD_UNSPEC,
@@ -642,6 +644,9 @@ enum devlink_attr { · 617 unmodified lines
642644 DEVLINK_ATTR_PARAM_VALUE_DEFAULT, /* dynamic */
643645 DEVLINK_ATTR_PARAM_RESET_DEFAULT, /* flag */
644646
647+ DEVLINK_ATTR_INDEX, /* uint */
648+ DEVLINK_ATTR_RESOURCE_SCOPE_MASK, /* u32 */
649+
645650 /* Add new attributes above here, update the spec in
646651 * Documentation/netlink/specs/devlink.yaml and re-generate
647652 * net/devlink/netlink_gen.c.
@@ -700,6 +705,16 @@ enum devlink_resource_unit { · 52 unmodified lines
700705 DEVLINK_RESOURCE_UNIT_ENTRY,
701706 };
702707
708+enum 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+
703718 enum devlink_port_fn_attr_cap {
704719 DEVLINK_PORT_FN_ATTR_CAP_ROCE_BIT,
705720 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
191191 DPLL_PIN_CAPABILITIES_STATE_CAN_CHANGE = 4,
192192 };
193193
194−#define DPLL_PHASE_OFFSET_DIVIDER 1000
194+#define DPLL_PHASE_OFFSET_DIVIDER 1000
195+#define DPLL_PIN_MEASURED_FREQUENCY_DIVIDER 1000
195196
196197 /**
197198 * enum dpll_feature_state - Allow control (enable/disable) and status checking
@@ -218,6 +219,7 @@ enum dpll_a { · 20 unmodified lines
218219 DPLL_A_CLOCK_QUALITY_LEVEL,
219220 DPLL_A_PHASE_OFFSET_MONITOR,
220221 DPLL_A_PHASE_OFFSET_AVG_FACTOR,
222+ DPLL_A_FREQUENCY_MONITOR,
221223
222224 __DPLL_A_MAX,
223225 DPLL_A_MAX = (__DPLL_A_MAX - 1)
@@ -254,6 +256,7 @@ enum dpll_a_pin { · 30 unmodified lines
254256 DPLL_A_PIN_REFERENCE_SYNC,
255257 DPLL_A_PIN_PHASE_ADJUST_GRAN,
256258 DPLL_A_PIN_FRACTIONAL_FREQUENCY_OFFSET_PPT,
259+ DPLL_A_PIN_MEASURED_FREQUENCY,
257260
258261 __DPLL_A_PIN_MAX,
259262 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
225225 ETHTOOL_ID_UNSPEC,
226226 ETHTOOL_RX_COPYBREAK,
227227 ETHTOOL_TX_COPYBREAK,
228− ETHTOOL_PFC_PREVENTION_TOUT, /* timeout in msecs */
228+ ETHTOOL_PFC_PREVENTION_TOUT, /* both pause and pfc, see man ethtool */
229229 ETHTOOL_TX_COPYBREAK_BUF_SIZE,
230230 /*
231231 * 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
371371 ETHTOOL_A_COALESCE_TX_AGGR_TIME_USECS,
372372 ETHTOOL_A_COALESCE_RX_PROFILE,
373373 ETHTOOL_A_COALESCE_TX_PROFILE,
374+ ETHTOOL_A_COALESCE_RX_CQE_FRAMES,
375+ ETHTOOL_A_COALESCE_RX_CQE_NSECS,
374376
375377 __ETHTOOL_A_COALESCE_CNT,
376378 ETHTOOL_A_COALESCE_MAX = (__ETHTOOL_A_COALESCE_CNT - 1)
@@ -381,6 +383,7 @@ enum { · 4 unmodified lines
381383 ETHTOOL_A_PAUSE_STAT_PAD,
382384 ETHTOOL_A_PAUSE_STAT_TX_FRAMES,
383385 ETHTOOL_A_PAUSE_STAT_RX_FRAMES,
386+ ETHTOOL_A_PAUSE_STAT_TX_PAUSE_STORM_EVENTS,
384387
385388 __ETHTOOL_A_PAUSE_STAT_CNT,
386389 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
744744 * @IFLA_BR_FDB_MAX_LEARNED
745745 * Set the number of max dynamically learned FDB entries for the current
746746 * 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.
747752 */
748753 enum {
749754 IFLA_BR_UNSPEC,
@@ -796,11 +801,45 @@ enum { · 46 unmodified lines
796801 IFLA_BR_MCAST_QUERIER_STATE,
797802 IFLA_BR_FDB_N_LEARNED,
798803 IFLA_BR_FDB_MAX_LEARNED,
804+ IFLA_BR_STP_MODE,
799805 __IFLA_BR_MAX,
800806 };
801807
802808 #define IFLA_BR_MAX (__IFLA_BR_MAX - 1)
803809
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+ */
834+enum 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+
804843 struct ifla_bridge_id {
805844 __u8 prio[2];
806845 __u8 addr[6]; /* ETH_ALEN */
@@ -1296,6 +1335,11 @@ enum netkit_mode { · 489 unmodified lines
12961335 NETKIT_L3,
12971336 };
12981337
1338+enum netkit_pairing {
1339+ NETKIT_DEVICE_PAIR,
1340+ NETKIT_DEVICE_SINGLE,
1341+};
1342+
12991343 /* NETKIT_SCRUB_NONE leaves clearing skb->{mark,priority} up to
13001344 * the BPF program if attached. This also means the latter can
13011345 * consume the two fields if they were populated earlier.
@@ -1320,6 +1364,7 @@ enum { · 18 unmodified lines
13201364 IFLA_NETKIT_PEER_SCRUB,
13211365 IFLA_NETKIT_HEADROOM,
13221366 IFLA_NETKIT_TAILROOM,
1367+ IFLA_NETKIT_PAIRING,
13231368 __IFLA_NETKIT_MAX,
13241369 };
13251370 #define IFLA_NETKIT_MAX (__IFLA_NETKIT_MAX - 1)
@@ -1568,6 +1613,8 @@ enum { · 242 unmodified lines
15681613 IFLA_BOND_SLAVE_AD_PARTNER_OPER_PORT_STATE,
15691614 IFLA_BOND_SLAVE_PRIO,
15701615 IFLA_BOND_SLAVE_ACTOR_PORT_PRIO,
1616+ IFLA_BOND_SLAVE_AD_CHURN_ACTOR_STATE,
1617+ IFLA_BOND_SLAVE_AD_CHURN_PARTNER_STATE,
15711618 __IFLA_BOND_SLAVE_MAX,
15721619 };
15731620
include/uapi/linux/if_pppox.h+4−10
@@ -103,16 +103,6 @@ struct sockaddr_pppol2tpv3in6 { · 102 unmodified lines
103103 struct pppol2tpv3in6_addr pppol2tp;
104104 } __packed;
105105
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−
116106 /* Codes to identify message types */
117107 #define PADI_CODE 0x09
118108 #define PADO_CODE 0x07
@@ -122,7 +112,9 @@ struct sockaddr_pppol2tpv3in6 { · 3 unmodified lines
122112 struct pppoe_tag {
123113 __be16 tag_type;
124114 __be16 tag_len;
115+#ifndef __KERNEL__
125116 char tag_data[];
117+#endif
126118 } __attribute__ ((packed));
127119
128120 /* Tag identifiers */
@@ -150,7 +142,9 @@ struct pppoe_hdr { · 21 unmodified lines
150142 __u8 code;
151143 __be16 sid;
152144 __be16 length;
145+#ifndef __KERNEL__
153146 struct pppoe_tag tag[];
147+#endif
154148 } __packed;
155149
156150 /* 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
129129 __u32 idiag_inode;
130130 };
131131
132+enum {
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+
132141 /* Extensions */
133142
134143 enum {
include/uapi/linux/mii.h+2−1
@@ -82,7 +82,8 @@ · 81 unmodified lines
8282 #define ADVERTISE_100BASE4 0x0200 /* Try for 100mbps 4k packets */
8383 #define ADVERTISE_PAUSE_CAP 0x0400 /* Try for pause */
8484 #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 */
8687 #define ADVERTISE_RFAULT 0x2000 /* Say we can detect faults */
8788 #define ADVERTISE_LPACK 0x4000 /* Ack link partners response */
8889 #define ADVERTISE_NPAGE 0x8000 /* Next page bit */
include/uapi/linux/netdev.h+11−0
@@ -160,6 +160,7 @@ enum { · 159 unmodified lines
160160 NETDEV_A_QUEUE_DMABUF,
161161 NETDEV_A_QUEUE_IO_URING,
162162 NETDEV_A_QUEUE_XSK,
163+ NETDEV_A_QUEUE_LEASE,
163164
164165 __NETDEV_A_QUEUE_MAX,
165166 NETDEV_A_QUEUE_MAX = (__NETDEV_A_QUEUE_MAX - 1)
@@ -202,6 +203,15 @@ enum { · 36 unmodified lines
202203 NETDEV_A_QSTATS_MAX = (__NETDEV_A_QSTATS_MAX - 1)
203204 };
204205
206+enum {
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+
205215 enum {
206216 NETDEV_A_DMABUF_IFINDEX = 1,
207217 NETDEV_A_DMABUF_QUEUES,
@@ -228,6 +238,7 @@ enum { · 20 unmodified lines
228238 NETDEV_CMD_BIND_RX,
229239 NETDEV_CMD_NAPI_SET,
230240 NETDEV_CMD_BIND_TX,
241+ NETDEV_CMD_QUEUE_CREATE,
231242
232243 __NETDEV_CMD_MAX,
233244 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
4646 };
4747 #define NFT_REG_MAX (__NFT_REG_MAX - 1)
4848
49+#ifdef __KERNEL__
50+#define NFT_REG32_MAX NFT_REG32_15
51+#endif
52+
4953 #define NFT_REG_SIZE 16
5054 #define NFT_REG32_SIZE 4
5155 #define NFT_REG32_COUNT (NFT_REG32_15 - NFT_REG32_00 + 1)
@@ -884,7 +888,7 @@ enum nft_exthdr_flags { · 832 unmodified lines
884888 * @NFT_EXTHDR_OP_TCPOPT: match against tcp options
885889 * @NFT_EXTHDR_OP_IPV4: match against ipv4 options
886890 * @NFT_EXTHDR_OP_SCTP: match against sctp chunks
887− * @NFT_EXTHDR_OP_DCCP: match against dccp otions
891+ * @NFT_EXTHDR_OP_DCCP: match against dccp options
888892 */
889893 enum nft_exthdr_op {
890894 NFT_EXTHDR_OP_IPV6,
include/uapi/linux/nfc.h+3−3
@@ -55,7 +55,7 @@ · 54 unmodified lines
5555 * (it sends %NFC_ATTR_DEVICE_INDEX)
5656 * @NFC_EVENT_TM_ACTIVATED: event emitted when the adapter is activated in
5757 * target mode.
58− * @NFC_EVENT_DEVICE_DEACTIVATED: event emitted when the adapter is deactivated
58+ * @NFC_EVENT_TM_DEACTIVATED: event emitted when the adapter is deactivated
5959 * from target mode.
6060 * @NFC_CMD_LLC_GET_PARAMS: request LTO, RW, and MIUX parameters for a device
6161 * @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
156156 * @NFC_ATTR_SE_INDEX: Secure element index
157157 * @NFC_ATTR_SE_TYPE: Secure element type (UICC or EMBEDDED)
158158 * @NFC_ATTR_FIRMWARE_DOWNLOAD_STATUS: Firmware download operation status
159− * @NFC_ATTR_APDU: Secure element APDU
159+ * @NFC_ATTR_SE_APDU: Secure element APDU
160160 * @NFC_ATTR_TARGET_ISO15693_DSFID: ISO 15693 Data Storage Format Identifier
161161 * @NFC_ATTR_TARGET_ISO15693_UID: ISO 15693 Unique Identifier
162162 * @NFC_ATTR_SE_PARAMS: Parameters data from an evt_transaction
@@ -291,7 +291,7 @@ struct sockaddr_nfc_llcp { · 128 unmodified lines
291291
292292 #define NFC_HEADER_SIZE 1
293293
294−/**
294+/*
295295 * Pseudo-header info for raw socket packets
296296 * First byte is the adapter index
297297 * Second byte contains flags
include/uapi/linux/nl80211.h+269−3
@@ -906,8 +906,9 @@ · 905 unmodified lines
906906 * @NL80211_CMD_UNEXPECTED_FRAME: Used by an application controlling an AP
907907 * (or GO) interface (i.e. hostapd) to ask for unexpected frames to
908908 * implement sending deauth to stations that send unexpected class 3
909− * frames. Also used as the event sent by the kernel when such a frame
910− * is received.
909+ * frames. For NAN_DATA interfaces, this is used to report frames from
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.
911912 * For the event, the %NL80211_ATTR_MAC attribute carries the TA and
912913 * other attributes like the interface index are present.
913914 * If used as the command it must have an interface index and you can
@@ -1361,6 +1362,59 @@ · 447 unmodified lines
13611362 * user space that the NAN new cluster has been joined. The cluster ID is
13621363 * indicated by %NL80211_ATTR_MAC.
13631364 *
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.
13641418 * @NL80211_CMD_MAX: highest used command number
13651419 * @__NL80211_CMD_AFTER_LAST: internal use
13661420 */
@@ -1624,6 +1678,18 @@ enum nl80211_commands { · 257 unmodified lines
16241678 NL80211_CMD_NAN_NEXT_DW_NOTIFICATION,
16251679 NL80211_CMD_NAN_CLUSTER_JOINED,
16261680
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+
16271693 /* add new commands above here */
16281694
16291695 /* used to define NL80211_CMD_MAX below */
@@ -2651,7 +2717,8 @@ enum nl80211_commands { · 1021 unmodified lines
26512717 * a flow is assigned on each round of the DRR scheduler.
26522718 * @NL80211_ATTR_HE_CAPABILITY: HE Capability information element (from
26532719 * 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).
26552722 *
26562723 * @NL80211_ATTR_FTM_RESPONDER: nested attribute which user-space can include
26572724 * in %NL80211_CMD_START_AP or %NL80211_CMD_SET_BEACON for fine timing
@@ -2983,6 +3050,95 @@ enum nl80211_commands { · 325 unmodified lines
29833050 * @NL80211_ATTR_DISABLE_UHR: Force UHR capable interfaces to disable
29843051 * this feature during association. This is a flag attribute.
29853052 * 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.
29863142 *
29873143 * @NUM_NL80211_ATTR: total number of nl80211_attrs available
29883144 * @NL80211_ATTR_MAX: highest attribute number currently defined
@@ -3557,6 +3713,26 @@ enum nl80211_attrs { · 568 unmodified lines
35573713 NL80211_ATTR_UHR_CAPABILITY,
35583714 NL80211_ATTR_DISABLE_UHR,
35593715
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+
35603736 /* add attributes here, update the policy in nl80211.c */
35613737
35623738 __NL80211_ATTR_AFTER_LAST,
@@ -3650,6 +3826,9 @@ enum nl80211_attrs { · 87 unmodified lines
36503826 * @NL80211_IFTYPE_OCB: Outside Context of a BSS
36513827 * This mode corresponds to the MIB variable dot11OCBActivated=true
36523828 * @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).
36533832 * @NL80211_IFTYPE_MAX: highest interface type number currently defined
36543833 * @NUM_NL80211_IFTYPES: number of defined interface types
36553834 *
@@ -3671,6 +3850,7 @@ enum nl80211_iftype { · 15 unmodified lines
36713850 NL80211_IFTYPE_P2P_DEVICE,
36723851 NL80211_IFTYPE_OCB,
36733852 NL80211_IFTYPE_NAN,
3853+ NL80211_IFTYPE_NAN_DATA,
36743854
36753855 /* keep last */
36763856 NUM_NL80211_IFTYPES,
@@ -4359,6 +4539,46 @@ enum nl80211_band_attr { · 682 unmodified lines
43594539
43604540 #define NL80211_BAND_ATTR_HT_CAPA NL80211_BAND_ATTR_HT_CAPA
43614541
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+ */
4558+enum 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+
43624582 /**
43634583 * enum nl80211_wmm_rule - regulatory wmm rule
43644584 *
@@ -4480,6 +4700,10 @@ enum nl80211_wmm_rule { · 115 unmodified lines
44804700 * as a non-primary subchannel. Only applicable to S1G channels.
44814701 * @NL80211_FREQUENCY_ATTR_NO_UHR: UHR operation is not allowed on this channel
44824702 * 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
44834707 * @NL80211_FREQUENCY_ATTR_MAX: highest frequency attribute number
44844708 * currently defined
44854709 * @__NL80211_FREQUENCY_ATTR_AFTER_LAST: internal use
@@ -4530,6 +4754,8 @@ enum nl80211_frequency_attr { · 44 unmodified lines
45304754 NL80211_FREQUENCY_ATTR_NO_16MHZ,
45314755 NL80211_FREQUENCY_ATTR_S1G_NO_PRIMARY,
45324756 NL80211_FREQUENCY_ATTR_NO_UHR,
4757+ NL80211_FREQUENCY_ATTR_CAC_START_TIME,
4758+ NL80211_FREQUENCY_ATTR_PAD,
45334759
45344760 /* keep last */
45354761 __NL80211_FREQUENCY_ATTR_AFTER_LAST,
@@ -5466,6 +5692,8 @@ enum nl80211_bss_status { · 930 unmodified lines
54665692 * @NL80211_AUTHTYPE_FILS_SK_PFS: Fast Initial Link Setup shared key with PFS
54675693 * @NL80211_AUTHTYPE_FILS_PK: Fast Initial Link Setup public key
54685694 * @NL80211_AUTHTYPE_EPPKE: Enhanced Privacy Protection Key Exchange
5695+ * @NL80211_AUTHTYPE_IEEE8021X: IEEE 802.1X authentication utilizing
5696+ * Authentication frames
54695697 * @__NL80211_AUTHTYPE_NUM: internal
54705698 * @NL80211_AUTHTYPE_MAX: maximum valid auth algorithm
54715699 * @NL80211_AUTHTYPE_AUTOMATIC: determine automatically (if necessary by
@@ -5482,6 +5710,7 @@ enum nl80211_auth_type { · 10 unmodified lines
54825710 NL80211_AUTHTYPE_FILS_SK_PFS,
54835711 NL80211_AUTHTYPE_FILS_PK,
54845712 NL80211_AUTHTYPE_EPPKE,
5713+ NL80211_AUTHTYPE_IEEE8021X,
54855714
54865715 /* keep last */
54875716 __NL80211_AUTHTYPE_NUM,
@@ -6795,6 +7024,11 @@ enum nl80211_feature_flags { · 1307 unmodified lines
67957024 * frames in both non‑AP STA and AP mode as specified in
67967025 * "IEEE P802.11bi/D3.0, 12.16.6".
67977026 *
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+ *
67987032 * @NUM_NL80211_EXT_FEATURES: number of extended features.
67997033 * @MAX_NL80211_EXT_FEATURES: highest extended feature index.
68007034 */
@@ -6873,6 +7107,7 @@ enum nl80211_ext_feature_index { · 72 unmodified lines
68737107 NL80211_EXT_FEATURE_BEACON_RATE_EHT,
68747108 NL80211_EXT_FEATURE_EPPKE,
68757109 NL80211_EXT_FEATURE_ASSOC_FRAME_ENCRYPTION,
7110+ NL80211_EXT_FEATURE_IEEE8021X_AUTH,
68767111
68777112 /* add new features before the definition below */
68787113 NUM_NL80211_EXT_FEATURES,
@@ -8517,6 +8752,8 @@ enum nl80211_s1g_short_beacon_attrs { · 1638 unmodified lines
85178752 * @NL80211_NAN_CAPA_CAPABILITIES: u8 attribute containing the
85188753 * capabilities of the device as defined in Wi-Fi Aware (TM)
85198754 * 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.
85208757 * @__NL80211_NAN_CAPABILITIES_LAST: Internal
85218758 * @NL80211_NAN_CAPABILITIES_MAX: Highest NAN capability attribute.
85228759 */
@@ -8529,9 +8766,38 @@ enum nl80211_nan_capabilities { · 6 unmodified lines
85298766 NL80211_NAN_CAPA_NUM_ANTENNAS,
85308767 NL80211_NAN_CAPA_MAX_CHANNEL_SWITCH_TIME,
85318768 NL80211_NAN_CAPA_CAPABILITIES,
8769+ NL80211_NAN_CAPA_PHY,
85328770 /* keep last */
85338771 __NL80211_NAN_CAPABILITIES_LAST,
85348772 NL80211_NAN_CAPABILITIES_MAX = __NL80211_NAN_CAPABILITIES_LAST - 1,
85358773 };
85368774
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+ */
8790+enum 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+
85378803 #endif /* __LINUX_NL80211_H */
include/uapi/linux/openvswitch.h+68−8
@@ -70,12 +70,15 @@ enum ovs_datapath_cmd { · 69 unmodified lines
7070 * set on the datapath port (for OVS_ACTION_ATTR_MISS). Only valid on
7171 * %OVS_DP_CMD_NEW requests. A value of zero indicates that upcalls should
7272 * not be sent.
73+ * @OVS_DP_ATTR_MASKS_CACHE_SIZE: Number of the entries in the flow table
74+ * masks cache.
7375 * @OVS_DP_ATTR_PER_CPU_PIDS: Per-cpu array of PIDs for upcalls when
7476 * OVS_DP_F_DISPATCH_UPCALL_PER_CPU feature is set.
7577 * @OVS_DP_ATTR_STATS: Statistics about packets that have passed through the
7678 * datapath. Always present in notifications.
7779 * @OVS_DP_ATTR_MEGAFLOW_STATS: Statistics about mega flow masks usage for the
7880 * datapath. Always present in notifications.
81+ * @OVS_DP_ATTR_USER_FEATURES: OVS_DP_F_* flags.
7982 * @OVS_DP_ATTR_IFINDEX: Interface index for a new datapath netdev. Only
8083 * valid for %OVS_DP_CMD_NEW requests.
8184 *
@@ -83,18 +86,23 @@ enum ovs_datapath_cmd { · 1 unmodified line
8386 * payload for %OVS_DP_* commands.
8487 */
8588 enum ovs_datapath_attr {
89+ /* private: */
8690 OVS_DP_ATTR_UNSPEC,
91+ /* public: */
8792 OVS_DP_ATTR_NAME, /* name of dp_ifindex netdev */
8893 OVS_DP_ATTR_UPCALL_PID, /* Netlink PID to receive upcalls */
8994 OVS_DP_ATTR_STATS, /* struct ovs_dp_stats */
9095 OVS_DP_ATTR_MEGAFLOW_STATS, /* struct ovs_dp_megaflow_stats */
9196 OVS_DP_ATTR_USER_FEATURES, /* OVS_DP_F_* */
97+ /* private: */
9298 OVS_DP_ATTR_PAD,
99+ /* public: */
93100 OVS_DP_ATTR_MASKS_CACHE_SIZE,
94101 OVS_DP_ATTR_PER_CPU_PIDS, /* Netlink PIDS to receive upcalls in
95102 * per-cpu dispatch mode
96103 */
97104 OVS_DP_ATTR_IFINDEX,
105+ /* private: */
98106 __OVS_DP_ATTR_MAX
99107 };
100108
@@ -181,6 +189,7 @@ enum ovs_packet_cmd { · 80 unmodified lines
181189 * %OVS_USERSPACE_ATTR_EGRESS_TUN_PORT attribute, which is sent only if the
182190 * output port is actually a tunnel port. Contains the output tunnel key
183191 * extracted from the packet as nested %OVS_TUNNEL_KEY_ATTR_* attributes.
192+ * @OVS_PACKET_ATTR_PROBE: Packet operation is a feature probe.
184193 * @OVS_PACKET_ATTR_MRU: Present for an %OVS_PACKET_CMD_ACTION and
185194 * @OVS_PACKET_ATTR_LEN: Packet size before truncation.
186195 * %OVS_PACKET_ATTR_USERSPACE action specify the Maximum received fragment
@@ -196,21 +205,26 @@ enum ovs_packet_cmd { · 9 unmodified lines
196205 * payload for %OVS_PACKET_* commands.
197206 */
198207 enum ovs_packet_attr {
208+ /* private: */
199209 OVS_PACKET_ATTR_UNSPEC,
210+ /* public: */
200211 OVS_PACKET_ATTR_PACKET, /* Packet data. */
201212 OVS_PACKET_ATTR_KEY, /* Nested OVS_KEY_ATTR_* attributes. */
202213 OVS_PACKET_ATTR_ACTIONS, /* Nested OVS_ACTION_ATTR_* attributes. */
203214 OVS_PACKET_ATTR_USERDATA, /* OVS_ACTION_ATTR_USERSPACE arg. */
204215 OVS_PACKET_ATTR_EGRESS_TUN_KEY, /* Nested OVS_TUNNEL_KEY_ATTR_*
205216 attributes. */
217+ /* private: */
206218 OVS_PACKET_ATTR_UNUSED1,
207219 OVS_PACKET_ATTR_UNUSED2,
220+ /* public: */
208221 OVS_PACKET_ATTR_PROBE, /* Packet operation is a feature probe,
209222 error logging should be suppressed. */
210223 OVS_PACKET_ATTR_MRU, /* Maximum received IP fragment size. */
211224 OVS_PACKET_ATTR_LEN, /* Packet size before truncation. */
212225 OVS_PACKET_ATTR_HASH, /* Packet hash. */
213226 OVS_PACKET_ATTR_UPCALL_PID, /* u32 Netlink PID. */
227+ /* private: */
214228 __OVS_PACKET_ATTR_MAX
215229 };
216230
@@ -257,6 +271,11 @@ enum ovs_vport_type { · 40 unmodified lines
257271 * upcalls should not be sent.
258272 * @OVS_VPORT_ATTR_STATS: A &struct ovs_vport_stats giving statistics for
259273 * 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.
260279 *
261280 * These attributes follow the &struct ovs_header within the Generic Netlink
262281 * payload for %OVS_VPORT_* commands.
@@ -272,7 +291,9 @@ enum ovs_vport_type { · 9 unmodified lines
272291 * ovs_header plus %OVS_VPORT_ATTR_PORT_NO determine the vport.
273292 */
274293 enum ovs_vport_attr {
294+ /* private: */
275295 OVS_VPORT_ATTR_UNSPEC,
296+ /* public: */
276297 OVS_VPORT_ATTR_PORT_NO, /* u32 port number within datapath */
277298 OVS_VPORT_ATTR_TYPE, /* u32 OVS_VPORT_TYPE_* constant. */
278299 OVS_VPORT_ATTR_NAME, /* string name, up to IFNAMSIZ bytes long */
@@ -280,23 +301,27 @@ enum ovs_vport_attr { · 1 unmodified line
280301 OVS_VPORT_ATTR_UPCALL_PID, /* array of u32 Netlink socket PIDs for */
281302 /* receiving upcalls */
282303 OVS_VPORT_ATTR_STATS, /* struct ovs_vport_stats */
304+ /* private: */
283305 OVS_VPORT_ATTR_PAD,
306+ /* public: */
284307 OVS_VPORT_ATTR_IFINDEX,
285308 OVS_VPORT_ATTR_NETNSID,
286309 OVS_VPORT_ATTR_UPCALL_STATS,
310+ /* private: */
287311 __OVS_VPORT_ATTR_MAX
288312 };
289313
290314 #define OVS_VPORT_ATTR_MAX (__OVS_VPORT_ATTR_MAX - 1)
291315
292316 /**
293− * enum ovs_vport_upcall_attr - attributes for %OVS_VPORT_UPCALL* commands
294− * @OVS_VPORT_UPCALL_SUCCESS: 64-bit upcall success packets.
295− * @OVS_VPORT_UPCALL_FAIL: 64-bit upcall fail packets.
317+ * enum ovs_vport_upcall_attr - attributes for %OVS_VPORT_ATTR_UPCALL_STATS
318+ * @OVS_VPORT_UPCALL_ATTR_SUCCESS: 64-bit upcall success packets.
319+ * @OVS_VPORT_UPCALL_ATTR_FAIL: 64-bit upcall fail packets.
296320 */
297321 enum ovs_vport_upcall_attr {
298322 OVS_VPORT_UPCALL_ATTR_SUCCESS,
299323 OVS_VPORT_UPCALL_ATTR_FAIL,
324+ /* private: */
300325 __OVS_VPORT_UPCALL_ATTR_MAX
301326 };
302327
@@ -431,6 +456,7 @@ enum ovs_frag_type { · 128 unmodified lines
431456 OVS_FRAG_TYPE_NONE,
432457 OVS_FRAG_TYPE_FIRST,
433458 OVS_FRAG_TYPE_LATER,
459+ /* private: */
434460 __OVS_FRAG_TYPE_MAX
435461 };
436462
@@ -604,6 +630,8 @@ struct ovs_nsh_key_md1 { · 167 unmodified lines
604630 * a wildcarded match. Omitting attribute is treated as wildcarding all
605631 * corresponding fields. Optional for all requests. If not present,
606632 * 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.
607635 * @OVS_FLOW_ATTR_UFID: A value between 1-16 octets specifying a unique
608636 * identifier for the flow. Causes the flow to be indexed by this value rather
609637 * 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
617645 * payload for %OVS_FLOW_* commands.
618646 */
619647 enum ovs_flow_attr {
648+ /* private: */
620649 OVS_FLOW_ATTR_UNSPEC,
650+ /* public: */
621651 OVS_FLOW_ATTR_KEY, /* Sequence of OVS_KEY_ATTR_* attributes. */
622652 OVS_FLOW_ATTR_ACTIONS, /* Nested OVS_ACTION_ATTR_* attributes. */
623653 OVS_FLOW_ATTR_STATS, /* struct ovs_flow_stats. */
@@ -629,13 +659,14 @@ enum ovs_flow_attr { · 5 unmodified lines
629659 * logging should be suppressed. */
630660 OVS_FLOW_ATTR_UFID, /* Variable length unique flow identifier. */
631661 OVS_FLOW_ATTR_UFID_FLAGS,/* u32 of OVS_UFID_F_*. */
662+ /* private: */
632663 OVS_FLOW_ATTR_PAD,
633664 __OVS_FLOW_ATTR_MAX
634665 };
635666
636667 #define OVS_FLOW_ATTR_MAX (__OVS_FLOW_ATTR_MAX - 1)
637668
638−/**
669+/*
639670 * Omit attributes for notifications.
640671 *
641672 * 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
653684 * fractions of packets.
654685 * @OVS_SAMPLE_ATTR_ACTIONS: Set of actions to execute in sampling event.
655686 * Actions are passed as nested attributes.
687+ * @OVS_SAMPLE_ATTR_ARG: For in-kernel use, passing &struct sample_arg
688+ * derived from other attributes.
656689 *
657690 * Executes the specified actions with the given probability on a per-packet
658691 * basis. Nested actions will be able to access the probability value of the
659692 * parent @OVS_ACTION_ATTR_SAMPLE.
660693 */
661694 enum ovs_sample_attr {
695+ /* private: */
662696 OVS_SAMPLE_ATTR_UNSPEC,
697+ /* public: */
663698 OVS_SAMPLE_ATTR_PROBABILITY, /* u32 number */
664699 OVS_SAMPLE_ATTR_ACTIONS, /* Nested OVS_ACTION_ATTR_* attributes. */
700+ /* private: */
665701 __OVS_SAMPLE_ATTR_MAX,
666702
703+ /* public: */
667704 #ifdef __KERNEL__
668705 OVS_SAMPLE_ATTR_ARG /* struct sample_arg */
669706 #endif
@@ -693,12 +730,15 @@ struct sample_arg { · 23 unmodified lines
693730 * @OVS_USERSPACE_ATTR_ACTIONS: If present, send actions with upcall.
694731 */
695732 enum ovs_userspace_attr {
733+ /* private: */
696734 OVS_USERSPACE_ATTR_UNSPEC,
735+ /* public: */
697736 OVS_USERSPACE_ATTR_PID, /* u32 Netlink PID to receive upcalls. */
698737 OVS_USERSPACE_ATTR_USERDATA, /* Optional user-specified cookie. */
699738 OVS_USERSPACE_ATTR_EGRESS_TUN_PORT, /* Optional, u32 output port
700739 * to get tunnel info. */
701740 OVS_USERSPACE_ATTR_ACTIONS, /* Optional flag to get actions. */
741+ /* private: */
702742 __OVS_USERSPACE_ATTR_MAX
703743 };
704744
@@ -819,7 +859,9 @@ struct ovs_action_hash { · 114 unmodified lines
819859 * @OVS_CT_ATTR_TIMEOUT: Variable length string defining conntrack timeout.
820860 */
821861 enum ovs_ct_attr {
862+ /* private: */
822863 OVS_CT_ATTR_UNSPEC,
864+ /* public: */
823865 OVS_CT_ATTR_COMMIT, /* No argument, commits connection. */
824866 OVS_CT_ATTR_ZONE, /* u16 zone id. */
825867 OVS_CT_ATTR_MARK, /* mark to associate with this connection. */
@@ -831,6 +873,7 @@ enum ovs_ct_attr { · 5 unmodified lines
831873 OVS_CT_ATTR_EVENTMASK, /* u32 mask of IPCT_* events. */
832874 OVS_CT_ATTR_TIMEOUT, /* Associate timeout with this connection for
833875 * fine-grain timeout tuning. */
876+ /* private: */
834877 __OVS_CT_ATTR_MAX
835878 };
836879
@@ -859,7 +902,9 @@ enum ovs_ct_attr { · 22 unmodified lines
859902 * @OVS_NAT_ATTR_PROTO_RANDOM: Flag for fully randomized L4 port mapping
860903 */
861904 enum ovs_nat_attr {
905+ /* private: */
862906 OVS_NAT_ATTR_UNSPEC,
907+ /* public: */
863908 OVS_NAT_ATTR_SRC,
864909 OVS_NAT_ATTR_DST,
865910 OVS_NAT_ATTR_IP_MIN,
@@ -869,38 +914,44 @@ enum ovs_nat_attr { · 3 unmodified lines
869914 OVS_NAT_ATTR_PERSISTENT,
870915 OVS_NAT_ATTR_PROTO_HASH,
871916 OVS_NAT_ATTR_PROTO_RANDOM,
917+ /* private: */
872918 __OVS_NAT_ATTR_MAX,
873919 };
874920
875921 #define OVS_NAT_ATTR_MAX (__OVS_NAT_ATTR_MAX - 1)
876922
877−/*
923+/**
878924 * struct ovs_action_push_eth - %OVS_ACTION_ATTR_PUSH_ETH action argument.
879925 * @addresses: Source and destination MAC addresses.
880− * @eth_type: Ethernet type
881926 */
882927 struct ovs_action_push_eth {
883928 struct ovs_key_ethernet addresses;
884929 };
885930
886−/*
931+/**
887932 * enum ovs_check_pkt_len_attr - Attributes for %OVS_ACTION_ATTR_CHECK_PKT_LEN.
888933 *
889934 * @OVS_CHECK_PKT_LEN_ATTR_PKT_LEN: u16 Packet length to check for.
890935 * @OVS_CHECK_PKT_LEN_ATTR_ACTIONS_IF_GREATER: Nested OVS_ACTION_ATTR_*
891936 * actions to apply if the packer length is greater than the specified
892937 * 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_*
894939 * actions to apply if the packer length is lesser or equal to the specified
895940 * 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.
896943 */
897944 enum ovs_check_pkt_len_attr {
945+ /* private: */
898946 OVS_CHECK_PKT_LEN_ATTR_UNSPEC,
947+ /* public: */
899948 OVS_CHECK_PKT_LEN_ATTR_PKT_LEN,
900949 OVS_CHECK_PKT_LEN_ATTR_ACTIONS_IF_GREATER,
901950 OVS_CHECK_PKT_LEN_ATTR_ACTIONS_IF_LESS_EQUAL,
951+ /* private: */
902952 __OVS_CHECK_PKT_LEN_ATTR_MAX,
903953
954+ /* public: */
904955 #ifdef __KERNEL__
905956 OVS_CHECK_PKT_LEN_ATTR_ARG /* struct check_pkt_len_arg */
906957 #endif
@@ -968,6 +1019,9 @@ enum ovs_psample_attr { · 61 unmodified lines
9681019 * from the packet.
9691020 * @OVS_ACTION_ATTR_SAMPLE: Probabilitically executes actions, as specified in
9701021 * 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.
9711025 * @OVS_ACTION_ATTR_PUSH_MPLS: Push a new MPLS label stack entry onto the
9721026 * top of the packets MPLS label stack. Set the ethertype of the
9731027 * 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
9971051 * start of the packet or at the start of the l3 header depending on the value
9981052 * of l3 tunnel flag in the tun_flags field of OVS_ACTION_ATTR_ADD_MPLS
9991053 * 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.
10001056 * @OVS_ACTION_ATTR_DROP: Explicit drop action.
10011057 * @OVS_ACTION_ATTR_PSAMPLE: Send a sample of the packet to external observers
10021058 * via psample.
@@ -1010,7 +1066,9 @@ enum ovs_psample_attr { · 7 unmodified lines
10101066 */
10111067
10121068 enum ovs_action_attr {
1069+ /* private: */
10131070 OVS_ACTION_ATTR_UNSPEC,
1071+ /* public: */
10141072 OVS_ACTION_ATTR_OUTPUT, /* u32 port number. */
10151073 OVS_ACTION_ATTR_USERSPACE, /* Nested OVS_USERSPACE_ATTR_*. */
10161074 OVS_ACTION_ATTR_SET, /* One nested OVS_KEY_ATTR_*. */
@@ -1040,9 +1098,11 @@ enum ovs_action_attr { · 23 unmodified lines
10401098 OVS_ACTION_ATTR_DROP, /* u32 error code. */
10411099 OVS_ACTION_ATTR_PSAMPLE, /* Nested OVS_PSAMPLE_ATTR_*. */
10421100
1101+ /* private: */
10431102 __OVS_ACTION_ATTR_MAX, /* Nothing past this will be accepted
10441103 * from userspace. */
10451104
1105+ /* public: */
10461106 #ifdef __KERNEL__
10471107 OVS_ACTION_ATTR_SET_TO_MASKED, /* Kernel module internal masked
10481108 * set action converted from
include/uapi/linux/ovpn.h+2−0
@@ -55,6 +55,7 @@ enum { · 54 unmodified lines
5555 OVPN_A_PEER_LINK_TX_BYTES,
5656 OVPN_A_PEER_LINK_RX_PACKETS,
5757 OVPN_A_PEER_LINK_TX_PACKETS,
58+ OVPN_A_PEER_TX_ID,
5859
5960 __OVPN_A_PEER_MAX,
6061 OVPN_A_PEER_MAX = (__OVPN_A_PEER_MAX - 1)
@@ -100,6 +101,7 @@ enum { · 39 unmodified lines
100101 OVPN_CMD_KEY_SWAP,
101102 OVPN_CMD_KEY_SWAP_NTF,
102103 OVPN_CMD_KEY_DEL,
104+ OVPN_CMD_PEER_FLOAT_NTF,
103105
104106 __OVPN_CMD_MAX,
105107 OVPN_CMD_MAX = (__OVPN_CMD_MAX - 1)
include/uapi/linux/seg6_iptunnel.h+1−0
@@ -20,6 +20,7 @@ · 19 unmodified lines
2020 enum {
2121 SEG6_IPTUNNEL_UNSPEC,
2222 SEG6_IPTUNNEL_SRH,
23+ SEG6_IPTUNNEL_SRC, /* struct in6_addr */
2324 __SEG6_IPTUNNEL_MAX,
2425 };
2526 #define SEG6_IPTUNNEL_MAX (__SEG6_IPTUNNEL_MAX - 1)
include/uapi/linux/udp.h+2−0
@@ -29,6 +29,8 @@ struct udphdr { · 28 unmodified lines
2929
3030 /* UDP socket options */
3131 #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 */
3234 #define UDP_ENCAP 100 /* Set the socket to accept encapsulated packets */
3335 #define UDP_NO_CHECK6_TX 101 /* Disable sending checksum for UDP6X */
3436 #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