DPDK  24.03.0
rte_macsec.h
Go to the documentation of this file.
1 /* SPDX-License-Identifier: BSD-3-Clause
2  * Copyright(C) 2022 Marvell.
3  */
4 
5 #ifndef RTE_MACSEC_H
6 #define RTE_MACSEC_H
7 
14 #include <rte_byteorder.h>
15 
16 #ifdef __cplusplus
17 extern "C" {
18 #endif
19 
20 #define RTE_MACSEC_TCI_VER_MASK 0x80
21 #define RTE_MACSEC_TCI_ES 0x40
22 #define RTE_MACSEC_TCI_SC 0x20
23 #define RTE_MACSEC_TCI_SCB 0x10
24 #define RTE_MACSEC_TCI_E 0x08
25 #define RTE_MACSEC_TCI_C 0x04
26 #define RTE_MACSEC_AN_MASK 0x03
31 __extension__
37  uint8_t tci_an;
38 #if RTE_BYTE_ORDER == RTE_LITTLE_ENDIAN
39  uint8_t short_length:6;
40  uint8_t unused:2;
41 #elif RTE_BYTE_ORDER == RTE_BIG_ENDIAN
42  uint8_t unused:2;
43  uint8_t short_length:6;
44 #endif
46 } __rte_packed;
47 
49 #define RTE_MACSEC_SCI_LEN 8
50 
56  uint8_t sci[RTE_MACSEC_SCI_LEN];
57 } __rte_packed;
58 
59 #ifdef __cplusplus
60 }
61 #endif
62 
63 #endif /* RTE_MACSEC_H */
rte_be32_t packet_number
Definition: rte_macsec.h:45
uint8_t tci_an
Definition: rte_macsec.h:37
uint32_t rte_be32_t
#define __rte_packed
Definition: rte_common.h:102
uint8_t short_length
Definition: rte_macsec.h:39
#define RTE_MACSEC_SCI_LEN
Definition: rte_macsec.h:49