[PATCH v3 1/8] ethdev: add IPv6 routing extension header definition
Stephen Hemminger
stephen at networkplumber.org
Mon Jan 30 17:47:46 CET 2023
On Mon, 30 Jan 2023 05:59:33 +0200
Rongwei Liu <rongweil at nvidia.com> wrote:
>
> +/**
> + * IPv6 Routing Extension Header
> + */
> +struct rte_ipv6_routing_ext {
> + uint8_t next_hdr; /**< Protocol, next header. */
> + uint8_t hdr_len; /**< Header length. */
> + uint8_t type; /**< Extension header type. */
> + uint8_t segments_left; /**< Valid segments number. */
> + __extension__
> + union {
> + rte_be32_t flags;
> + struct {
> + uint8_t last_entry; /**< The last_entry field of SRH */
> + uint8_t flag; /**< Packet flag. */
> + rte_be16_t tag; /**< Packet tag. */
> + };
> + };
> + __extension__
> + rte_be32_t segments[0]; /**< Each hop IPv6 address. */
Use flex array rather than zero size.
Zero size arrays cause warnings with later compilers.
More information about the dev
mailing list