1#ifndef __SODIUM_UTILS_H__
2#define __SODIUM_UTILS_H__
3
4/* This overwrites dist/src/libsodium/include/sodium/utils.h */
5
6#define SODIUM_C99(X) X
7
8static inline void
9sodium_memzero(void *const pnt, const size_t len)
10{
11
12	explicit_memset(pnt, 0, len);
13}
14
15/* Just copied from dist/src/libsodium/sodium/utils.c */
16static inline int
17sodium_is_zero(const unsigned char *n, const size_t nlen)
18{
19    size_t                 i;
20    volatile unsigned char d = 0U;
21
22    for (i = 0U; i < nlen; i++) {
23        d |= n[i];
24    }
25    return 1 & ((d - 1) >> 8);
26}
27#endif /* __SODIUM_UTILS_H__ */
28