diff --git a/src/libsodium/crypto_onetimeauth/poly1305/53/auth_poly1305_53.c b/src/libsodium/crypto_onetimeauth/poly1305/53/auth_poly1305_53.c index fccfc9d0..eebbc71b 100644 --- a/src/libsodium/crypto_onetimeauth/poly1305/53/auth_poly1305_53.c +++ b/src/libsodium/crypto_onetimeauth/poly1305/53/auth_poly1305_53.c @@ -10,6 +10,7 @@ Public domain. #include "api.h" #include "crypto_onetimeauth_poly1305_53.h" +#include "utils.h" #pragma STDC FENV_ACCESS ON @@ -1641,7 +1642,7 @@ crypto_onetimeauth_poly1305_implementation_name(void) struct crypto_onetimeauth_poly1305_implementation crypto_onetimeauth_poly1305_53_implementation = { - .implementation_name = crypto_onetimeauth_poly1305_implementation_name, - .onetimeauth = crypto_onetimeauth, - .onetimeauth_verify = crypto_onetimeauth_verify + _SODIUM_C99(.implementation_name =) crypto_onetimeauth_poly1305_implementation_name, + _SODIUM_C99(.onetimeauth =) crypto_onetimeauth, + _SODIUM_C99(.onetimeauth_verify =) crypto_onetimeauth_verify }; diff --git a/src/libsodium/crypto_onetimeauth/poly1305/ref/auth_poly1305_ref.c b/src/libsodium/crypto_onetimeauth/poly1305/ref/auth_poly1305_ref.c index 43aa811e..9c4219eb 100644 --- a/src/libsodium/crypto_onetimeauth/poly1305/ref/auth_poly1305_ref.c +++ b/src/libsodium/crypto_onetimeauth/poly1305/ref/auth_poly1305_ref.c @@ -6,6 +6,7 @@ Public domain. #include "api.h" #include "crypto_onetimeauth_poly1305_ref.h" +#include "utils.h" static void add(unsigned int h[17],const unsigned int c[17]) { @@ -112,7 +113,7 @@ crypto_onetimeauth_poly1305_implementation_name(void) struct crypto_onetimeauth_poly1305_implementation crypto_onetimeauth_poly1305_ref_implementation = { - .implementation_name = crypto_onetimeauth_poly1305_implementation_name, - .onetimeauth = crypto_onetimeauth, - .onetimeauth_verify = crypto_onetimeauth_verify + _SODIUM_C99(.implementation_name =) crypto_onetimeauth_poly1305_implementation_name, + _SODIUM_C99(.onetimeauth =) crypto_onetimeauth, + _SODIUM_C99(.onetimeauth_verify =) crypto_onetimeauth_verify }; diff --git a/src/libsodium/include/sodium/utils.h b/src/libsodium/include/sodium/utils.h index 149a5cdf..7e3778dc 100644 --- a/src/libsodium/include/sodium/utils.h +++ b/src/libsodium/include/sodium/utils.h @@ -10,6 +10,12 @@ extern "C" { #endif +#ifndef __cplusplus +# define _SODIUM_C99(X) (X) +#else +# define _SODIUM_C99(X) +#endif + unsigned char *_sodium_alignedcalloc(unsigned char ** const unaligned_p, const size_t len);