DPDK  24.11.0-rc1
rte_gre.h
Go to the documentation of this file.
1 /* SPDX-License-Identifier: BSD-3-Clause
2  * Copyright 2016 6WIND S.A.
3  */
4 
5 #ifndef _RTE_GRE_H_
6 #define _RTE_GRE_H_
7 
8 #include <stdint.h>
9 #include <rte_byteorder.h>
10 
25 __extension__
26 struct rte_gre_hdr {
27 #if RTE_BYTE_ORDER == RTE_LITTLE_ENDIAN
28  uint16_t res2:4;
29  uint16_t s:1;
30  uint16_t k:1;
31  uint16_t res1:1;
32  uint16_t c:1;
33  uint16_t ver:3;
34  uint16_t res3:5;
35 #elif RTE_BYTE_ORDER == RTE_BIG_ENDIAN
36  uint16_t c:1;
37  uint16_t res1:1;
38  uint16_t k:1;
39  uint16_t s:1;
40  uint16_t res2:4;
41  uint16_t res3:5;
42  uint16_t ver:3;
43 #endif
45 } __rte_packed;
46 
51  rte_be16_t checksum;
52  rte_be16_t reserved1;
53 } __rte_packed;
54 
59  rte_be32_t key;
60 } __rte_packed;
61 
66  rte_be32_t sequence;
67 } __rte_packed;
68 
69 #endif /* RTE_GRE_H_ */
uint16_t k
Definition: rte_gre.h:30
uint16_t res3
Definition: rte_gre.h:34
uint16_t res2
Definition: rte_gre.h:28
uint32_t rte_be32_t
#define __rte_packed
Definition: rte_common.h:108
uint16_t res1
Definition: rte_gre.h:31
uint16_t ver
Definition: rte_gre.h:33
uint16_t c
Definition: rte_gre.h:32
rte_be16_t proto
Definition: rte_gre.h:44
uint16_t rte_be16_t
uint16_t s
Definition: rte_gre.h:29