From e8c5495b61ebde115ee133e8c85933191bd0cd61 Mon Sep 17 00:00:00 2001 From: Adam Ierymenko Date: Thu, 2 Oct 2014 09:08:31 -0700 Subject: Yes, zero my secret key data. Yes I really, really mean it. --- node/Utils.hpp | 14 +++----------- 1 file changed, 3 insertions(+), 11 deletions(-) (limited to 'node/Utils.hpp') diff --git a/node/Utils.hpp b/node/Utils.hpp index affae9a8..defb52a9 100644 --- a/node/Utils.hpp +++ b/node/Utils.hpp @@ -101,18 +101,10 @@ public: } /** - * Securely zero memory - * - * This just uses volatile to ensure that it's never optimized out. + * Securely zero memory, avoiding compiler optimizations and such */ - static inline void burn(void *ptr,unsigned int len) - throw() - { - volatile unsigned char *p = (unsigned char *)ptr; - volatile unsigned char *e = p + len; - while (p != e) - *(p++) = (unsigned char)0; - } + static void burn(void *ptr,unsigned int len) + throw(); /** * Delete a file -- cgit v1.2.3