From c7419e7cdffc8c8d54dd918b03ed2c497fe7ca42 Mon Sep 17 00:00:00 2001 From: Mark Haines Date: Fri, 27 Feb 2015 16:11:30 +0000 Subject: Try to ensure the compiler cannot optimise away attempts to erase secrets from memory --- src/memory.cpp | 11 +++++++++++ 1 file changed, 11 insertions(+) create mode 100644 src/memory.cpp (limited to 'src/memory.cpp') diff --git a/src/memory.cpp b/src/memory.cpp new file mode 100644 index 0000000..14c95dd --- /dev/null +++ b/src/memory.cpp @@ -0,0 +1,11 @@ +#include "axolotl/memory.hh" + +void axolotl::unset( + volatile void * buffer, std::size_t buffer_length +) { + volatile char * pos = reinterpret_cast(buffer); + volatile char * end = pos + buffer_length; + while (pos != end) { + *(pos++) = 0; + } +} -- cgit v1.2.3