[EXTERNAL] [PATCH] cryptodev: allow use of global variables from C++

Akhil Goyal gakhil at marvell.com
Wed Jan 8 10:55:44 CET 2025


> Avoid C++ name mangling of the two global variables being exported
> from <rte_crypto_asym.h>.
> 
> Suggested-by: David Marchand <david.marchand at redhat.com>
> Signed-off-by: Mattias Rönnblom <mattias.ronnblom at ericsson.com>
> ---
>  lib/cryptodev/rte_crypto_asym.h | 8 ++++++++
>  1 file changed, 8 insertions(+)
> 
> diff --git a/lib/cryptodev/rte_crypto_asym.h b/lib/cryptodev/rte_crypto_asym.h
> index aeb46e688e..9787b710e7 100644
> --- a/lib/cryptodev/rte_crypto_asym.h
> +++ b/lib/cryptodev/rte_crypto_asym.h
> @@ -25,6 +25,10 @@
> 
>  struct rte_cryptodev_asym_session;
> 
> +#ifdef __cplusplus
> +extern "C" {
> +#endif
> +
>  /** asym key exchange operation type name strings */
>  extern const char *
>  rte_crypto_asym_ke_strings[];
> @@ -33,6 +37,10 @@ rte_crypto_asym_ke_strings[];
>  extern const char *
>  rte_crypto_asym_op_strings[];
> 
> +#ifdef __cplusplus
> +}
> +#endif
> +
>  #define RTE_CRYPTO_ASYM_FLAG_PUB_KEY_NO_PADDING
> 	RTE_BIT32(0)

It seems only these two variables are causing problem,
but shouldn't it be better to have this change for the complete file
like rte_crypto_sym.h.
This will avoid issues with any future additions.


More information about the dev mailing list