From c66d80a4381f0b492fd62e87deb88944b77efd22 Mon Sep 17 00:00:00 2001 From: Brent Cook Date: Mon, 3 Aug 2015 06:56:59 -0500 Subject: [PATCH] add win32-specific explicit_bzero implementation --- .gitignore | 1 + crypto/Makefile.am | 4 ++++ crypto/compat/explicit_bzero_win.c | 13 +++++++++++++ 3 files changed, 18 insertions(+) create mode 100644 crypto/compat/explicit_bzero_win.c diff --git a/.gitignore b/.gitignore index 7efedef..5d7c5ba 100644 --- a/.gitignore +++ b/.gitignore @@ -120,6 +120,7 @@ include/openssl/*.he !/crypto/Makefile.am.* !/crypto/compat/arc4random.h !/crypto/compat/b_win.c +!/crypto/compat/explicit_bzero_win.c !/crypto/compat/posix_win.c !/crypto/compat/bsd_asprintf.c !/crypto/compat/inet_pton.c diff --git a/crypto/Makefile.am b/crypto/Makefile.am index b988d77..26d30d9 100644 --- a/crypto/Makefile.am +++ b/crypto/Makefile.am @@ -34,8 +34,12 @@ libcompatnoopt_la_CFLAGS = -O0 libcompatnoopt_la_SOURCES = if !HAVE_EXPLICIT_BZERO +if HOST_WIN +libcompatnoopt_la_SOURCES += compat/explicit_bzero_win.c +else libcompatnoopt_la_SOURCES += compat/explicit_bzero.c endif +endif # other compatibility functions libcompat_la_SOURCES = diff --git a/crypto/compat/explicit_bzero_win.c b/crypto/compat/explicit_bzero_win.c new file mode 100644 index 0000000..0d09d90 --- /dev/null +++ b/crypto/compat/explicit_bzero_win.c @@ -0,0 +1,13 @@ +/* + * Public domain. + * Win32 explicit_bzero compatibility shim. + */ + +#include +#include + +void +explicit_bzero(void *buf, size_t len) +{ + SecureZeroMemory(buf, len); +}