diff options
author | Daniel Baumann <daniel.baumann@progress-linux.org> | 2024-04-07 18:45:59 +0000 |
---|---|---|
committer | Daniel Baumann <daniel.baumann@progress-linux.org> | 2024-04-07 18:45:59 +0000 |
commit | 19fcec84d8d7d21e796c7624e521b60d28ee21ed (patch) | |
tree | 42d26aa27d1e3f7c0b8bd3fd14e7d7082f5008dc /src/spdk/dpdk/lib/librte_net/rte_gtp.h | |
parent | Initial commit. (diff) | |
download | ceph-19fcec84d8d7d21e796c7624e521b60d28ee21ed.tar.xz ceph-19fcec84d8d7d21e796c7624e521b60d28ee21ed.zip |
Adding upstream version 16.2.11+ds.upstream/16.2.11+dsupstream
Signed-off-by: Daniel Baumann <daniel.baumann@progress-linux.org>
Diffstat (limited to 'src/spdk/dpdk/lib/librte_net/rte_gtp.h')
-rw-r--r-- | src/spdk/dpdk/lib/librte_net/rte_gtp.h | 51 |
1 files changed, 51 insertions, 0 deletions
diff --git a/src/spdk/dpdk/lib/librte_net/rte_gtp.h b/src/spdk/dpdk/lib/librte_net/rte_gtp.h new file mode 100644 index 000000000..104384cc5 --- /dev/null +++ b/src/spdk/dpdk/lib/librte_net/rte_gtp.h @@ -0,0 +1,51 @@ +/* SPDX-License-Identifier: BSD-3-Clause + * Copyright(c) 1982, 1986, 1990, 1993 + * The Regents of the University of California. + * Copyright(c) 2010-2014 Intel Corporation. + * All rights reserved. + */ + +#ifndef _RTE_GTP_H_ +#define _RTE_GTP_H_ + +/** + * @file + * + * GTP-related defines + */ + +#include <stdint.h> +#include <rte_byteorder.h> + +#ifdef __cplusplus +extern "C" { +#endif + +/** + * Simplified GTP protocol header. + * Contains 8-bit header info, 8-bit message type, + * 16-bit payload length after mandatory header, 32-bit TEID. + * No optional fields and next extension header. + */ +struct rte_gtp_hdr { + uint8_t gtp_hdr_info; /**< GTP header info */ + uint8_t msg_type; /**< GTP message type */ + uint16_t plen; /**< Total payload length */ + uint32_t teid; /**< Tunnel endpoint ID */ +} __rte_packed; + +/** GTP header length */ +#define RTE_ETHER_GTP_HLEN \ + (sizeof(struct rte_udp_hdr) + sizeof(struct rte_gtp_hdr)) +/* GTP next protocal type */ +#define RTE_GTP_TYPE_IPV4 0x40 /**< GTP next protocal type IPv4 */ +#define RTE_GTP_TYPE_IPV6 0x60 /**< GTP next protocal type IPv6 */ +/* GTP destination port number */ +#define RTE_GTPC_UDP_PORT 2123 /**< GTP-C UDP destination port */ +#define RTE_GTPU_UDP_PORT 2152 /**< GTP-U UDP destination port */ + +#ifdef __cplusplus +} +#endif + +#endif /* RTE_GTP_H_ */ |