History

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

Pull networking updates from Paolo Abeni: "Core: - Implement the Device Memory TCP transmit path, allowing zero-copy data transmission on top of TCP from e.g. GPU memory to the wire. - Move all the IPv6 routing tables management outside the RTNL scope, under its own lock and RCU. The route control path is now 3x times faster. - Convert queue related netlink ops to instance lock, reducing again the scope of the RTNL lock. This improves the control plane scalability. - Refactor the software crc32c implementation, removing unneeded abstraction layers and improving significantly the related micro-benchmarks. - Optimize the GRO engine for UDP-tunneled traffic, for a 10% performance improvement in related stream tests. - Cover more per-CPU storage with local nested BH locking; this is a prep work to remove the current per-CPU lock in local_bh_disable() on PREMPT_RT. - Introduce and use nlmsg_payload helper, combining buffer bounds verification with accessing payload carried by netlink messages. Netfilter: - Rewrite the procfs conntrack table implementation, improving considerably the dump performance. A lot of user-space tools still use this interface. - Implement support for wildcard netdevice in netdev basechain and flowtables. - Integrate conntrack information into nft trace infrastructure. - Export set count and backend name to userspace, for better introspection. BPF: - BPF qdisc support: BPF-qdisc can be implemented with BPF struct_ops programs and can be controlled in similar way to traditional qdiscs using the "tc qdisc" command. - Refactor the UDP socket iterator, addressing long standing issues WRT duplicate hits or missed sockets. Protocols: - Improve TCP receive buffer auto-tuning and increase the default upper bound for the receive buffer; overall this improves the single flow maximum thoughput on 200Gbs link by over 60%. - Add AFS GSSAPI security class to AF_RXRPC; it provides transport security for connections to the AFS fileserver and VL server. - Improve TCP multipath routing, so that the sources address always matches the nexthop device. - Introduce SO_PASSRIGHTS for AF_UNIX, to allow disabling SCM_RIGHTS, and thus preventing DoS caused by passing around problematic FDs. - Retire DCCP socket. DCCP only receives updates for bugs, and major distros disable it by default. Its removal allows for better organisation of TCP fields to reduce the number of cache lines hit in the fast path. - Extend TCP drop-reason support to cover PAWS checks. Driver API: - Reorganize PTP ioctl flag support to require an explicit opt-in for the drivers, avoiding the problem of drivers not rejecting new unsupported flags. - Converted several device drivers to timestamping APIs. - Introduce per-PHY ethtool dump helpers, improving the support for dump operations targeting PHYs. Tests and tooling: - Add support for classic netlink in user space C codegen, so that ynl-c can now read, create and modify links, routes addresses and qdisc layer configuration. - Add ynl sub-types for binary attributes, allowing ynl-c to output known struct instead of raw binary data, clarifying the classic netlink output. - Extend MPTCP selftests to improve the code-coverage. - Add tests for XDP tail adjustment in AF_XDP. New hardware / drivers: - OpenVPN virtual driver: offload OpenVPN data channels processing to the kernel-space, increasing the data transfer throughput WRT the user-space implementation. - Renesas glue driver for the gigabit ethernet RZ/V2H(P) SoC. - Broadcom asp-v3.0 ethernet driver. - AMD Renoir ethernet device. - ReakTek MT9888 2.5G ethernet PHY driver. - Aeonsemi 10G C45 PHYs driver. Drivers: - Ethernet high-speed NICs: - nVidia/Mellanox (mlx5): - refactor the steering table handling to significantly reduce the amount of memory used - add support for complex matches in H/W flow steering - improve flow streeing error handling - convert to netdev instance locking - Intel (100G, ice, igb, ixgbe, idpf): - ice: add switchdev support for LLDP traffic over VF - ixgbe: add firmware manipulation and regions devlink support - igb: introduce support for frame transmission premption - igb: adds persistent NAPI configuration - idpf: introduce RDMA support - idpf: add initial PTP support - Meta (fbnic): - extend hardware stats coverage - add devlink dev flash support - Broadcom (bnxt): - add support for RX-side device memory TCP - Wangxun (txgbe): - implement support for udp tunnel offload - complete PTP and SRIOV support for AML 25G/10G devices - Ethernet NICs embedded and virtual: - Google (gve): - add device memory TCP TX support - Amazon (ena): - support persistent per-NAPI config - Airoha: - add H/W support for L2 traffic offload - add per flow stats for flow offloading - RealTek (rtl8211): add support for WoL magic packet - Synopsys (stmmac): - dwmac-socfpga 1000BaseX support - add Loongson-2K3000 support - introduce support for hardware-accelerated VLAN stripping - Broadcom (bcmgenet): - expose more H/W stats - Freescale (enetc, dpaa2-eth): - enetc: add MAC filter, VLAN filter RSS and loopback support - dpaa2-eth: convert to H/W timestamping APIs - vxlan: convert FDB table to rhashtable, for better scalabilty - veth: apply qdisc backpressure on full ring to reduce TX drops - Ethernet switches: - Microchip (kzZ88x3): add ETS scheduler support - Ethernet PHYs: - RealTek (rtl8211): - add support for WoL magic packet - add support for PHY LEDs - CAN: - Adds RZ/G3E CANFD support to the rcar_canfd driver. - Preparatory work for CAN-XL support. - Add self-tests framework with support for CAN physical interfaces. - WiFi: - mac80211: - scan improvements with multi-link operation (MLO) - Qualcomm (ath12k): - enable AHB support for IPQ5332 - add monitor interface support to QCN9274 - add multi-link operation support to WCN7850 - add 802.11d scan offload support to WCN7850 - monitor mode for WCN7850, better 6 GHz regulatory - Qualcomm (ath11k): - restore hibernation support - MediaTek (mt76): - WiFi-7 improvements - implement support for mt7990 - Intel (iwlwifi): - enhanced multi-link single-radio (EMLSR) support on 5 GHz links - rework device configuration - RealTek (rtw88): - improve throughput for RTL8814AU - RealTek (rtw89): - add multi-link operation support - STA/P2P concurrency improvements - support different SAR configs by antenna - Bluetooth: - introduce HCI Driver protocol - btintel_pcie: do not generate coredump for diagnostic events - btusb: add HCI Drv commands for configuring altsetting - btusb: add RTL8851BE device 0x0bda:0xb850 - btusb: add new VID/PID 13d3/3584 for MT7922 - btusb: add new VID/PID 13d3/3630 and 13d3/3613 for MT7925 - btnxpuart: implement host-wakeup feature" * tag 'net-next-6.16' of git://git.kernel.org/pub/scm/linux/kernel/git/netdev/net-next: (1611 commits) selftests/bpf: Fix bpf selftest build warning selftests: netfilter: Fix skip of wildcard interface test net: phy: mscc: Stop clearing the the UDPv4 checksum for L2 frames net: openvswitch: Fix the dead loop of MPLS parse calipso: Don't call calipso functions for AF_INET sk. selftests/tc-testing: Add a test for HFSC eltree double add with reentrant enqueue behaviour on netem net_sched: hfsc: Address reentrant enqueue adding class to eltree twice octeontx2-pf: QOS: Refactor TC_HTB_LEAF_DEL_LAST callback octeontx2-pf: QOS: Perform cache sync on send queue teardown net: mana: Add support for Multi Vports on Bare metal net: devmem: ncdevmem: remove unused variable net: devmem: ksft: upgrade rx test to send 1K data net: devmem: ksft: add 5 tuple FS support net: devmem: ksft: add exit_wait to make rx test pass net: devmem: ksft: add ipv4 support net: devmem: preserve sockc_err page_pool: fix ugly page_pool formatting net: devmem: move list_add to net_devmem_bind_dmabuf. selftests: netfilter: nft_queue.sh: include file transfer duration in log message net: phy: mscc: Fix memory leak when using one step timestamping ...

Linus Torvalds committed 1 year ago

Commit 1b98f352 parents 47cf96f f6bd8fa1735 files · +83145 −38939Browse files

Showing the changes to include/uapi/linux (35 of 1735 files). Show all

Unified · Split

