FD.io VPP  v20.01-48-g3e0dafb74
Vector Packet Processing
mobile.h File Reference
+ Include dependency graph for mobile.h:
+ This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Data Structures

struct  gtpu_exthdr_t
 
struct  gtpu_header_t
 
    Bits

Octets 8 7 6 5 4 3 2 1 1 Version PT (*) E S PN 2 Message Type 3 Length (1st Octet) 4 Length (2nd Octet) 5 Tunnel Endpoint Identifier (1st Octet) 6 Tunnel Endpoint Identifier (2nd Octet) 7 Tunnel Endpoint Identifier (3rd Octet) 8 Tunnel Endpoint Identifier (4th Octet) 9 Sequence Number (1st Octet)1) 4) 10 Sequence Number (2nd Octet)1) 4) 11 N-PDU Number2) 4) 12 Next Extension Header Type3) 4) More...

 
struct  gtpu_paging_policy_t
 
struct  gtpu_pdu_session_t
 
struct  ip4_gtpu_header_t
 
struct  ip6_gtpu_header_t
 
struct  srv6_end_gtp6_param_s
 
struct  srv6_end_gtp4_param_s
 
struct  srv6_end_main_v4_s
 
struct  srv6_t_main_v4_decap_s
 
struct  srv6_end_main_v6_s
 
struct  srv6_end_main_v6_decap_s
 
struct  srv6_end_main_v6_decap_di_s
 

Macros

#define SRV6_GTP_UDP_DST_PORT   2152
 
#define SRV6_NHTYPE_NONE   0
 
#define SRV6_NHTYPE_IPV4   1
 
#define SRV6_NHTYPE_IPV6   2
 
#define SRV6_NHTYPE_NON_IP   3
 
#define IP_PROTOCOL_NONE   59
 
#define SRV6_GTP6_UNKNOW   0
 
#define SRV6_GTP6_DT4   1
 
#define SRV6_GTP6_DT6   2
 
#define SRV6_GTP6_DT46   3
 
#define BITALIGN2(A, B)   B; A
 
#define BITALIGN3(A, B, C)   C; B; A
 
#define GTPU_EXTHDR_FLAG   0x04
 
#define GTPU_SEQ_FLAG   0x02
 
#define GTPU_EXTHDR_PDU_SESSION   0x85
 
#define SRH_TAG_ECHO_REPLY   0x0008
 
#define SRH_TAG_ECHO_REQUEST   0x0004
 
#define SRH_TAG_ERROR_INDICATION   0x0002
 
#define SRH_TAG_END_MARKER   0x0001
 
#define GTPU_TYPE_ECHO_REQUEST   1
 
#define GTPU_TYPE_ECHO_REPLY   2
 
#define GTPU_TYPE_ERROR_INDICATION   26
 
#define GTPU_TYPE_END_MARKER   254
 
#define GTPU_TYPE_GTPU   255
 
#define GTPU_PDU_SESSION_P_BIT_MASK   0x80
 
#define GTPU_PDU_SESSION_R_BIT_MASK   0x40
 
#define GTPU_PDU_SESSION_QFI_MASK   0x3f
 
#define SRV6_PDU_SESSION_U_BIT_MASK   0x01
 
#define SRV6_PDU_SESSION_R_BIT_MASK   0x02
 
#define SRV6_PDU_SESSION_QFI_MASK   0xfC
 
#define GTPU_V1_VER   (1<<5)
 
#define GTPU_PT_GTP   (1<<4)
 

Typedefs

typedef struct srv6_end_gtp6_param_s srv6_end_gtp6_param_t
 
typedef struct srv6_end_gtp4_param_s srv6_end_gtp4_param_t
 
typedef struct srv6_end_main_v4_s srv6_end_main_v4_t
 
typedef struct srv6_t_main_v4_decap_s srv6_t_main_v4_decap_t
 
typedef struct srv6_end_main_v6_s srv6_end_main_v6_t
 
typedef struct srv6_end_main_v6_decap_s srv6_end_main_v6_decap_t
 
typedef struct srv6_end_main_v6_decap_di_s srv6_end_main_v6_decap_di_t
 

