cachepc-linux

Fork of AMDESE/linux with modifications for CachePC side-channel attack
git clone https://git.sinitax.com/sinitax/cachepc-linux
Log | Files | Refs | README | LICENSE | sfeed.txt

seg6_local.h (2070B)


      1/*
      2 *  SR-IPv6 implementation
      3 *
      4 *  Author:
      5 *  David Lebrun <david.lebrun@uclouvain.be>
      6 *
      7 *
      8 *  This program is free software; you can redistribute it and/or
      9 *      modify it under the terms of the GNU General Public License
     10 *      as published by the Free Software Foundation; either version
     11 *      2 of the License, or (at your option) any later version.
     12 */
     13
     14#ifndef _UAPI_LINUX_SEG6_LOCAL_H
     15#define _UAPI_LINUX_SEG6_LOCAL_H
     16
     17#include <linux/seg6.h>
     18
     19enum {
     20	SEG6_LOCAL_UNSPEC,
     21	SEG6_LOCAL_ACTION,
     22	SEG6_LOCAL_SRH,
     23	SEG6_LOCAL_TABLE,
     24	SEG6_LOCAL_NH4,
     25	SEG6_LOCAL_NH6,
     26	SEG6_LOCAL_IIF,
     27	SEG6_LOCAL_OIF,
     28	SEG6_LOCAL_BPF,
     29	__SEG6_LOCAL_MAX,
     30};
     31#define SEG6_LOCAL_MAX (__SEG6_LOCAL_MAX - 1)
     32
     33enum {
     34	SEG6_LOCAL_ACTION_UNSPEC	= 0,
     35	/* node segment */
     36	SEG6_LOCAL_ACTION_END		= 1,
     37	/* adjacency segment (IPv6 cross-connect) */
     38	SEG6_LOCAL_ACTION_END_X		= 2,
     39	/* lookup of next seg NH in table */
     40	SEG6_LOCAL_ACTION_END_T		= 3,
     41	/* decap and L2 cross-connect */
     42	SEG6_LOCAL_ACTION_END_DX2	= 4,
     43	/* decap and IPv6 cross-connect */
     44	SEG6_LOCAL_ACTION_END_DX6	= 5,
     45	/* decap and IPv4 cross-connect */
     46	SEG6_LOCAL_ACTION_END_DX4	= 6,
     47	/* decap and lookup of DA in v6 table */
     48	SEG6_LOCAL_ACTION_END_DT6	= 7,
     49	/* decap and lookup of DA in v4 table */
     50	SEG6_LOCAL_ACTION_END_DT4	= 8,
     51	/* binding segment with insertion */
     52	SEG6_LOCAL_ACTION_END_B6	= 9,
     53	/* binding segment with encapsulation */
     54	SEG6_LOCAL_ACTION_END_B6_ENCAP	= 10,
     55	/* binding segment with MPLS encap */
     56	SEG6_LOCAL_ACTION_END_BM	= 11,
     57	/* lookup last seg in table */
     58	SEG6_LOCAL_ACTION_END_S		= 12,
     59	/* forward to SR-unaware VNF with static proxy */
     60	SEG6_LOCAL_ACTION_END_AS	= 13,
     61	/* forward to SR-unaware VNF with masquerading */
     62	SEG6_LOCAL_ACTION_END_AM	= 14,
     63	/* custom BPF action */
     64	SEG6_LOCAL_ACTION_END_BPF	= 15,
     65
     66	__SEG6_LOCAL_ACTION_MAX,
     67};
     68
     69#define SEG6_LOCAL_ACTION_MAX (__SEG6_LOCAL_ACTION_MAX - 1)
     70
     71enum {
     72	SEG6_LOCAL_BPF_PROG_UNSPEC,
     73	SEG6_LOCAL_BPF_PROG,
     74	SEG6_LOCAL_BPF_PROG_NAME,
     75	__SEG6_LOCAL_BPF_PROG_MAX,
     76};
     77
     78#define SEG6_LOCAL_BPF_PROG_MAX (__SEG6_LOCAL_BPF_PROG_MAX - 1)
     79
     80#endif