diff --git a/sys/conf/files b/sys/conf/files index 41e37007c66b..9bb3b2a62565 100644 --- a/sys/conf/files +++ b/sys/conf/files @@ -4824,6 +4824,23 @@ crypto/libsodium/randombytes.c optional crypto \ compile-with "${NORMAL_C} -I$S/contrib/libsodium/src/libsodium/include -I$S/crypto/libsodium" crypto/libsodium/utils.c optional crypto \ compile-with "${NORMAL_C} -I$S/contrib/libsodium/src/libsodium/include -I$S/crypto/libsodium" +contrib/libsodium/src/libsodium/crypto_core/hchacha20/core_hchacha20.c \ + optional crypto \ + compile-with "${NORMAL_C} -I$S/contrib/libsodium/src/libsodium/include/sodium -I$S/crypto/libsodium" +contrib/libsodium/src/libsodium/crypto_stream/chacha20/stream_chacha20.c \ + optional crypto \ + compile-with "${NORMAL_C} -I$S/contrib/libsodium/src/libsodium/include/sodium -I$S/crypto/libsodium" +contrib/libsodium/src/libsodium/crypto_stream/chacha20/ref/chacha20_ref.c \ + optional crypto \ + compile-with "${NORMAL_C} -I$S/contrib/libsodium/src/libsodium/include/sodium -I$S/crypto/libsodium" +contrib/libsodium/src/libsodium/crypto_aead/chacha20poly1305/sodium/aead_chacha20poly1305.c \ + optional crypto \ + compile-with "${NORMAL_C} -I$S/contrib/libsodium/src/libsodium/include/sodium -I$S/crypto/libsodium" +contrib/libsodium/src/libsodium/crypto_aead/xchacha20poly1305/sodium/aead_xchacha20poly1305.c \ + optional crypto \ + compile-with "${NORMAL_C} -I$S/contrib/libsodium/src/libsodium/include/sodium -I$S/crypto/libsodium" + + opencrypto/cbc_mac.c optional crypto opencrypto/xform_cbc_mac.c optional crypto rpc/auth_none.c optional krpc | nfslockd | nfscl | nfsd diff --git a/sys/contrib/libsodium/src/libsodium/include/sodium/core.h b/sys/contrib/libsodium/src/libsodium/include/sodium/core.h index dd088d2cae22..02fb719fbcc8 100644 --- a/sys/contrib/libsodium/src/libsodium/include/sodium/core.h +++ b/sys/contrib/libsodium/src/libsodium/include/sodium/core.h @@ -16,11 +16,11 @@ int sodium_init(void) SODIUM_EXPORT int sodium_set_misuse_handler(void (*handler)(void)); - +#ifndef _KERNEL SODIUM_EXPORT void sodium_misuse(void) __attribute__ ((noreturn)); - +#endif #ifdef __cplusplus } #endif diff --git a/sys/contrib/libsodium/src/libsodium/include/sodium/export.h b/sys/contrib/libsodium/src/libsodium/include/sodium/export.h index a0074fc9cbb0..c1b4e2beea29 100644 --- a/sys/contrib/libsodium/src/libsodium/include/sodium/export.h +++ b/sys/contrib/libsodium/src/libsodium/include/sodium/export.h @@ -54,4 +54,14 @@ #define SODIUM_MIN(A, B) ((A) < (B) ? (A) : (B)) #define SODIUM_SIZE_MAX SODIUM_MIN(UINT64_MAX, SIZE_MAX) +#ifdef _KERNEL +#include +#include +static inline void +sodium_misuse(void) +{ + panic("bad value passed to sodium"); +} +#endif + #endif