]> git.ipfire.org Git - thirdparty/linux.git/commitdiff
include: uapi: protocol number and packet structs for AGGFRAG in ESP
authorChristian Hopps <chopps@labn.net>
Thu, 14 Nov 2024 07:06:59 +0000 (02:06 -0500)
committerSteffen Klassert <steffen.klassert@secunet.com>
Thu, 5 Dec 2024 09:01:09 +0000 (10:01 +0100)
Add the RFC assigned IP protocol number for AGGFRAG.
Add the on-wire basic and congestion-control IP-TFS packet headers.

Signed-off-by: Christian Hopps <chopps@labn.net>
Tested-by: Antony Antony <antony.antony@secunet.com>
Signed-off-by: Steffen Klassert <steffen.klassert@secunet.com>
include/uapi/linux/in.h
include/uapi/linux/ip.h

index 5d32d53508d99f8631fad6e3172dc6e9ae5e7424..ced0fc3c3aa5343ad4a62afde46924f8d2665775 100644 (file)
@@ -79,6 +79,8 @@ enum {
 #define IPPROTO_MPLS           IPPROTO_MPLS
   IPPROTO_ETHERNET = 143,      /* Ethernet-within-IPv6 Encapsulation   */
 #define IPPROTO_ETHERNET       IPPROTO_ETHERNET
+  IPPROTO_AGGFRAG = 144,       /* AGGFRAG in ESP (RFC 9347)            */
+#define IPPROTO_AGGFRAG                IPPROTO_AGGFRAG
   IPPROTO_RAW = 255,           /* Raw IP packets                       */
 #define IPPROTO_RAW            IPPROTO_RAW
   IPPROTO_SMC = 256,           /* Shared Memory Communications         */
index 283dec7e36451a1f424d864a3009132784b8efc8..5bd7ce934d746f2d51e3d689f42793d95d969bc6 100644 (file)
@@ -137,6 +137,22 @@ struct ip_beet_phdr {
        __u8 reserved;
 };
 
+struct ip_iptfs_hdr {
+       __u8 subtype;           /* 0*: basic, 1: CC */
+       __u8 flags;
+       __be16 block_offset;
+};
+
+struct ip_iptfs_cc_hdr {
+       __u8 subtype;           /* 0: basic, 1*: CC */
+       __u8 flags;
+       __be16 block_offset;
+       __be32 loss_rate;
+       __be64 rtt_adelay_xdelay;
+       __be32 tval;
+       __be32 techo;
+};
+
 /* index values for the variables in ipv4_devconf */
 enum
 {