From 420151dbd9e9737fcb7df46529b5fa63a10b8efa Mon Sep 17 00:00:00 2001 From: Matt Johnston Date: Thu, 17 Mar 2016 23:21:33 +0800 Subject: move m_burn and function attributes to dbhelpers use m_burn for libtomcrypt zeromem() too --- dbhelpers.c | 25 +++++++++++++++++++++++++ 1 file changed, 25 insertions(+) create mode 100644 dbhelpers.c (limited to 'dbhelpers.c') diff --git a/dbhelpers.c b/dbhelpers.c new file mode 100644 index 0000000..f7461d9 --- /dev/null +++ b/dbhelpers.c @@ -0,0 +1,25 @@ +#include "dbhelpers.h" +#include "includes.h" + +/* Erase data */ +void m_burn(void *data, unsigned int len) { + +#if defined(HAVE_MEMSET_S) + memset_s(data, len, 0x0, len); +#elif defined(HAVE_EXPLICIT_BZERO) + explicit_bzero(data, len); +#else +/* Based on the method in David Wheeler's + * "Secure Programming for Linux and Unix HOWTO". May not be safe + * against link-time optimisation. */ + volatile char *p = data; + + if (data == NULL) + return; + while (len--) { + *p++ = 0x0; + } +#endif +} + + -- cgit v1.2.3