summaryrefslogtreecommitdiff
path: root/include/linux-private/linux/seg6_iptunnel.h
diff options
context:
space:
mode:
authorAndroid Build Coastguard Worker <android-build-coastguard-worker@google.com>2024-05-10 15:37:01 +0000
committerAndroid Build Coastguard Worker <android-build-coastguard-worker@google.com>2024-05-10 15:37:01 +0000
commit145b33b49013bde805d3fa3b3bb546ef63b6f5e3 (patch)
tree4596d52178200c3721d33529d2784413d0eac6d2 /include/linux-private/linux/seg6_iptunnel.h
parent1c7dec91db9e428502e6e9961d62acb6afcec6a2 (diff)
parent9d3827052791330d2584c7d140e9dce5070a9d86 (diff)
downloadlibnl-145b33b49013bde805d3fa3b3bb546ef63b6f5e3.tar.gz
Snap for 11819167 from 9d3827052791330d2584c7d140e9dce5070a9d86 to busytown-mac-infra-release
Change-Id: I13b87b1a0220c74cc3a2c1b38ab700edac4ab776
Diffstat (limited to 'include/linux-private/linux/seg6_iptunnel.h')
-rw-r--r--include/linux-private/linux/seg6_iptunnel.h42
1 files changed, 42 insertions, 0 deletions
diff --git a/include/linux-private/linux/seg6_iptunnel.h b/include/linux-private/linux/seg6_iptunnel.h
new file mode 100644
index 00000000..e1929d21
--- /dev/null
+++ b/include/linux-private/linux/seg6_iptunnel.h
@@ -0,0 +1,42 @@
+/* SPDX-License-Identifier: GPL-2.0+ WITH Linux-syscall-note */
+/*
+ * SR-IPv6 implementation
+ *
+ * Author:
+ * David Lebrun <david.lebrun@uclouvain.be>
+ *
+ *
+ * This program is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU General Public License
+ * as published by the Free Software Foundation; either version
+ * 2 of the License, or (at your option) any later version.
+ */
+
+#ifndef _LINUX_SEG6_IPTUNNEL_H
+#define _LINUX_SEG6_IPTUNNEL_H
+
+#include <linux/seg6.h> /* For struct ipv6_sr_hdr. */
+
+enum {
+ SEG6_IPTUNNEL_UNSPEC,
+ SEG6_IPTUNNEL_SRH,
+ __SEG6_IPTUNNEL_MAX,
+};
+#define SEG6_IPTUNNEL_MAX (__SEG6_IPTUNNEL_MAX - 1)
+
+struct seg6_iptunnel_encap {
+ int mode;
+ struct ipv6_sr_hdr srh[];
+};
+
+#define SEG6_IPTUN_ENCAP_SIZE(x) ((sizeof(*x)) + (((x)->srh->hdrlen + 1) << 3))
+
+enum {
+ SEG6_IPTUN_MODE_INLINE,
+ SEG6_IPTUN_MODE_ENCAP,
+ SEG6_IPTUN_MODE_L2ENCAP,
+ SEG6_IPTUN_MODE_ENCAP_RED,
+ SEG6_IPTUN_MODE_L2ENCAP_RED,
+};
+
+#endif