Variables

srv6_end_main_v4_t srv6_end_main_v4
 
srv6_t_main_v4_decap_t srv6_t_main_v4_decap
 
vlib_node_registration_t srv6_end_m_gtp4_e
 (constructor) VLIB_REGISTER_NODE (srv6_end_m_gtp4_e) More...
 
srv6_end_main_v6_t srv6_end_main_v6
 
vlib_node_registration_t srv6_end_m_gtp6_e
 (constructor) VLIB_REGISTER_NODE (srv6_end_m_gtp6_e) More...
 
srv6_end_main_v6_decap_t srv6_end_main_v6_decap
 
vlib_node_registration_t srv6_end_m_gtp6_d
 (constructor) VLIB_REGISTER_NODE (srv6_end_m_gtp6_d) More...
 
srv6_end_main_v6_decap_di_t srv6_end_main_v6_decap_di
 
vlib_node_registration_t srv6_end_m_gtp6_d_di
 (constructor) VLIB_REGISTER_NODE (srv6_end_m_gtp6_d_di) More...
 

Macro Definition Documentation

◆ BITALIGN2

#define BITALIGN2 (   A,
 
)    B; A

Definition at line 49 of file mobile.h.

◆ BITALIGN3

#define BITALIGN3 (   A,
  B,
 
)    C; B; A

Definition at line 50 of file mobile.h.

◆ GTPU_EXTHDR_FLAG

#define GTPU_EXTHDR_FLAG   0x04

Definition at line 53 of file mobile.h.

◆ GTPU_EXTHDR_PDU_SESSION

#define GTPU_EXTHDR_PDU_SESSION   0x85

Definition at line 55 of file mobile.h.

◆ GTPU_PDU_SESSION_P_BIT_MASK

#define GTPU_PDU_SESSION_P_BIT_MASK   0x80

Definition at line 118 of file mobile.h.

◆ GTPU_PDU_SESSION_QFI_MASK

#define GTPU_PDU_SESSION_QFI_MASK   0x3f

Definition at line 120 of file mobile.h.

◆ GTPU_PDU_SESSION_R_BIT_MASK

#define GTPU_PDU_SESSION_R_BIT_MASK   0x40

Definition at line 119 of file mobile.h.

◆ GTPU_PT_GTP

#define GTPU_PT_GTP   (1<<4)

Definition at line 146 of file mobile.h.

◆ GTPU_SEQ_FLAG

#define GTPU_SEQ_FLAG   0x02

Definition at line 54 of file mobile.h.

◆ GTPU_TYPE_ECHO_REPLY

#define GTPU_TYPE_ECHO_REPLY   2

Definition at line 83 of file mobile.h.

◆ GTPU_TYPE_ECHO_REQUEST

#define GTPU_TYPE_ECHO_REQUEST   1

Definition at line 82 of file mobile.h.

◆ GTPU_TYPE_END_MARKER

#define GTPU_TYPE_END_MARKER   254

Definition at line 85 of file mobile.h.

◆ GTPU_TYPE_ERROR_INDICATION

#define GTPU_TYPE_ERROR_INDICATION   26

Definition at line 84 of file mobile.h.

◆ GTPU_TYPE_GTPU

#define GTPU_TYPE_GTPU   255

Definition at line 86 of file mobile.h.

◆ GTPU_V1_VER

#define GTPU_V1_VER   (1<<5)

Definition at line 144 of file mobile.h.

◆ IP_PROTOCOL_NONE

#define IP_PROTOCOL_NONE   59

Definition at line 37 of file mobile.h.

◆ SRH_TAG_ECHO_REPLY

#define SRH_TAG_ECHO_REPLY   0x0008

Definition at line 57 of file mobile.h.

◆ SRH_TAG_ECHO_REQUEST

#define SRH_TAG_ECHO_REQUEST   0x0004

Definition at line 58 of file mobile.h.

◆ SRH_TAG_END_MARKER

#define SRH_TAG_END_MARKER   0x0001

Definition at line 60 of file mobile.h.

◆ SRH_TAG_ERROR_INDICATION