35 files
  1. include/uapi/linux/devlink.h +15 −0
  2. include/uapi/linux/ethtool.h +69 −65
  3. include/uapi/linux/ethtool_netlink_generated.h +14 −0
  4. include/uapi/linux/fib_rules.h +2 −2
  5. include/uapi/linux/if_addr.h +2 −2
  6. include/uapi/linux/if_addrlabel.h +2 −2
  7. include/uapi/linux/if_alg.h +3 −3
  8. include/uapi/linux/if_arcnet.h +3 −3
  9. include/uapi/linux/if_bonding.h +3 −3
  10. include/uapi/linux/if_bridge.h +6 −4
  11. include/uapi/linux/if_fc.h +3 −3
  12. include/uapi/linux/if_hippi.h +3 −3
  13. include/uapi/linux/if_link.h +15 −0
  14. include/uapi/linux/if_packet.h +2 −2
  15. include/uapi/linux/if_plip.h +2 −2
  16. include/uapi/linux/if_slip.h +2 −2
  17. include/uapi/linux/if_x25.h +3 −3
  18. include/uapi/linux/if_xdp.h +3 −3
  19. include/uapi/linux/ip6_tunnel.h +2 −2
  20. include/uapi/linux/neighbour.h +2 −2
  21. include/uapi/linux/net_dropmon.h +2 −2
  22. include/uapi/linux/net_tstamp.h +3 −3
  23. include/uapi/linux/netdev.h +1 −0
  24. include/uapi/linux/netfilter/nf_tables.h +22 −0
  25. include/uapi/linux/netfilter/nfnetlink.h +2 −0
  26. include/uapi/linux/netlink_diag.h +2 −2
  27. include/uapi/linux/nl80211.h +6 −0
  28. include/uapi/linux/ovpn.h +109 −0
  29. include/uapi/linux/pkt_cls.h +3 −2
  30. include/uapi/linux/pkt_sched.h +3 −2
  31. include/uapi/linux/rxrpc.h +65 −12
  32. include/uapi/linux/snmp.h +1 −0
  33. include/uapi/linux/tcp.h +1 −0
  34. include/uapi/linux/udp.h +1 −0
  35. include/uapi/linux/wireguard.h +9 −0
