#ifndef _GTP_H_
#define _GTP_H_
#include <linux/netdevice.h>
#include <linux/types.h>
#include <net/rtnetlink.h>
#define GTP0_PORT …
#define GTP1U_PORT …
#define GTP_ECHO_REQ …
#define GTP_ECHO_RSP …
#define GTP_TPDU …
#define GTPIE_RECOVERY …
struct gtp0_header { … } __attribute__ ((packed));
struct gtp1_header { … } __attribute__ ((packed));
struct gtp1_header_long { … } __packed;
struct gtp_ie { … } __packed;
struct gtp0_packet { … } __packed;
struct gtp1u_packet { … } __packed;
struct gtp_pdu_session_info { … };
static inline bool netif_is_gtp(const struct net_device *dev)
{ … }
#define GTP1_F_NPDU …
#define GTP1_F_SEQ …
#define GTP1_F_EXTHDR …
#define GTP1_F_MASK …
struct gtp_ext_hdr { … };
#endif