unix: add Linux MPLS tunnel constants for use with rtnetlink APIs
Change-Id: Ic990c616c416e7bfe98e68eb74bab2810a1126ef
Reviewed-on: https://go-review.googlesource.com/c/sys/+/271137
Trust: Matt Layher <mdlayher@gmail.com>
Run-TryBot: Matt Layher <mdlayher@gmail.com>
Reviewed-by: Tobias Klauser <tobias.klauser@gmail.com>
diff --git a/unix/linux/types.go b/unix/linux/types.go
index 84c7c0d..b86df41 100644
--- a/unix/linux/types.go
+++ b/unix/linux/types.go
@@ -103,6 +103,7 @@
#include <linux/keyctl.h>
#include <linux/loop.h>
#include <linux/lwtunnel.h>
+#include <linux/mpls_iptunnel.h>
#include <linux/ncsi.h>
#include <linux/net_namespace.h>
#include <linux/net_tstamp.h>
@@ -2923,7 +2924,7 @@
PPS_FETCH = C.PPS_FETCH
)
-// lwtunnel APIs
+// lwtunnel and related APIs
const (
LWTUNNEL_ENCAP_NONE = C.LWTUNNEL_ENCAP_NONE
@@ -2936,4 +2937,9 @@
LWTUNNEL_ENCAP_SEG6_LOCAL = C.LWTUNNEL_ENCAP_SEG6_LOCAL
LWTUNNEL_ENCAP_RPL = C.LWTUNNEL_ENCAP_RPL
LWTUNNEL_ENCAP_MAX = C.LWTUNNEL_ENCAP_MAX
+
+ MPLS_IPTUNNEL_UNSPEC = C.MPLS_IPTUNNEL_UNSPEC
+ MPLS_IPTUNNEL_DST = C.MPLS_IPTUNNEL_DST
+ MPLS_IPTUNNEL_TTL = C.MPLS_IPTUNNEL_TTL
+ MPLS_IPTUNNEL_MAX = C.MPLS_IPTUNNEL_MAX
)
diff --git a/unix/ztypes_linux.go b/unix/ztypes_linux.go
index 22e67b2..504ef13 100644
--- a/unix/ztypes_linux.go
+++ b/unix/ztypes_linux.go
@@ -2993,4 +2993,9 @@
LWTUNNEL_ENCAP_SEG6_LOCAL = 0x7
LWTUNNEL_ENCAP_RPL = 0x8
LWTUNNEL_ENCAP_MAX = 0x8
+
+ MPLS_IPTUNNEL_UNSPEC = 0x0
+ MPLS_IPTUNNEL_DST = 0x1
+ MPLS_IPTUNNEL_TTL = 0x2
+ MPLS_IPTUNNEL_MAX = 0x2
)