include/uapi/linux/devlink.h+15−0
@@ -385,6 +385,21 @@ enum devlink_linecard_state { · 384 unmodified lines
385 DEVLINK_LINECARD_STATE_MAX = __DEVLINK_LINECARD_STATE_MAX - 1385 DEVLINK_LINECARD_STATE_MAX = __DEVLINK_LINECARD_STATE_MAX - 1
386};386};
387 387
388/* Variable attribute type. */
389enum devlink_var_attr_type {
390 /* Following values relate to the internal NLA_* values */
391 DEVLINK_VAR_ATTR_TYPE_U8 = 1,
392 DEVLINK_VAR_ATTR_TYPE_U16,
393 DEVLINK_VAR_ATTR_TYPE_U32,
394 DEVLINK_VAR_ATTR_TYPE_U64,
395 DEVLINK_VAR_ATTR_TYPE_STRING,
396 DEVLINK_VAR_ATTR_TYPE_FLAG,
397 DEVLINK_VAR_ATTR_TYPE_NUL_STRING = 10,
398 DEVLINK_VAR_ATTR_TYPE_BINARY,
399 __DEVLINK_VAR_ATTR_TYPE_CUSTOM_BASE = 0x80,
400 /* Any possible custom types, unrelated to NLA_* values go below */
401};
402
388enum devlink_attr {403enum devlink_attr {
389 /* don't change the order or add anything between, this is ABI! */404 /* don't change the order or add anything between, this is ABI! */
390 DEVLINK_ATTR_UNSPEC,405 DEVLINK_ATTR_UNSPEC,
include/uapi/linux/ethtool.h+69−65
@@ -2295,71 +2295,75 @@ static inline int ethtool_validate_duplex(__u8 duplex) · 2294 unmodified lines
2295#define RXH_XFRM_SYM_OR_XOR (1 << 1)2295#define RXH_XFRM_SYM_OR_XOR (1 << 1)
2296#define RXH_XFRM_NO_CHANGE 0xff2296#define RXH_XFRM_NO_CHANGE 0xff
2297 2297
2298/* L2-L4 network traffic flow types */2298enum {
2299#define TCP_V4_FLOW 0x01 /* hash or spec (tcp_ip4_spec) */2299 /* L2-L4 network traffic flow types */
2300#define UDP_V4_FLOW 0x02 /* hash or spec (udp_ip4_spec) */2300 TCP_V4_FLOW = 0x01, /* hash or spec (tcp_ip4_spec) */
2301#define SCTP_V4_FLOW 0x03 /* hash or spec (sctp_ip4_spec) */2301 UDP_V4_FLOW = 0x02, /* hash or spec (udp_ip4_spec) */
2302#define AH_ESP_V4_FLOW 0x04 /* hash only */2302 SCTP_V4_FLOW = 0x03, /* hash or spec (sctp_ip4_spec) */
2303#define TCP_V6_FLOW 0x05 /* hash or spec (tcp_ip6_spec; nfc only) */2303 AH_ESP_V4_FLOW = 0x04, /* hash only */
2304#define UDP_V6_FLOW 0x06 /* hash or spec (udp_ip6_spec; nfc only) */2304 TCP_V6_FLOW = 0x05, /* hash or spec (tcp_ip6_spec; nfc only) */
2305#define SCTP_V6_FLOW 0x07 /* hash or spec (sctp_ip6_spec; nfc only) */2305 UDP_V6_FLOW = 0x06, /* hash or spec (udp_ip6_spec; nfc only) */
2306#define AH_ESP_V6_FLOW 0x08 /* hash only */2306 SCTP_V6_FLOW = 0x07, /* hash or spec (sctp_ip6_spec; nfc only) */
2307#define AH_V4_FLOW 0x09 /* hash or spec (ah_ip4_spec) */2307 AH_ESP_V6_FLOW = 0x08, /* hash only */
2308#define ESP_V4_FLOW 0x0a /* hash or spec (esp_ip4_spec) */2308 AH_V4_FLOW = 0x09, /* hash or spec (ah_ip4_spec) */
2309#define AH_V6_FLOW 0x0b /* hash or spec (ah_ip6_spec; nfc only) */2309 ESP_V4_FLOW = 0x0a, /* hash or spec (esp_ip4_spec) */
2310#define ESP_V6_FLOW 0x0c /* hash or spec (esp_ip6_spec; nfc only) */2310 AH_V6_FLOW = 0x0b, /* hash or spec (ah_ip6_spec; nfc only) */
2311#define IPV4_USER_FLOW 0x0d /* spec only (usr_ip4_spec) */2311 ESP_V6_FLOW = 0x0c, /* hash or spec (esp_ip6_spec; nfc only) */
2312#define IP_USER_FLOW IPV4_USER_FLOW2312 IPV4_USER_FLOW = 0x0d, /* spec only (usr_ip4_spec) */
2313#define IPV6_USER_FLOW 0x0e /* spec only (usr_ip6_spec; nfc only) */2313 IP_USER_FLOW = IPV4_USER_FLOW,
2314#define IPV4_FLOW 0x10 /* hash only */2314 IPV6_USER_FLOW = 0x0e, /* spec only (usr_ip6_spec; nfc only) */
2315#define IPV6_FLOW 0x11 /* hash only */2315 IPV4_FLOW = 0x10, /* hash only */
2316#define ETHER_FLOW 0x12 /* spec only (ether_spec) */2316 IPV6_FLOW = 0x11, /* hash only */
2317 2317 ETHER_FLOW = 0x12, /* spec only (ether_spec) */
2318/* Used for GTP-U IPv4 and IPv6.2318
2319 * The format of GTP packets only includes2319 /* Used for GTP-U IPv4 and IPv6.
2320 * elements such as TEID and GTP version.2320 * The format of GTP packets only includes
2321 * It is primarily intended for data communication of the UE.2321 * elements such as TEID and GTP version.
2322 */2322 * It is primarily intended for data communication of the UE.
2323#define GTPU_V4_FLOW 0x13 /* hash only */2323 */
2324#define GTPU_V6_FLOW 0x14 /* hash only */2324 GTPU_V4_FLOW = 0x13, /* hash only */
2325 2325 GTPU_V6_FLOW = 0x14, /* hash only */
2326/* Use for GTP-C IPv4 and v6.2326
2327 * The format of these GTP packets does not include TEID.2327 /* Use for GTP-C IPv4 and v6.
2328 * Primarily expected to be used for communication2328 * The format of these GTP packets does not include TEID.
2329 * to create sessions for UE data communication,2329 * Primarily expected to be used for communication
2330 * commonly referred to as CSR (Create Session Request).2330 * to create sessions for UE data communication,
2331 */2331 * commonly referred to as CSR (Create Session Request).
2332#define GTPC_V4_FLOW 0x15 /* hash only */2332 */
2333#define GTPC_V6_FLOW 0x16 /* hash only */2333 GTPC_V4_FLOW = 0x15, /* hash only */
2334 2334 GTPC_V6_FLOW = 0x16, /* hash only */
2335/* Use for GTP-C IPv4 and v6.2335
2336 * Unlike GTPC_V4_FLOW, the format of these GTP packets includes TEID.2336 /* Use for GTP-C IPv4 and v6.
2337 * After session creation, it becomes this packet.2337 * Unlike GTPC_V4_FLOW, the format of these GTP packets includes TEID.
2338 * This is mainly used for requests to realize UE handover.2338 * After session creation, it becomes this packet.
2339 */2339 * This is mainly used for requests to realize UE handover.
2340#define GTPC_TEID_V4_FLOW 0x17 /* hash only */2340 */
2341#define GTPC_TEID_V6_FLOW 0x18 /* hash only */2341 GTPC_TEID_V4_FLOW = 0x17, /* hash only */
2342 2342 GTPC_TEID_V6_FLOW = 0x18, /* hash only */
2343/* Use for GTP-U and extended headers for the PSC (PDU Session Container).2343
2344 * The format of these GTP packets includes TEID and QFI.2344 /* Use for GTP-U and extended headers for the PSC (PDU Session Container).
2345 * In 5G communication using UPF (User Plane Function),2345 * The format of these GTP packets includes TEID and QFI.
2346 * data communication with this extended header is performed.2346 * In 5G communication using UPF (User Plane Function),
2347 */2347 * data communication with this extended header is performed.
2348#define GTPU_EH_V4_FLOW 0x19 /* hash only */2348 */
2349#define GTPU_EH_V6_FLOW 0x1a /* hash only */2349 GTPU_EH_V4_FLOW = 0x19, /* hash only */
2350 2350 GTPU_EH_V6_FLOW = 0x1a, /* hash only */
2351/* Use for GTP-U IPv4 and v6 PSC (PDU Session Container) extended headers.2351
2352 * This differs from GTPU_EH_V(4|6)_FLOW in that it is distinguished by2352 /* Use for GTP-U IPv4 and v6 PSC (PDU Session Container) extended headers.
2353 * UL/DL included in the PSC.2353 * This differs from GTPU_EH_V(4|6)_FLOW in that it is distinguished by
2354 * There are differences in the data included based on Downlink/Uplink,2354 * UL/DL included in the PSC.
2355 * and can be used to distinguish packets.2355 * There are differences in the data included based on Downlink/Uplink,
2356 * The functions described so far are useful when you want to2356 * and can be used to distinguish packets.
2357 * handle communication from the mobile network in UPF, PGW, etc.2357 * The functions described so far are useful when you want to
2358 */2358 * handle communication from the mobile network in UPF, PGW, etc.
2359#define GTPU_UL_V4_FLOW 0x1b /* hash only */2359 */
2360#define GTPU_UL_V6_FLOW 0x1c /* hash only */2360 GTPU_UL_V4_FLOW = 0x1b, /* hash only */
2361#define GTPU_DL_V4_FLOW 0x1d /* hash only */2361 GTPU_UL_V6_FLOW = 0x1c, /* hash only */
2362#define GTPU_DL_V6_FLOW 0x1e /* hash only */2362 GTPU_DL_V4_FLOW = 0x1d, /* hash only */
2363 GTPU_DL_V6_FLOW = 0x1e, /* hash only */
2364
2365 __FLOW_TYPE_COUNT,
2366};
2363 2367
2364/* Flag to enable additional fields in struct ethtool_rx_flow_spec */2368/* Flag to enable additional fields in struct ethtool_rx_flow_spec */
2365#define FLOW_EXT 0x800000002369#define FLOW_EXT 0x80000000
include/uapi/linux/ethtool_netlink_generated.h+14−0
@@ -37,6 +37,18 @@ enum ethtool_tcp_data_split { · 36 unmodified lines
37 ETHTOOL_TCP_DATA_SPLIT_ENABLED,37 ETHTOOL_TCP_DATA_SPLIT_ENABLED,
38};38};
39 39
40/**
41 * enum hwtstamp_source - Source of the hardware timestamp
42 * @HWTSTAMP_SOURCE_NETDEV: Hardware timestamp comes from a MAC or a device
43 * which has MAC and PHY integrated
44 * @HWTSTAMP_SOURCE_PHYLIB: Hardware timestamp comes from one PHY device of the
45 * network topology
46 */
47enum hwtstamp_source {
48 HWTSTAMP_SOURCE_NETDEV = 1,
49 HWTSTAMP_SOURCE_PHYLIB,
50};
51
40enum {52enum {
41 ETHTOOL_A_HEADER_UNSPEC,53 ETHTOOL_A_HEADER_UNSPEC,
42 ETHTOOL_A_HEADER_DEV_INDEX,54 ETHTOOL_A_HEADER_DEV_INDEX,
@@ -401,6 +413,8 @@ enum { · 358 unmodified lines
401 ETHTOOL_A_TSINFO_PHC_INDEX,413 ETHTOOL_A_TSINFO_PHC_INDEX,
402 ETHTOOL_A_TSINFO_STATS,414 ETHTOOL_A_TSINFO_STATS,
403 ETHTOOL_A_TSINFO_HWTSTAMP_PROVIDER,415 ETHTOOL_A_TSINFO_HWTSTAMP_PROVIDER,
416 ETHTOOL_A_TSINFO_HWTSTAMP_SOURCE,
417 ETHTOOL_A_TSINFO_HWTSTAMP_PHYINDEX,
404 418
405 __ETHTOOL_A_TSINFO_CNT,419 __ETHTOOL_A_TSINFO_CNT,
406 ETHTOOL_A_TSINFO_MAX = (__ETHTOOL_A_TSINFO_CNT - 1)420 ETHTOOL_A_TSINFO_MAX = (__ETHTOOL_A_TSINFO_CNT - 1)
include/uapi/linux/fib_rules.h+2−2
@@ -1,6 +1,6 @@
1/* SPDX-License-Identifier: GPL-2.0 WITH Linux-syscall-note */1/* SPDX-License-Identifier: GPL-2.0 WITH Linux-syscall-note */
2#ifndef __LINUX_FIB_RULES_H2#ifndef _UAPI__LINUX_FIB_RULES_H
3#define __LINUX_FIB_RULES_H3#define _UAPI__LINUX_FIB_RULES_H
4 4
5#include <linux/types.h>5#include <linux/types.h>
6#include <linux/rtnetlink.h>6#include <linux/rtnetlink.h>
include/uapi/linux/if_addr.h+2−2
@@ -1,6 +1,6 @@
1/* SPDX-License-Identifier: GPL-2.0 WITH Linux-syscall-note */1/* SPDX-License-Identifier: GPL-2.0 WITH Linux-syscall-note */
2#ifndef __LINUX_IF_ADDR_H2#ifndef _UAPI__LINUX_IF_ADDR_H
3#define __LINUX_IF_ADDR_H3#define _UAPI__LINUX_IF_ADDR_H
4 4
5#include <linux/types.h>5#include <linux/types.h>
6#include <linux/netlink.h>6#include <linux/netlink.h>
include/uapi/linux/if_addrlabel.h+2−2
@@ -8,8 +8,8 @@ · 7 unmodified lines
8 * YOSHIFUJI Hideaki @ USAGI/WIDE <yoshfuji@linux-ipv6.org>8 * YOSHIFUJI Hideaki @ USAGI/WIDE <yoshfuji@linux-ipv6.org>
9 */9 */
10 10
11#ifndef __LINUX_IF_ADDRLABEL_H11#ifndef _UAPI__LINUX_IF_ADDRLABEL_H
12#define __LINUX_IF_ADDRLABEL_H12#define _UAPI__LINUX_IF_ADDRLABEL_H
13 13
14#include <linux/types.h>14#include <linux/types.h>
15 15
include/uapi/linux/if_alg.h+3−3
@@ -11,8 +11,8 @@ · 10 unmodified lines
11 *11 *
12 */12 */
13 13
14#ifndef _LINUX_IF_ALG_H14#ifndef _UAPI_LINUX_IF_ALG_H
15#define _LINUX_IF_ALG_H15#define _UAPI_LINUX_IF_ALG_H
16 16
17#include <linux/types.h>17#include <linux/types.h>
18 18
@@ -58,4 +58,4 @@ struct af_alg_iv { · 39 unmodified lines
58#define ALG_OP_DECRYPT 058#define ALG_OP_DECRYPT 0
59#define ALG_OP_ENCRYPT 159#define ALG_OP_ENCRYPT 1
60 60
61#endif /* _LINUX_IF_ALG_H */61#endif /* _UAPI_LINUX_IF_ALG_H */
include/uapi/linux/if_arcnet.h+3−3
@@ -14,8 +14,8 @@ · 13 unmodified lines
14 * 2 of the License, or (at your option) any later version.14 * 2 of the License, or (at your option) any later version.
15 */15 */
16 16
17#ifndef _LINUX_IF_ARCNET_H17#ifndef _UAPI_LINUX_IF_ARCNET_H
18#define _LINUX_IF_ARCNET_H18#define _UAPI_LINUX_IF_ARCNET_H
19 19
20#include <linux/types.h>20#include <linux/types.h>
21#include <linux/if_ether.h>21#include <linux/if_ether.h>
@@ -127,4 +127,4 @@ struct archdr { · 105 unmodified lines
127 } soft;127 } soft;
128};128};
129 129
130#endif /* _LINUX_IF_ARCNET_H */130#endif /* _UAPI_LINUX_IF_ARCNET_H */
include/uapi/linux/if_bonding.h+3−3
@@ -41,8 +41,8 @@ · 40 unmodified lines
41 * - added definitions for various XOR hashing policies41 * - added definitions for various XOR hashing policies
42 */42 */
43 43
44#ifndef _LINUX_IF_BONDING_H44#ifndef _UAPI_LINUX_IF_BONDING_H
45#define _LINUX_IF_BONDING_H45#define _UAPI_LINUX_IF_BONDING_H
46 46
47#include <linux/if.h>47#include <linux/if.h>
48#include <linux/types.h>48#include <linux/types.h>
@@ -152,4 +152,4 @@ enum { · 103 unmodified lines
152};152};
153#define BOND_3AD_STAT_MAX (__BOND_3AD_STAT_MAX - 1)153#define BOND_3AD_STAT_MAX (__BOND_3AD_STAT_MAX - 1)
154 154
155#endif /* _LINUX_IF_BONDING_H */155#endif /* _UAPI_LINUX_IF_BONDING_H */
include/uapi/linux/if_bridge.h+6−4
@@ -699,10 +699,11 @@ struct br_mdb_entry { · 698 unmodified lines
699#define MDB_TEMPORARY 0699#define MDB_TEMPORARY 0
700#define MDB_PERMANENT 1700#define MDB_PERMANENT 1
701 __u8 state;701 __u8 state;
702#define MDB_FLAGS_OFFLOAD (1 << 0)702#define MDB_FLAGS_OFFLOAD (1 << 0)
703#define MDB_FLAGS_FAST_LEAVE (1 << 1)703#define MDB_FLAGS_FAST_LEAVE (1 << 1)
704#define MDB_FLAGS_STAR_EXCL (1 << 2)704#define MDB_FLAGS_STAR_EXCL (1 << 2)
705#define MDB_FLAGS_BLOCKED (1 << 3)705#define MDB_FLAGS_BLOCKED (1 << 3)
706#define MDB_FLAGS_OFFLOAD_FAILED (1 << 4)
706 __u8 flags;707 __u8 flags;
707 __u16 vid;708 __u16 vid;
708 struct {709 struct {
@@ -830,6 +831,7 @@ enum br_boolopt_id { · 121 unmodified lines
830 BR_BOOLOPT_NO_LL_LEARN,831 BR_BOOLOPT_NO_LL_LEARN,
831 BR_BOOLOPT_MCAST_VLAN_SNOOPING,832 BR_BOOLOPT_MCAST_VLAN_SNOOPING,
832 BR_BOOLOPT_MST_ENABLE,833 BR_BOOLOPT_MST_ENABLE,
834 BR_BOOLOPT_MDB_OFFLOAD_FAIL_NOTIFICATION,
833 BR_BOOLOPT_MAX835 BR_BOOLOPT_MAX
834};836};
835 837
include/uapi/linux/if_fc.h+3−3
@@ -18,8 +18,8 @@ · 17 unmodified lines
18 * as published by the Free Software Foundation; either version18 * as published by the Free Software Foundation; either version
19 * 2 of the License, or (at your option) any later version.19 * 2 of the License, or (at your option) any later version.
20 */20 */
21#ifndef _LINUX_IF_FC_H21#ifndef _UAPI_LINUX_IF_FC_H
22#define _LINUX_IF_FC_H22#define _UAPI_LINUX_IF_FC_H
23 23
24#include <linux/types.h>24#include <linux/types.h>
25 25
@@ -49,4 +49,4 @@ struct fcllc { · 23 unmodified lines
49 __be16 ethertype; /* ether type field */49 __be16 ethertype; /* ether type field */
50};50};
51 51
52#endif /* _LINUX_IF_FC_H */52#endif /* _UAPI_LINUX_IF_FC_H */
include/uapi/linux/if_hippi.h+3−3
@@ -20,8 +20,8 @@ · 19 unmodified lines
20 * 2 of the License, or (at your option) any later version.20 * 2 of the License, or (at your option) any later version.
21 */21 */
22 22
23#ifndef _LINUX_IF_HIPPI_H23#ifndef _UAPI_LINUX_IF_HIPPI_H
24#define _LINUX_IF_HIPPI_H24#define _UAPI_LINUX_IF_HIPPI_H
25 25
26#include <linux/types.h>26#include <linux/types.h>
27#include <asm/byteorder.h>27#include <asm/byteorder.h>
@@ -151,4 +151,4 @@ struct hippi_hdr { · 123 unmodified lines
151 struct hippi_snap_hdr snap;151 struct hippi_snap_hdr snap;
152} __attribute__((packed));152} __attribute__((packed));
153 153
154#endif /* _LINUX_IF_HIPPI_H */154#endif /* _UAPI_LINUX_IF_HIPPI_H */
include/uapi/linux/if_link.h+15−0
@@ -1986,4 +1986,19 @@ enum { · 1985 unmodified lines
1986 1986
1987#define IFLA_DSA_MAX (__IFLA_DSA_MAX - 1)1987#define IFLA_DSA_MAX (__IFLA_DSA_MAX - 1)
1988 1988
1989/* OVPN section */
1990
1991enum ovpn_mode {
1992 OVPN_MODE_P2P,
1993 OVPN_MODE_MP,
1994};
1995
1996enum {
1997 IFLA_OVPN_UNSPEC,
1998 IFLA_OVPN_MODE,
1999 __IFLA_OVPN_MAX,
2000};
2001
2002#define IFLA_OVPN_MAX (__IFLA_OVPN_MAX - 1)
2003
1989#endif /* _UAPI_LINUX_IF_LINK_H */2004#endif /* _UAPI_LINUX_IF_LINK_H */
include/uapi/linux/if_packet.h+2−2
@@ -1,6 +1,6 @@
1/* SPDX-License-Identifier: GPL-2.0 WITH Linux-syscall-note */1/* SPDX-License-Identifier: GPL-2.0 WITH Linux-syscall-note */
2#ifndef __LINUX_IF_PACKET_H2#ifndef _UAPI__LINUX_IF_PACKET_H
3#define __LINUX_IF_PACKET_H3#define _UAPI__LINUX_IF_PACKET_H
4 4
5#include <asm/byteorder.h>5#include <asm/byteorder.h>
6#include <linux/types.h>6#include <linux/types.h>
include/uapi/linux/if_plip.h+2−2
@@ -9,8 +9,8 @@ · 8 unmodified lines
9 *9 *
10 */10 */
11 11
12#ifndef _LINUX_IF_PLIP_H12#ifndef _UAPI_LINUX_IF_PLIP_H
13#define _LINUX_IF_PLIP_H13#define _UAPI_LINUX_IF_PLIP_H
14 14
15#include <linux/sockios.h>15#include <linux/sockios.h>
16 16
include/uapi/linux/if_slip.h+2−2
@@ -6,8 +6,8 @@ · 5 unmodified lines
6 * KISS TNC driver.6 * KISS TNC driver.
7 */7 */
8 8
9#ifndef __LINUX_SLIP_H9#ifndef _UAPI__LINUX_SLIP_H
10#define __LINUX_SLIP_H10#define _UAPI__LINUX_SLIP_H
11 11
12#define SL_MODE_SLIP 012#define SL_MODE_SLIP 0
13#define SL_MODE_CSLIP 113#define SL_MODE_CSLIP 1
include/uapi/linux/if_x25.h+3−3
@@ -13,8 +13,8 @@ · 12 unmodified lines
13 * GNU General Public License for more details.13 * GNU General Public License for more details.
14 */14 */
15 15
16#ifndef _IF_X25_H16#ifndef _UAPI_IF_X25_H
17#define _IF_X25_H17#define _UAPI_IF_X25_H
18 18
19#include <linux/types.h>19#include <linux/types.h>
20 20
@@ -24,4 +24,4 @@ · 3 unmodified lines
24#define X25_IFACE_DISCONNECT 0x0224#define X25_IFACE_DISCONNECT 0x02
25#define X25_IFACE_PARAMS 0x0325#define X25_IFACE_PARAMS 0x03
26 26
27#endif /* _IF_X25_H */27#endif /* _UAPI_IF_X25_H */
include/uapi/linux/if_xdp.h+3−3
@@ -7,8 +7,8 @@ · 6 unmodified lines
7 * Magnus Karlsson <magnus.karlsson@intel.com>7 * Magnus Karlsson <magnus.karlsson@intel.com>
8 */8 */
9 9
10#ifndef _LINUX_IF_XDP_H10#ifndef _UAPI_LINUX_IF_XDP_H
11#define _LINUX_IF_XDP_H11#define _UAPI_LINUX_IF_XDP_H
12 12
13#include <linux/types.h>13#include <linux/types.h>
14 14
@@ -180,4 +180,4 @@ struct xdp_desc { · 165 unmodified lines
180/* TX packet carries valid metadata. */180/* TX packet carries valid metadata. */
181#define XDP_TX_METADATA (1 << 1)181#define XDP_TX_METADATA (1 << 1)
182 182
183#endif /* _LINUX_IF_XDP_H */183#endif /* _UAPI_LINUX_IF_XDP_H */
include/uapi/linux/ip6_tunnel.h+2−2
@@ -1,6 +1,6 @@
1/* SPDX-License-Identifier: GPL-2.0 WITH Linux-syscall-note */1/* SPDX-License-Identifier: GPL-2.0 WITH Linux-syscall-note */
2#ifndef _IP6_TUNNEL_H2#ifndef _UAPI_IP6_TUNNEL_H
3#define _IP6_TUNNEL_H3#define _UAPI_IP6_TUNNEL_H
4 4
5#include <linux/types.h>5#include <linux/types.h>
6#include <linux/if.h> /* For IFNAMSIZ. */6#include <linux/if.h> /* For IFNAMSIZ. */
include/uapi/linux/neighbour.h+2−2
@@ -1,6 +1,6 @@
1/* SPDX-License-Identifier: GPL-2.0 WITH Linux-syscall-note */1/* SPDX-License-Identifier: GPL-2.0 WITH Linux-syscall-note */
2#ifndef __LINUX_NEIGHBOUR_H2#ifndef _UAPI__LINUX_NEIGHBOUR_H
3#define __LINUX_NEIGHBOUR_H3#define _UAPI__LINUX_NEIGHBOUR_H
4 4
5#include <linux/types.h>5#include <linux/types.h>
6#include <linux/netlink.h>6#include <linux/netlink.h>
include/uapi/linux/net_dropmon.h+2−2
@@ -1,6 +1,6 @@
1/* SPDX-License-Identifier: GPL-2.0 WITH Linux-syscall-note */1/* SPDX-License-Identifier: GPL-2.0 WITH Linux-syscall-note */
2#ifndef __NET_DROPMON_H2#ifndef _UAPI__NET_DROPMON_H
3#define __NET_DROPMON_H3#define _UAPI__NET_DROPMON_H
4 4
5#include <linux/types.h>5#include <linux/types.h>
6#include <linux/netlink.h>6#include <linux/netlink.h>
include/uapi/linux/net_tstamp.h+3−3
@@ -7,8 +7,8 @@ · 6 unmodified lines
7 *7 *
8 */8 */
9 9
10#ifndef _NET_TIMESTAMPING_H10#ifndef _UAPI_NET_TIMESTAMPING_H
11#define _NET_TIMESTAMPING_H11#define _UAPI_NET_TIMESTAMPING_H
12 12
13#include <linux/types.h>13#include <linux/types.h>
14#include <linux/socket.h> /* for SO_TIMESTAMPING */14#include <linux/socket.h> /* for SO_TIMESTAMPING */
@@ -216,4 +216,4 @@ struct sock_txtime { · 201 unmodified lines
216 __u32 flags; /* as defined by enum txtime_flags */216 __u32 flags; /* as defined by enum txtime_flags */
217};217};
218 218
219#endif /* _NET_TIMESTAMPING_H */219#endif /* _UAPI_NET_TIMESTAMPING_H */
include/uapi/linux/netdev.h+1−0
@@ -219,6 +219,7 @@ enum { · 218 unmodified lines
219 NETDEV_CMD_QSTATS_GET,219 NETDEV_CMD_QSTATS_GET,
220 NETDEV_CMD_BIND_RX,220 NETDEV_CMD_BIND_RX,
221 NETDEV_CMD_NAPI_SET,221 NETDEV_CMD_NAPI_SET,
222 NETDEV_CMD_BIND_TX,
222 223
223 __NETDEV_CMD_MAX,224 __NETDEV_CMD_MAX,
224 NETDEV_CMD_MAX = (__NETDEV_CMD_MAX - 1)225 NETDEV_CMD_MAX = (__NETDEV_CMD_MAX - 1)
include/uapi/linux/netfilter/nf_tables.h+22−0
@@ -142,6 +142,8 @@ enum nf_tables_msg_types { · 141 unmodified lines
142 NFT_MSG_DESTROYOBJ,142 NFT_MSG_DESTROYOBJ,
143 NFT_MSG_DESTROYFLOWTABLE,143 NFT_MSG_DESTROYFLOWTABLE,
144 NFT_MSG_GETSETELEM_RESET,144 NFT_MSG_GETSETELEM_RESET,
145 NFT_MSG_NEWDEV,
146 NFT_MSG_DELDEV,
145 NFT_MSG_MAX,147 NFT_MSG_MAX,
146};148};
147 149
@@ -394,6 +396,8 @@ enum nft_set_field_attributes { · 246 unmodified lines
394 * @NFTA_SET_HANDLE: set handle (NLA_U64)396 * @NFTA_SET_HANDLE: set handle (NLA_U64)
395 * @NFTA_SET_EXPR: set expression (NLA_NESTED: nft_expr_attributes)397 * @NFTA_SET_EXPR: set expression (NLA_NESTED: nft_expr_attributes)
396 * @NFTA_SET_EXPRESSIONS: list of expressions (NLA_NESTED: nft_list_attributes)398 * @NFTA_SET_EXPRESSIONS: list of expressions (NLA_NESTED: nft_list_attributes)
399 * @NFTA_SET_TYPE: set backend type (NLA_STRING)
400 * @NFTA_SET_COUNT: number of set elements (NLA_U32)
397 */401 */
398enum nft_set_attributes {402enum nft_set_attributes {
399 NFTA_SET_UNSPEC,403 NFTA_SET_UNSPEC,
@@ -415,6 +419,8 @@ enum nft_set_attributes { · 15 unmodified lines
415 NFTA_SET_HANDLE,419 NFTA_SET_HANDLE,
416 NFTA_SET_EXPR,420 NFTA_SET_EXPR,
417 NFTA_SET_EXPRESSIONS,421 NFTA_SET_EXPRESSIONS,
422 NFTA_SET_TYPE,
423 NFTA_SET_COUNT,
418 __NFTA_SET_MAX424 __NFTA_SET_MAX
419};425};
420#define NFTA_SET_MAX (__NFTA_SET_MAX - 1)426#define NFTA_SET_MAX (__NFTA_SET_MAX - 1)
@@ -1780,10 +1786,18 @@ enum nft_synproxy_attributes { · 1359 unmodified lines
1780 * enum nft_device_attributes - nf_tables device netlink attributes1786 * enum nft_device_attributes - nf_tables device netlink attributes
1781 *1787 *
1782 * @NFTA_DEVICE_NAME: name of this device (NLA_STRING)1788 * @NFTA_DEVICE_NAME: name of this device (NLA_STRING)
1789 * @NFTA_DEVICE_TABLE: table containing the flowtable or chain hooking into the device (NLA_STRING)
1790 * @NFTA_DEVICE_FLOWTABLE: flowtable hooking into the device (NLA_STRING)
1791 * @NFTA_DEVICE_CHAIN: chain hooking into the device (NLA_STRING)
1792 * @NFTA_DEVICE_SPEC: hook spec matching the device (NLA_STRING)
1783 */1793 */
1784enum nft_devices_attributes {1794enum nft_devices_attributes {
1785 NFTA_DEVICE_UNSPEC,1795 NFTA_DEVICE_UNSPEC,
1786 NFTA_DEVICE_NAME,1796 NFTA_DEVICE_NAME,
1797 NFTA_DEVICE_TABLE,
1798 NFTA_DEVICE_FLOWTABLE,
1799 NFTA_DEVICE_CHAIN,
1800 NFTA_DEVICE_SPEC,
1787 __NFTA_DEVICE_MAX1801 __NFTA_DEVICE_MAX
1788};1802};
1789#define NFTA_DEVICE_MAX (__NFTA_DEVICE_MAX - 1)1803#define NFTA_DEVICE_MAX (__NFTA_DEVICE_MAX - 1)
@@ -1837,6 +1851,10 @@ enum nft_xfrm_keys { · 47 unmodified lines
1837 * @NFTA_TRACE_MARK: nfmark (NLA_U32)1851 * @NFTA_TRACE_MARK: nfmark (NLA_U32)
1838 * @NFTA_TRACE_NFPROTO: nf protocol processed (NLA_U32)1852 * @NFTA_TRACE_NFPROTO: nf protocol processed (NLA_U32)
1839 * @NFTA_TRACE_POLICY: policy that decided fate of packet (NLA_U32)1853 * @NFTA_TRACE_POLICY: policy that decided fate of packet (NLA_U32)
1854 * @NFTA_TRACE_CT_ID: conntrack id (NLA_U32)
1855 * @NFTA_TRACE_CT_DIRECTION: packets direction (NLA_U8)
1856 * @NFTA_TRACE_CT_STATUS: conntrack status (NLA_U32)
1857 * @NFTA_TRACE_CT_STATE: packet state (new, established, ...) (NLA_U32)
1840 */1858 */
1841enum nft_trace_attributes {1859enum nft_trace_attributes {
1842 NFTA_TRACE_UNSPEC,1860 NFTA_TRACE_UNSPEC,
@@ -1857,6 +1875,10 @@ enum nft_trace_attributes { · 14 unmodified lines
1857 NFTA_TRACE_NFPROTO,1875 NFTA_TRACE_NFPROTO,
1858 NFTA_TRACE_POLICY,1876 NFTA_TRACE_POLICY,
1859 NFTA_TRACE_PAD,1877 NFTA_TRACE_PAD,
1878 NFTA_TRACE_CT_ID,
1879 NFTA_TRACE_CT_DIRECTION,
1880 NFTA_TRACE_CT_STATUS,
1881 NFTA_TRACE_CT_STATE,
1860 __NFTA_TRACE_MAX1882 __NFTA_TRACE_MAX
1861};1883};
1862#define NFTA_TRACE_MAX (__NFTA_TRACE_MAX - 1)1884#define NFTA_TRACE_MAX (__NFTA_TRACE_MAX - 1)
include/uapi/linux/netfilter/nfnetlink.h+2−0
@@ -25,6 +25,8 @@ enum nfnetlink_groups { · 24 unmodified lines
25#define NFNLGRP_ACCT_QUOTA NFNLGRP_ACCT_QUOTA25#define NFNLGRP_ACCT_QUOTA NFNLGRP_ACCT_QUOTA
26 NFNLGRP_NFTRACE,26 NFNLGRP_NFTRACE,
27#define NFNLGRP_NFTRACE NFNLGRP_NFTRACE27#define NFNLGRP_NFTRACE NFNLGRP_NFTRACE
28 NFNLGRP_NFT_DEV,
29#define NFNLGRP_NFT_DEV NFNLGRP_NFT_DEV
28 __NFNLGRP_MAX,30 __NFNLGRP_MAX,
29};31};
30#define NFNLGRP_MAX (__NFNLGRP_MAX - 1)32#define NFNLGRP_MAX (__NFNLGRP_MAX - 1)
include/uapi/linux/netlink_diag.h+2−2
@@ -1,6 +1,6 @@
1/* SPDX-License-Identifier: GPL-2.0 WITH Linux-syscall-note */1/* SPDX-License-Identifier: GPL-2.0 WITH Linux-syscall-note */
2#ifndef __NETLINK_DIAG_H__2#ifndef _UAPI__NETLINK_DIAG_H__
3#define __NETLINK_DIAG_H__3#define _UAPI__NETLINK_DIAG_H__
4 4
5#include <linux/types.h>5#include <linux/types.h>
6 6
include/uapi/linux/nl80211.h+6−0
@@ -8036,6 +8036,11 @@ enum nl80211_sar_specs_attrs { · 8035 unmodified lines
8036 * Setting this flag is permitted only if the driver advertises EMA support8036 * Setting this flag is permitted only if the driver advertises EMA support
8037 * by setting wiphy->ema_max_profile_periodicity to non-zero.8037 * by setting wiphy->ema_max_profile_periodicity to non-zero.
8038 *8038 *
8039 * @NL80211_MBSSID_CONFIG_ATTR_TX_LINK_ID: Link ID of the transmitted profile.
8040 * This parameter is mandatory when NL80211_ATTR_MBSSID_CONFIG attributes
8041 * are sent for a non-transmitted profile and if the transmitted profile
8042 * is part of an MLD. For all other cases this parameter is unnecessary.
8043 *
8039 * @__NL80211_MBSSID_CONFIG_ATTR_LAST: Internal8044 * @__NL80211_MBSSID_CONFIG_ATTR_LAST: Internal
8040 * @NL80211_MBSSID_CONFIG_ATTR_MAX: highest attribute8045 * @NL80211_MBSSID_CONFIG_ATTR_MAX: highest attribute
8041 */8046 */
@@ -8047,6 +8052,7 @@ enum nl80211_mbssid_config_attributes { · 5 unmodified lines
8047 NL80211_MBSSID_CONFIG_ATTR_INDEX,8052 NL80211_MBSSID_CONFIG_ATTR_INDEX,
8048 NL80211_MBSSID_CONFIG_ATTR_TX_IFINDEX,8053 NL80211_MBSSID_CONFIG_ATTR_TX_IFINDEX,
8049 NL80211_MBSSID_CONFIG_ATTR_EMA,8054 NL80211_MBSSID_CONFIG_ATTR_EMA,
8055 NL80211_MBSSID_CONFIG_ATTR_TX_LINK_ID,
8050 8056
8051 /* keep last */8057 /* keep last */
8052 __NL80211_MBSSID_CONFIG_ATTR_LAST,8058 __NL80211_MBSSID_CONFIG_ATTR_LAST,
include/uapi/linux/ovpn.h+109−0
@@ -0,0 +1,109 @@
1/* SPDX-License-Identifier: ((GPL-2.0 WITH Linux-syscall-note) OR BSD-3-Clause) */
2/* Do not edit directly, auto-generated from: */
3/* Documentation/netlink/specs/ovpn.yaml */
4/* YNL-GEN uapi header */
5
6#ifndef _UAPI_LINUX_OVPN_H
7#define _UAPI_LINUX_OVPN_H
8
9#define OVPN_FAMILY_NAME "ovpn"
10#define OVPN_FAMILY_VERSION 1
11
12#define OVPN_NONCE_TAIL_SIZE 8
13
14enum ovpn_cipher_alg {
15 OVPN_CIPHER_ALG_NONE,
16 OVPN_CIPHER_ALG_AES_GCM,
17 OVPN_CIPHER_ALG_CHACHA20_POLY1305,
18};
19
20enum ovpn_del_peer_reason {
21 OVPN_DEL_PEER_REASON_TEARDOWN,
22 OVPN_DEL_PEER_REASON_USERSPACE,
23 OVPN_DEL_PEER_REASON_EXPIRED,
24 OVPN_DEL_PEER_REASON_TRANSPORT_ERROR,
25 OVPN_DEL_PEER_REASON_TRANSPORT_DISCONNECT,
26};
27
28enum ovpn_key_slot {
29 OVPN_KEY_SLOT_PRIMARY,
30 OVPN_KEY_SLOT_SECONDARY,
31};
32
33enum {
34 OVPN_A_PEER_ID = 1,
35 OVPN_A_PEER_REMOTE_IPV4,
36 OVPN_A_PEER_REMOTE_IPV6,
37 OVPN_A_PEER_REMOTE_IPV6_SCOPE_ID,
38 OVPN_A_PEER_REMOTE_PORT,
39 OVPN_A_PEER_SOCKET,
40 OVPN_A_PEER_SOCKET_NETNSID,
41 OVPN_A_PEER_VPN_IPV4,
42 OVPN_A_PEER_VPN_IPV6,
43 OVPN_A_PEER_LOCAL_IPV4,
44 OVPN_A_PEER_LOCAL_IPV6,
45 OVPN_A_PEER_LOCAL_PORT,
46 OVPN_A_PEER_KEEPALIVE_INTERVAL,
47 OVPN_A_PEER_KEEPALIVE_TIMEOUT,
48 OVPN_A_PEER_DEL_REASON,
49 OVPN_A_PEER_VPN_RX_BYTES,
50 OVPN_A_PEER_VPN_TX_BYTES,
51 OVPN_A_PEER_VPN_RX_PACKETS,
52 OVPN_A_PEER_VPN_TX_PACKETS,
53 OVPN_A_PEER_LINK_RX_BYTES,
54 OVPN_A_PEER_LINK_TX_BYTES,
55 OVPN_A_PEER_LINK_RX_PACKETS,
56 OVPN_A_PEER_LINK_TX_PACKETS,
57
58 __OVPN_A_PEER_MAX,
59 OVPN_A_PEER_MAX = (__OVPN_A_PEER_MAX - 1)
60};
61
62enum {
63 OVPN_A_KEYCONF_PEER_ID = 1,
64 OVPN_A_KEYCONF_SLOT,
65 OVPN_A_KEYCONF_KEY_ID,
66 OVPN_A_KEYCONF_CIPHER_ALG,
67 OVPN_A_KEYCONF_ENCRYPT_DIR,
68 OVPN_A_KEYCONF_DECRYPT_DIR,
69
70 __OVPN_A_KEYCONF_MAX,
71 OVPN_A_KEYCONF_MAX = (__OVPN_A_KEYCONF_MAX - 1)
72};
73
74enum {
75 OVPN_A_KEYDIR_CIPHER_KEY = 1,
76 OVPN_A_KEYDIR_NONCE_TAIL,
77
78 __OVPN_A_KEYDIR_MAX,
79 OVPN_A_KEYDIR_MAX = (__OVPN_A_KEYDIR_MAX - 1)
80};
81
82enum {
83 OVPN_A_IFINDEX = 1,
84 OVPN_A_PEER,
85 OVPN_A_KEYCONF,
86
87 __OVPN_A_MAX,
88 OVPN_A_MAX = (__OVPN_A_MAX - 1)
89};
90
91enum {
92 OVPN_CMD_PEER_NEW = 1,
93 OVPN_CMD_PEER_SET,
94 OVPN_CMD_PEER_GET,
95 OVPN_CMD_PEER_DEL,
96 OVPN_CMD_PEER_DEL_NTF,
97 OVPN_CMD_KEY_NEW,
98 OVPN_CMD_KEY_GET,
99 OVPN_CMD_KEY_SWAP,
100 OVPN_CMD_KEY_SWAP_NTF,
101 OVPN_CMD_KEY_DEL,
102
103 __OVPN_CMD_MAX,
104 OVPN_CMD_MAX = (__OVPN_CMD_MAX - 1)
105};
106
107#define OVPN_MCGRP_PEERS "peers"
108
109#endif /* _UAPI_LINUX_OVPN_H */
include/uapi/linux/pkt_cls.h+3−2
@@ -1,6 +1,6 @@
1/* SPDX-License-Identifier: GPL-2.0 WITH Linux-syscall-note */1/* SPDX-License-Identifier: GPL-2.0 WITH Linux-syscall-note */
2#ifndef __LINUX_PKT_CLS_H2#ifndef _UAPI__LINUX_PKT_CLS_H
3#define __LINUX_PKT_CLS_H3#define _UAPI__LINUX_PKT_CLS_H
4 4
5#include <linux/types.h>5#include <linux/types.h>
6#include <linux/pkt_sched.h>6#include <linux/pkt_sched.h>
@@ -697,6 +697,7 @@ enum { · 690 unmodified lines
697};697};
698 698
699#define TCA_FLOWER_KEY_CFM_OPT_MAX (__TCA_FLOWER_KEY_CFM_OPT_MAX - 1)699#define TCA_FLOWER_KEY_CFM_OPT_MAX (__TCA_FLOWER_KEY_CFM_OPT_MAX - 1)
700#define TCA_FLOWER_KEY_CFM_MAX (__TCA_FLOWER_KEY_CFM_OPT_MAX - 1)
700 701
701#define TCA_FLOWER_MASK_FLAGS_RANGE (1 << 0) /* Range-based match */702#define TCA_FLOWER_MASK_FLAGS_RANGE (1 << 0) /* Range-based match */
702 703
include/uapi/linux/pkt_sched.h+3−2
@@ -1,6 +1,6 @@
1/* SPDX-License-Identifier: GPL-2.0 WITH Linux-syscall-note */1/* SPDX-License-Identifier: GPL-2.0 WITH Linux-syscall-note */
2#ifndef __LINUX_PKT_SCHED_H2#ifndef _UAPI__LINUX_PKT_SCHED_H
3#define __LINUX_PKT_SCHED_H3#define _UAPI__LINUX_PKT_SCHED_H
4 4
5#include <linux/const.h>5#include <linux/const.h>
6#include <linux/types.h>6#include <linux/types.h>
@@ -1182,6 +1182,7 @@ enum { · 1175 unmodified lines
1182 TCA_TAPRIO_ATTR_SCHED_SINGLE_ENTRY, /* single entry */1182 TCA_TAPRIO_ATTR_SCHED_SINGLE_ENTRY, /* single entry */
1183 TCA_TAPRIO_ATTR_SCHED_CLOCKID, /* s32 */1183 TCA_TAPRIO_ATTR_SCHED_CLOCKID, /* s32 */
1184 TCA_TAPRIO_PAD,1184 TCA_TAPRIO_PAD,
1185 TCA_TAPRIO_ATTR_PAD = TCA_TAPRIO_PAD,
1185 TCA_TAPRIO_ATTR_ADMIN_SCHED, /* The admin sched, only used in dump */1186 TCA_TAPRIO_ATTR_ADMIN_SCHED, /* The admin sched, only used in dump */
1186 TCA_TAPRIO_ATTR_SCHED_CYCLE_TIME, /* s64 */1187 TCA_TAPRIO_ATTR_SCHED_CYCLE_TIME, /* s64 */
1187 TCA_TAPRIO_ATTR_SCHED_CYCLE_TIME_EXTENSION, /* s64 */1188 TCA_TAPRIO_ATTR_SCHED_CYCLE_TIME_EXTENSION, /* s64 */
include/uapi/linux/rxrpc.h+65−12
@@ -36,26 +36,33 @@ struct sockaddr_rxrpc { · 35 unmodified lines
36#define RXRPC_MIN_SECURITY_LEVEL 4 /* minimum security level */36#define RXRPC_MIN_SECURITY_LEVEL 4 /* minimum security level */
37#define RXRPC_UPGRADEABLE_SERVICE 5 /* Upgrade service[0] -> service[1] */37#define RXRPC_UPGRADEABLE_SERVICE 5 /* Upgrade service[0] -> service[1] */
38#define RXRPC_SUPPORTED_CMSG 6 /* Get highest supported control message type */38#define RXRPC_SUPPORTED_CMSG 6 /* Get highest supported control message type */
39#define RXRPC_MANAGE_RESPONSE 7 /* [clnt] Want to manage RESPONSE packets */
39 40
40/*41/*
41 * RxRPC control messages42 * RxRPC control messages
42 * - If neither abort or accept are specified, the message is a data message.43 * - If neither abort or accept are specified, the message is a data message.
43 * - terminal messages mean that a user call ID tag can be recycled44 * - terminal messages mean that a user call ID tag can be recycled
45 * - C/S/- indicate whether these are applicable to client, server or both
44 * - s/r/- indicate whether these are applicable to sendmsg() and/or recvmsg()46 * - s/r/- indicate whether these are applicable to sendmsg() and/or recvmsg()
45 */47 */
46enum rxrpc_cmsg_type {48enum rxrpc_cmsg_type {
47 RXRPC_USER_CALL_ID = 1, /* sr: user call ID specifier */49 RXRPC_USER_CALL_ID = 1, /* -sr: User call ID specifier */
48 RXRPC_ABORT = 2, /* sr: abort request / notification [terminal] */50 RXRPC_ABORT = 2, /* -sr: Abort request / notification [terminal] */
49 RXRPC_ACK = 3, /* -r: [Service] RPC op final ACK received [terminal] */51 RXRPC_ACK = 3, /* S-r: RPC op final ACK received [terminal] */
50 RXRPC_NET_ERROR = 5, /* -r: network error received [terminal] */52 RXRPC_NET_ERROR = 5, /* --r: Network error received [terminal] */
51 RXRPC_BUSY = 6, /* -r: server busy received [terminal] */53 RXRPC_BUSY = 6, /* C-r: Server busy received [terminal] */
52 RXRPC_LOCAL_ERROR = 7, /* -r: local error generated [terminal] */54 RXRPC_LOCAL_ERROR = 7, /* --r: Local error generated [terminal] */
53 RXRPC_NEW_CALL = 8, /* -r: [Service] new incoming call notification */55 RXRPC_NEW_CALL = 8, /* S-r: New incoming call notification */
54 RXRPC_EXCLUSIVE_CALL = 10, /* s-: Call should be on exclusive connection */56 RXRPC_EXCLUSIVE_CALL = 10, /* Cs-: Call should be on exclusive connection */
55 RXRPC_UPGRADE_SERVICE = 11, /* s-: Request service upgrade for client call */57 RXRPC_UPGRADE_SERVICE = 11, /* Cs-: Request service upgrade for client call */
56 RXRPC_TX_LENGTH = 12, /* s-: Total length of Tx data */58 RXRPC_TX_LENGTH = 12, /* -s-: Total length of Tx data */
57 RXRPC_SET_CALL_TIMEOUT = 13, /* s-: Set one or more call timeouts */59 RXRPC_SET_CALL_TIMEOUT = 13, /* -s-: Set one or more call timeouts */
58 RXRPC_CHARGE_ACCEPT = 14, /* s-: Charge the accept pool with a user call ID */60 RXRPC_CHARGE_ACCEPT = 14, /* Ss-: Charge the accept pool with a user call ID */
61 RXRPC_OOB_ID = 15, /* -sr: OOB message ID */
62 RXRPC_CHALLENGED = 16, /* C-r: Info on a received CHALLENGE */
63 RXRPC_RESPOND = 17, /* Cs-: Respond to a challenge */
64 RXRPC_RESPONDED = 18, /* S-r: Data received in RESPONSE */
65 RXRPC_RESP_RXGK_APPDATA = 19, /* Cs-: RESPONSE: RxGK app data to include */
59 RXRPC__SUPPORTED66 RXRPC__SUPPORTED
60};67};
61 68
@@ -73,6 +80,7 @@ enum rxrpc_cmsg_type { · 11 unmodified lines
73#define RXRPC_SECURITY_RXKAD 2 /* kaserver or kerberos 4 */80#define RXRPC_SECURITY_RXKAD 2 /* kaserver or kerberos 4 */
74#define RXRPC_SECURITY_RXGK 4 /* gssapi-based */81#define RXRPC_SECURITY_RXGK 4 /* gssapi-based */
75#define RXRPC_SECURITY_RXK5 5 /* kerberos 5 */82#define RXRPC_SECURITY_RXK5 5 /* kerberos 5 */
83#define RXRPC_SECURITY_YFS_RXGK 6 /* YFS gssapi-based */
76 84
77/*85/*
78 * RxRPC-level abort codes86 * RxRPC-level abort codes
@@ -118,4 +126,49 @@ enum rxrpc_cmsg_type { · 39 unmodified lines
118#define RXKADDATALEN 19270411 /* user data too long */126#define RXKADDATALEN 19270411 /* user data too long */
119#define RXKADILLEGALLEVEL 19270412 /* caller not authorised to use encrypted conns */127#define RXKADILLEGALLEVEL 19270412 /* caller not authorised to use encrypted conns */
120 128
129/*
130 * RxGK GSSAPI security abort codes.
131 */
132#if 0 /* Original standard abort codes (used by OpenAFS) */
133#define RXGK_INCONSISTENCY 1233242880 /* Security module structure inconsistent */
134#define RXGK_PACKETSHORT 1233242881 /* Packet too short for security challenge */
135#define RXGK_BADCHALLENGE 1233242882 /* Invalid security challenge */
136#define RXGK_BADETYPE 1233242883 /* Invalid or impermissible encryption type */
137#define RXGK_BADLEVEL 1233242884 /* Invalid or impermissible security level */
138#define RXGK_BADKEYNO 1233242885 /* Key version number not found */
139#define RXGK_EXPIRED 1233242886 /* Token has expired */
140#define RXGK_NOTAUTH 1233242887 /* Caller not authorized */
141#define RXGK_BAD_TOKEN 1233242888 /* Security object was passed a bad token */
142#define RXGK_SEALED_INCON 1233242889 /* Sealed data inconsistent */
143#define RXGK_DATA_LEN 1233242890 /* User data too long */
144#define RXGK_BAD_QOP 1233242891 /* Inadequate quality of protection available */
145#else /* Revised standard abort codes (used by YFS) */
146#define RXGK_INCONSISTENCY 1233242880 /* Security module structure inconsistent */
147#define RXGK_PACKETSHORT 1233242881 /* Packet too short for security challenge */
148#define RXGK_BADCHALLENGE 1233242882 /* Security challenge/response failed */
149#define RXGK_SEALEDINCON 1233242883 /* Sealed data is inconsistent */
150#define RXGK_NOTAUTH 1233242884 /* Caller not authorised */
151#define RXGK_EXPIRED 1233242885 /* Authentication expired */
152#define RXGK_BADLEVEL 1233242886 /* Unsupported or not permitted security level */
153#define RXGK_BADKEYNO 1233242887 /* Bad transport key number */
154#define RXGK_NOTRXGK 1233242888 /* Security layer is not rxgk */
155#define RXGK_UNSUPPORTED 1233242889 /* Endpoint does not support rxgk */
156#define RXGK_GSSERROR 1233242890 /* GSSAPI mechanism error */
157#endif
158
159/*
160 * Challenge information in the RXRPC_CHALLENGED control message.
161 */
162struct rxrpc_challenge {
163 __u16 service_id; /* The service ID of the connection (may be upgraded) */
164 __u8 security_index; /* The security index of the connection */
165 __u8 pad; /* Round out to a multiple of 4 bytes. */
166 /* ... The security class gets to append extra information ... */
167};
168
169struct rxgk_challenge {
170 struct rxrpc_challenge base;
171 __u32 enctype; /* Krb5 encoding type */
172};
173
121#endif /* _UAPI_LINUX_RXRPC_H */174#endif /* _UAPI_LINUX_RXRPC_H */
include/uapi/linux/snmp.h+1−0
@@ -188,6 +188,7 @@ enum · 187 unmodified lines
188 LINUX_MIB_PAWSESTABREJECTED, /* PAWSEstabRejected */188 LINUX_MIB_PAWSESTABREJECTED, /* PAWSEstabRejected */
189 LINUX_MIB_TSECRREJECTED, /* TSEcrRejected */189 LINUX_MIB_TSECRREJECTED, /* TSEcrRejected */
190 LINUX_MIB_PAWS_OLD_ACK, /* PAWSOldAck */190 LINUX_MIB_PAWS_OLD_ACK, /* PAWSOldAck */
191 LINUX_MIB_PAWS_TW_REJECTED, /* PAWSTimewait */
191 LINUX_MIB_DELAYEDACKS, /* DelayedACKs */192 LINUX_MIB_DELAYEDACKS, /* DelayedACKs */
192 LINUX_MIB_DELAYEDACKLOCKED, /* DelayedACKLocked */193 LINUX_MIB_DELAYEDACKLOCKED, /* DelayedACKLocked */
193 LINUX_MIB_DELAYEDACKLOST, /* DelayedACKLost */194 LINUX_MIB_DELAYEDACKLOST, /* DelayedACKLost */
include/uapi/linux/tcp.h+1−0
@@ -184,6 +184,7 @@ enum tcp_fastopen_client_fail { · 183 unmodified lines
184#define TCPI_OPT_ECN_SEEN 16 /* we received at least one packet with ECT */184#define TCPI_OPT_ECN_SEEN 16 /* we received at least one packet with ECT */
185#define TCPI_OPT_SYN_DATA 32 /* SYN-ACK acked data in SYN sent or rcvd */185#define TCPI_OPT_SYN_DATA 32 /* SYN-ACK acked data in SYN sent or rcvd */
186#define TCPI_OPT_USEC_TS 64 /* usec timestamps */186#define TCPI_OPT_USEC_TS 64 /* usec timestamps */
187#define TCPI_OPT_TFO_CHILD 128 /* child from a Fast Open option on SYN */
187 188
188/*189/*
189 * Sender's congestion state indicating normal or abnormal situations190 * Sender's congestion state indicating normal or abnormal situations
include/uapi/linux/udp.h+1−0
@@ -43,5 +43,6 @@ struct udphdr { · 42 unmodified lines
43#define UDP_ENCAP_GTP1U 5 /* 3GPP TS 29.060 */43#define UDP_ENCAP_GTP1U 5 /* 3GPP TS 29.060 */
44#define UDP_ENCAP_RXRPC 644#define UDP_ENCAP_RXRPC 6
45#define TCP_ENCAP_ESPINTCP 7 /* Yikes, this is really xfrm encap types. */45#define TCP_ENCAP_ESPINTCP 7 /* Yikes, this is really xfrm encap types. */
46#define UDP_ENCAP_OVPNINUDP 8 /* OpenVPN traffic */
46 47
47#endif /* _UAPI_LINUX_UDP_H */48#endif /* _UAPI_LINUX_UDP_H */
include/uapi/linux/wireguard.h+9−0
@@ -101,6 +101,10 @@ · 100 unmodified lines
101 * WGALLOWEDIP_A_FAMILY: NLA_U16101 * WGALLOWEDIP_A_FAMILY: NLA_U16
102 * WGALLOWEDIP_A_IPADDR: struct in_addr or struct in6_addr102 * WGALLOWEDIP_A_IPADDR: struct in_addr or struct in6_addr
103 * WGALLOWEDIP_A_CIDR_MASK: NLA_U8103 * WGALLOWEDIP_A_CIDR_MASK: NLA_U8
104 * WGALLOWEDIP_A_FLAGS: NLA_U32, WGALLOWEDIP_F_REMOVE_ME if
105 * the specified IP should be removed;
106 * otherwise, this IP will be added if
107 * it is not already present.
104 * 0: NLA_NESTED108 * 0: NLA_NESTED
105 * ...109 * ...
106 * 0: NLA_NESTED110 * 0: NLA_NESTED
@@ -184,11 +188,16 @@ enum wgpeer_attribute { · 77 unmodified lines
184};188};
185#define WGPEER_A_MAX (__WGPEER_A_LAST - 1)189#define WGPEER_A_MAX (__WGPEER_A_LAST - 1)
186 190
191enum wgallowedip_flag {
192 WGALLOWEDIP_F_REMOVE_ME = 1U << 0,
193 __WGALLOWEDIP_F_ALL = WGALLOWEDIP_F_REMOVE_ME
194};
187enum wgallowedip_attribute {195enum wgallowedip_attribute {
188 WGALLOWEDIP_A_UNSPEC,196 WGALLOWEDIP_A_UNSPEC,
189 WGALLOWEDIP_A_FAMILY,197 WGALLOWEDIP_A_FAMILY,
190 WGALLOWEDIP_A_IPADDR,198 WGALLOWEDIP_A_IPADDR,
191 WGALLOWEDIP_A_CIDR_MASK,199 WGALLOWEDIP_A_CIDR_MASK,
200 WGALLOWEDIP_A_FLAGS,
192 __WGALLOWEDIP_A_LAST201 __WGALLOWEDIP_A_LAST
193};202};
194#define WGALLOWEDIP_A_MAX (__WGALLOWEDIP_A_LAST - 1)203#define WGALLOWEDIP_A_MAX (__WGALLOWEDIP_A_LAST - 1)