Linux kernel mirror (for testing) git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
kernel os linux

include: uapi: protocol number and packet structs for AGGFRAG in ESP

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>

authored by

Christian Hopps and committed by
Steffen Klassert
64e84450 ffa79484

+18
+2
include/uapi/linux/in.h
··· 79 79 #define IPPROTO_MPLS IPPROTO_MPLS 80 80 IPPROTO_ETHERNET = 143, /* Ethernet-within-IPv6 Encapsulation */ 81 81 #define IPPROTO_ETHERNET IPPROTO_ETHERNET 82 + IPPROTO_AGGFRAG = 144, /* AGGFRAG in ESP (RFC 9347) */ 83 + #define IPPROTO_AGGFRAG IPPROTO_AGGFRAG 82 84 IPPROTO_RAW = 255, /* Raw IP packets */ 83 85 #define IPPROTO_RAW IPPROTO_RAW 84 86 IPPROTO_SMC = 256, /* Shared Memory Communications */
+16
include/uapi/linux/ip.h
··· 137 137 __u8 reserved; 138 138 }; 139 139 140 + struct ip_iptfs_hdr { 141 + __u8 subtype; /* 0*: basic, 1: CC */ 142 + __u8 flags; 143 + __be16 block_offset; 144 + }; 145 + 146 + struct ip_iptfs_cc_hdr { 147 + __u8 subtype; /* 0: basic, 1*: CC */ 148 + __u8 flags; 149 + __be16 block_offset; 150 + __be32 loss_rate; 151 + __be64 rtt_adelay_xdelay; 152 + __be32 tval; 153 + __be32 techo; 154 + }; 155 + 140 156 /* index values for the variables in ipv4_devconf */ 141 157 enum 142 158 {