lwtunnel.h 1.2 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869
  1. #ifndef _LWTUNNEL_H_
  2. #define _LWTUNNEL_H_
  3. #include <linux/types.h>
  4. enum lwtunnel_encap_types {
  5. LWTUNNEL_ENCAP_NONE,
  6. LWTUNNEL_ENCAP_MPLS,
  7. LWTUNNEL_ENCAP_IP,
  8. LWTUNNEL_ENCAP_ILA,
  9. LWTUNNEL_ENCAP_IP6,
  10. LWTUNNEL_ENCAP_SEG6,
  11. LWTUNNEL_ENCAP_BPF,
  12. __LWTUNNEL_ENCAP_MAX,
  13. };
  14. #define LWTUNNEL_ENCAP_MAX (__LWTUNNEL_ENCAP_MAX - 1)
  15. enum lwtunnel_ip_t {
  16. LWTUNNEL_IP_UNSPEC,
  17. LWTUNNEL_IP_ID,
  18. LWTUNNEL_IP_DST,
  19. LWTUNNEL_IP_SRC,
  20. LWTUNNEL_IP_TTL,
  21. LWTUNNEL_IP_TOS,
  22. LWTUNNEL_IP_FLAGS,
  23. LWTUNNEL_IP_PAD,
  24. __LWTUNNEL_IP_MAX,
  25. };
  26. #define LWTUNNEL_IP_MAX (__LWTUNNEL_IP_MAX - 1)
  27. enum lwtunnel_ip6_t {
  28. LWTUNNEL_IP6_UNSPEC,
  29. LWTUNNEL_IP6_ID,
  30. LWTUNNEL_IP6_DST,
  31. LWTUNNEL_IP6_SRC,
  32. LWTUNNEL_IP6_HOPLIMIT,
  33. LWTUNNEL_IP6_TC,
  34. LWTUNNEL_IP6_FLAGS,
  35. LWTUNNEL_IP6_PAD,
  36. __LWTUNNEL_IP6_MAX,
  37. };
  38. #define LWTUNNEL_IP6_MAX (__LWTUNNEL_IP6_MAX - 1)
  39. enum {
  40. LWT_BPF_PROG_UNSPEC,
  41. LWT_BPF_PROG_FD,
  42. LWT_BPF_PROG_NAME,
  43. __LWT_BPF_PROG_MAX,
  44. };
  45. #define LWT_BPF_PROG_MAX (__LWT_BPF_PROG_MAX - 1)
  46. enum {
  47. LWT_BPF_UNSPEC,
  48. LWT_BPF_IN,
  49. LWT_BPF_OUT,
  50. LWT_BPF_XMIT,
  51. LWT_BPF_XMIT_HEADROOM,
  52. __LWT_BPF_MAX,
  53. };
  54. #define LWT_BPF_MAX (__LWT_BPF_MAX - 1)
  55. #define LWT_BPF_MAX_HEADROOM 256
  56. #endif /* _LWTUNNEL_H_ */