#define SRH_TAG_ERROR_INDICATION   0x0002

Definition at line 59 of file mobile.h.

◆ SRV6_GTP6_DT4

#define SRV6_GTP6_DT4   1

Definition at line 41 of file mobile.h.

◆ SRV6_GTP6_DT46

#define SRV6_GTP6_DT46   3

Definition at line 43 of file mobile.h.

◆ SRV6_GTP6_DT6

#define SRV6_GTP6_DT6   2

Definition at line 42 of file mobile.h.

◆ SRV6_GTP6_UNKNOW

#define SRV6_GTP6_UNKNOW   0

Definition at line 40 of file mobile.h.

◆ SRV6_GTP_UDP_DST_PORT

#define SRV6_GTP_UDP_DST_PORT   2152

Definition at line 29 of file mobile.h.

◆ SRV6_NHTYPE_IPV4

#define SRV6_NHTYPE_IPV4   1

Definition at line 32 of file mobile.h.

◆ SRV6_NHTYPE_IPV6

#define SRV6_NHTYPE_IPV6   2

Definition at line 33 of file mobile.h.

◆ SRV6_NHTYPE_NON_IP

#define SRV6_NHTYPE_NON_IP   3

Definition at line 34 of file mobile.h.

◆ SRV6_NHTYPE_NONE

#define SRV6_NHTYPE_NONE   0

Definition at line 31 of file mobile.h.

◆ SRV6_PDU_SESSION_QFI_MASK

#define SRV6_PDU_SESSION_QFI_MASK   0xfC

Definition at line 124 of file mobile.h.

◆ SRV6_PDU_SESSION_R_BIT_MASK

#define SRV6_PDU_SESSION_R_BIT_MASK   0x02

Definition at line 123 of file mobile.h.

◆ SRV6_PDU_SESSION_U_BIT_MASK

#define SRV6_PDU_SESSION_U_BIT_MASK   0x01

Definition at line 122 of file mobile.h.

Typedef Documentation

◆ srv6_end_gtp4_param_t

◆ srv6_end_gtp6_param_t

◆ srv6_end_main_v4_t

◆ srv6_end_main_v6_decap_di_t

◆ srv6_end_main_v6_decap_t

◆ srv6_end_main_v6_t

◆ srv6_t_main_v4_decap_t

Variable Documentation

◆ srv6_end_m_gtp4_e

vlib_node_registration_t srv6_end_m_gtp4_e

(constructor) VLIB_REGISTER_NODE (srv6_end_m_gtp4_e)

Definition at line 1051 of file node.c.

◆ srv6_end_m_gtp6_d

vlib_node_registration_t srv6_end_m_gtp6_d

(constructor) VLIB_REGISTER_NODE (srv6_end_m_gtp6_d)

Definition at line 2222 of file node.c.

◆ srv6_end_m_gtp6_d_di

vlib_node_registration_t srv6_end_m_gtp6_d_di

(constructor) VLIB_REGISTER_NODE (srv6_end_m_gtp6_d_di)

Definition at line 2234 of file node.c.

◆ srv6_end_m_gtp6_e

vlib_node_registration_t srv6_end_m_gtp6_e

(constructor) VLIB_REGISTER_NODE (srv6_end_m_gtp6_e)

Definition at line 2210 of file node.c.

◆ srv6_end_main_v4

srv6_end_main_v4_t srv6_end_main_v4

Definition at line 24 of file gtp4_e.c.

◆ srv6_end_main_v6

srv6_end_main_v6_t srv6_end_main_v6

Definition at line 24 of file gtp6_e.c.

◆ srv6_end_main_v6_decap

srv6_end_main_v6_decap_t srv6_end_main_v6_decap

Definition at line 24 of file gtp6_d.c.

◆ srv6_end_main_v6_decap_di

srv6_end_main_v6_decap_di_t srv6_end_main_v6_decap_di

Definition at line 24 of file gtp6_d_di.c.

◆ srv6_t_main_v4_decap

srv6_t_main_v4_decap_t srv6_t_main_v4_decap

Definition at line 24 of file gtp4_d.c.