~ [ source navigation ] ~ [ diff markup ] ~ [ identifier search ] ~

TOMOYO Linux Cross Reference
Linux/include/uapi/linux/tc_act/tc_tunnel_key.h

Version: ~ [ linux-6.11-rc3 ] ~ [ linux-6.10.4 ] ~ [ linux-6.9.12 ] ~ [ linux-6.8.12 ] ~ [ linux-6.7.12 ] ~ [ linux-6.6.45 ] ~ [ linux-6.5.13 ] ~ [ linux-6.4.16 ] ~ [ linux-6.3.13 ] ~ [ linux-6.2.16 ] ~ [ linux-6.1.104 ] ~ [ linux-6.0.19 ] ~ [ linux-5.19.17 ] ~ [ linux-5.18.19 ] ~ [ linux-5.17.15 ] ~ [ linux-5.16.20 ] ~ [ linux-5.15.164 ] ~ [ linux-5.14.21 ] ~ [ linux-5.13.19 ] ~ [ linux-5.12.19 ] ~ [ linux-5.11.22 ] ~ [ linux-5.10.223 ] ~ [ linux-5.9.16 ] ~ [ linux-5.8.18 ] ~ [ linux-5.7.19 ] ~ [ linux-5.6.19 ] ~ [ linux-5.5.19 ] ~ [ linux-5.4.281 ] ~ [ linux-5.3.18 ] ~ [ linux-5.2.21 ] ~ [ linux-5.1.21 ] ~ [ linux-5.0.21 ] ~ [ linux-4.20.17 ] ~ [ linux-4.19.319 ] ~ [ linux-4.18.20 ] ~ [ linux-4.17.19 ] ~ [ linux-4.16.18 ] ~ [ linux-4.15.18 ] ~ [ linux-4.14.336 ] ~ [ linux-4.13.16 ] ~ [ linux-4.12.14 ] ~ [ linux-4.11.12 ] ~ [ linux-4.10.17 ] ~ [ linux-4.9.337 ] ~ [ linux-4.4.302 ] ~ [ linux-3.10.108 ] ~ [ linux-2.6.32.71 ] ~ [ linux-2.6.0 ] ~ [ linux-2.4.37.11 ] ~ [ unix-v6-master ] ~ [ ccs-tools-1.8.9 ] ~ [ policy-sample ] ~
Architecture: ~ [ i386 ] ~ [ alpha ] ~ [ m68k ] ~ [ mips ] ~ [ ppc ] ~ [ sparc ] ~ [ sparc64 ] ~

  1 /* SPDX-License-Identifier: GPL-2.0+ WITH Linux-syscall-note */
  2 /*
  3  * Copyright (c) 2016, Amir Vadai <amir@vadai.me>
  4  * Copyright (c) 2016, Mellanox Technologies. All rights reserved.
  5  */
  6 
  7 #ifndef __LINUX_TC_TUNNEL_KEY_H
  8 #define __LINUX_TC_TUNNEL_KEY_H
  9 
 10 #include <linux/pkt_cls.h>
 11 
 12 #define TCA_TUNNEL_KEY_ACT_SET      1
 13 #define TCA_TUNNEL_KEY_ACT_RELEASE  2
 14 
 15 struct tc_tunnel_key {
 16         tc_gen;
 17         int t_action;
 18 };
 19 
 20 enum {
 21         TCA_TUNNEL_KEY_UNSPEC,
 22         TCA_TUNNEL_KEY_TM,
 23         TCA_TUNNEL_KEY_PARMS,
 24         TCA_TUNNEL_KEY_ENC_IPV4_SRC,    /* be32 */
 25         TCA_TUNNEL_KEY_ENC_IPV4_DST,    /* be32 */
 26         TCA_TUNNEL_KEY_ENC_IPV6_SRC,    /* struct in6_addr */
 27         TCA_TUNNEL_KEY_ENC_IPV6_DST,    /* struct in6_addr */
 28         TCA_TUNNEL_KEY_ENC_KEY_ID,      /* be64 */
 29         TCA_TUNNEL_KEY_PAD,
 30         TCA_TUNNEL_KEY_ENC_DST_PORT,    /* be16 */
 31         TCA_TUNNEL_KEY_NO_CSUM,         /* u8 */
 32         TCA_TUNNEL_KEY_ENC_OPTS,        /* Nested TCA_TUNNEL_KEY_ENC_OPTS_
 33                                          * attributes
 34                                          */
 35         TCA_TUNNEL_KEY_ENC_TOS,         /* u8 */
 36         TCA_TUNNEL_KEY_ENC_TTL,         /* u8 */
 37         TCA_TUNNEL_KEY_NO_FRAG,         /* flag */
 38         __TCA_TUNNEL_KEY_MAX,
 39 };
 40 
 41 #define TCA_TUNNEL_KEY_MAX (__TCA_TUNNEL_KEY_MAX - 1)
 42 
 43 enum {
 44         TCA_TUNNEL_KEY_ENC_OPTS_UNSPEC,
 45         TCA_TUNNEL_KEY_ENC_OPTS_GENEVE,         /* Nested
 46                                                  * TCA_TUNNEL_KEY_ENC_OPTS_
 47                                                  * attributes
 48                                                  */
 49         TCA_TUNNEL_KEY_ENC_OPTS_VXLAN,          /* Nested
 50                                                  * TCA_TUNNEL_KEY_ENC_OPTS_
 51                                                  * attributes
 52                                                  */
 53         TCA_TUNNEL_KEY_ENC_OPTS_ERSPAN,         /* Nested
 54                                                  * TCA_TUNNEL_KEY_ENC_OPTS_
 55                                                  * attributes
 56                                                  */
 57         __TCA_TUNNEL_KEY_ENC_OPTS_MAX,
 58 };
 59 
 60 #define TCA_TUNNEL_KEY_ENC_OPTS_MAX (__TCA_TUNNEL_KEY_ENC_OPTS_MAX - 1)
 61 
 62 enum {
 63         TCA_TUNNEL_KEY_ENC_OPT_GENEVE_UNSPEC,
 64         TCA_TUNNEL_KEY_ENC_OPT_GENEVE_CLASS,            /* be16 */
 65         TCA_TUNNEL_KEY_ENC_OPT_GENEVE_TYPE,             /* u8 */
 66         TCA_TUNNEL_KEY_ENC_OPT_GENEVE_DATA,             /* 4 to 128 bytes */
 67 
 68         __TCA_TUNNEL_KEY_ENC_OPT_GENEVE_MAX,
 69 };
 70 
 71 #define TCA_TUNNEL_KEY_ENC_OPT_GENEVE_MAX \
 72         (__TCA_TUNNEL_KEY_ENC_OPT_GENEVE_MAX - 1)
 73 
 74 enum {
 75         TCA_TUNNEL_KEY_ENC_OPT_VXLAN_UNSPEC,
 76         TCA_TUNNEL_KEY_ENC_OPT_VXLAN_GBP,               /* u32 */
 77         __TCA_TUNNEL_KEY_ENC_OPT_VXLAN_MAX,
 78 };
 79 
 80 #define TCA_TUNNEL_KEY_ENC_OPT_VXLAN_MAX \
 81         (__TCA_TUNNEL_KEY_ENC_OPT_VXLAN_MAX - 1)
 82 
 83 enum {
 84         TCA_TUNNEL_KEY_ENC_OPT_ERSPAN_UNSPEC,
 85         TCA_TUNNEL_KEY_ENC_OPT_ERSPAN_VER,              /* u8 */
 86         TCA_TUNNEL_KEY_ENC_OPT_ERSPAN_INDEX,            /* be32 */
 87         TCA_TUNNEL_KEY_ENC_OPT_ERSPAN_DIR,              /* u8 */
 88         TCA_TUNNEL_KEY_ENC_OPT_ERSPAN_HWID,             /* u8 */
 89         __TCA_TUNNEL_KEY_ENC_OPT_ERSPAN_MAX,
 90 };
 91 
 92 #define TCA_TUNNEL_KEY_ENC_OPT_ERSPAN_MAX \
 93         (__TCA_TUNNEL_KEY_ENC_OPT_ERSPAN_MAX - 1)
 94 
 95 #endif
 96 

~ [ source navigation ] ~ [ diff markup ] ~ [ identifier search ] ~

kernel.org | git.kernel.org | LWN.net | Project Home | SVN repository | Mail admin

Linux® is a registered trademark of Linus Torvalds in the United States and other countries.
TOMOYO® is a registered trademark of NTT DATA CORPORATION.

sflogo.php