DPDK
22.11.7
lib
net
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__
32
struct
rte_macsec_hdr
{
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
45
rte_be32_t
packet_number
;
46
}
__rte_packed
;
47
49
#define RTE_MACSEC_SCI_LEN 8
50
55
struct
rte_macsec_sci_hdr
{
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_macsec_hdr::short_length
uint8_t short_length
Definition:
rte_macsec.h:39
rte_macsec_sci_hdr
Definition:
rte_macsec.h:55
rte_be32_t
uint32_t rte_be32_t
Definition:
rte_byteorder.h:111
rte_macsec_hdr::packet_number
rte_be32_t packet_number
Definition:
rte_macsec.h:45
__rte_packed
#define __rte_packed
Definition:
rte_common.h:83
rte_macsec_sci_hdr::sci
uint8_t sci[RTE_MACSEC_SCI_LEN]
Definition:
rte_macsec.h:56
rte_macsec_hdr
Definition:
rte_macsec.h:32
RTE_MACSEC_SCI_LEN
#define RTE_MACSEC_SCI_LEN
Definition:
rte_macsec.h:49
rte_macsec_hdr::tci_an
uint8_t tci_an
Definition:
rte_macsec.h:37
rte_byteorder.h
Generated by
1.8.20