Use explicit_memset from NetBSD if available for safe_memclear (fixes #2971)

This commit is contained in:
Stefan Bühler 2019-08-22 13:07:55 +02:00
parent 186ce8a2b1
commit 79760d935a
2 changed files with 4 additions and 1 deletions

View File

@ -1211,6 +1211,7 @@ AC_CHECK_FUNCS([\
clock_gettime \
epoll_ctl \
explicit_bzero \
explicit_memset \
fork \
getloadavg \
getrlimit \

View File

@ -4,7 +4,7 @@
#include <string.h>
#if !defined(HAVE_MEMSET_S) && !defined(HAVE_EXPLICIT_BZERO)
#if !defined(HAVE_MEMSET_S) && !defined(HAVE_EXPLICIT_BZERO) && !defined(HAVE_EXPLICIT_MEMSET)
# if defined(HAVE_WEAK_SYMBOLS)
/* it seems weak functions are never inlined, even for static builds */
@ -41,6 +41,8 @@ void safe_memclear(void *s, size_t n) {
memset_s(s, n, 0, n);
#elif defined(HAVE_EXPLICIT_BZERO)
explicit_bzero(s, n);
#elif defined(HAVE_EXPLICIT_MEMSET)
explicit_memset(s, 0, n);
#else
safe_memset(s, 0, n);
#endif