[PATCH main v2 1/2] macsec: Sync macsec headers with linux 6.2 headers

Info Skymem info at skymem.com
Tue Feb 21 05:13:18 PST 2023


Hi,
thank you for your information.

On our website you can find email addresses of companies and people.
https://www.skymem.info

In short, it’s like Google for emails.

Best regards,
Robert,
Skymem team

On Wed, Feb 15, 2023 at 9:14 AM Emeel Hakim <ehakim at nvidia.com> wrote:
>
> This mainly adds offload related structs and
> extended packet number (EPN) feature headers.
>
> Signed-off-by: Emeel Hakim <ehakim at nvidia.com>
> ---
> V1 -> V2: Add macsec_offload struct to if_link.h and change commit title
>               from macsec: Sync if_macsec.h with linux 6.2 headers
>               to macsec: Sync macsec headers with linux 6.2
>
>  include/linux-private/linux/if_link.h   |  8 ++++++++
>  include/linux-private/linux/if_macsec.h | 27 ++++++++++++++++++++-----
>  2 files changed, 30 insertions(+), 5 deletions(-)
>
> diff --git a/include/linux-private/linux/if_link.h b/include/linux-private/linux/if_link.h
> index 47ccf7f..6e459ab 100644
> --- a/include/linux-private/linux/if_link.h
> +++ b/include/linux-private/linux/if_link.h
> @@ -479,6 +479,14 @@ enum macsec_validation_type {
>         MACSEC_VALIDATE_MAX = __MACSEC_VALIDATE_END - 1,
>  };
>
> +enum macsec_offload {
> +       MACSEC_OFFLOAD_OFF = 0,
> +       MACSEC_OFFLOAD_PHY = 1,
> +       MACSEC_OFFLOAD_MAC = 2,
> +       __MACSEC_OFFLOAD_END,
> +       MACSEC_OFFLOAD_MAX = __MACSEC_OFFLOAD_END - 1,
> +};
> +
>  /* IPVLAN section */
>  enum {
>         IFLA_IPVLAN_UNSPEC,
> diff --git a/include/linux-private/linux/if_macsec.h b/include/linux-private/linux/if_macsec.h
> index 7743993..d5b6d1f 100644
> --- a/include/linux-private/linux/if_macsec.h
> +++ b/include/linux-private/linux/if_macsec.h
> @@ -10,8 +10,8 @@
>   * (at your option) any later version.
>   */
>
> -#ifndef _MACSEC_H
> -#define _MACSEC_H
> +#ifndef _UAPI_MACSEC_H
> +#define _UAPI_MACSEC_H
>
>  #include <linux/types.h>
>
> @@ -22,9 +22,13 @@
>
>  #define MACSEC_KEYID_LEN 16
>
> -/* cipher IDs as per IEEE802.1AEbn-2011 */
> +#define MACSEC_SALT_LEN 12
> +
> +/* cipher IDs as per IEEE802.1AE-2018 (Table 14-1) */
>  #define MACSEC_CIPHER_ID_GCM_AES_128 0x0080C20001000001ULL
>  #define MACSEC_CIPHER_ID_GCM_AES_256 0x0080C20001000002ULL
> +#define MACSEC_CIPHER_ID_GCM_AES_XPN_128 0x0080C20001000003ULL
> +#define MACSEC_CIPHER_ID_GCM_AES_XPN_256 0x0080C20001000004ULL
>
>  /* deprecated cipher ID for GCM-AES-128 */
>  #define MACSEC_DEFAULT_CIPHER_ID     0x0080020001000001ULL
> @@ -45,6 +49,7 @@ enum macsec_attrs {
>         MACSEC_ATTR_RXSC_LIST,   /* dump, nested, macsec_rxsc_attrs for each RXSC */
>         MACSEC_ATTR_TXSC_STATS,  /* dump, nested, macsec_txsc_stats_attr */
>         MACSEC_ATTR_SECY_STATS,  /* dump, nested, macsec_secy_stats_attr */
> +       MACSEC_ATTR_OFFLOAD,     /* config, nested, macsec_offload_attrs */
>         __MACSEC_ATTR_END,
>         NUM_MACSEC_ATTR = __MACSEC_ATTR_END,
>         MACSEC_ATTR_MAX = __MACSEC_ATTR_END - 1,
> @@ -87,16 +92,27 @@ enum macsec_sa_attrs {
>         MACSEC_SA_ATTR_UNSPEC,
>         MACSEC_SA_ATTR_AN,     /* config/dump, u8 0..3 */
>         MACSEC_SA_ATTR_ACTIVE, /* config/dump, u8 0..1 */
> -       MACSEC_SA_ATTR_PN,     /* config/dump, u32 */
> +       MACSEC_SA_ATTR_PN,     /* config/dump, u32/u64 (u64 if XPN) */
>         MACSEC_SA_ATTR_KEY,    /* config, data */
>         MACSEC_SA_ATTR_KEYID,  /* config/dump, 128-bit */
>         MACSEC_SA_ATTR_STATS,  /* dump, nested, macsec_sa_stats_attr */
>         MACSEC_SA_ATTR_PAD,
> +       MACSEC_SA_ATTR_SSCI,   /* config/dump, u32 - XPN only */
> +       MACSEC_SA_ATTR_SALT,   /* config, 96-bit - XPN only */
>         __MACSEC_SA_ATTR_END,
>         NUM_MACSEC_SA_ATTR = __MACSEC_SA_ATTR_END,
>         MACSEC_SA_ATTR_MAX = __MACSEC_SA_ATTR_END - 1,
>  };
>
> +enum macsec_offload_attrs {
> +       MACSEC_OFFLOAD_ATTR_UNSPEC,
> +       MACSEC_OFFLOAD_ATTR_TYPE, /* config/dump, u8 0..2 */
> +       MACSEC_OFFLOAD_ATTR_PAD,
> +       __MACSEC_OFFLOAD_ATTR_END,
> +       NUM_MACSEC_OFFLOAD_ATTR = __MACSEC_OFFLOAD_ATTR_END,
> +       MACSEC_OFFLOAD_ATTR_MAX = __MACSEC_OFFLOAD_ATTR_END - 1,
> +};
> +
>  enum macsec_nl_commands {
>         MACSEC_CMD_GET_TXSC,
>         MACSEC_CMD_ADD_RXSC,
> @@ -108,6 +124,7 @@ enum macsec_nl_commands {
>         MACSEC_CMD_ADD_RXSA,
>         MACSEC_CMD_DEL_RXSA,
>         MACSEC_CMD_UPD_RXSA,
> +       MACSEC_CMD_UPD_OFFLOAD,
>  };
>
>  /* u64 per-RXSC stats */
> @@ -174,4 +191,4 @@ enum macsec_secy_stats_attr {
>         MACSEC_SECY_STATS_ATTR_MAX = __MACSEC_SECY_STATS_ATTR_END - 1,
>  };
>
> -#endif /* _MACSEC_H */
> +#endif /* _UAPI_MACSEC_H */
> --
> 2.21.3
>
>
> _______________________________________________
> libnl mailing list
> libnl at lists.infradead.org
> http://lists.infradead.org/mailman/listinfo/libnl



More information about the libnl mailing list