aboutsummaryrefslogtreecommitdiffstats
path: root/src/alloc
diff options
context:
space:
mode:
Diffstat (limited to 'src/alloc')
-rw-r--r--src/alloc/secmem.h12
1 files changed, 12 insertions, 0 deletions
diff --git a/src/alloc/secmem.h b/src/alloc/secmem.h
index 537f0ef44..2f4d65f33 100644
--- a/src/alloc/secmem.h
+++ b/src/alloc/secmem.h
@@ -168,6 +168,18 @@ void zeroise(std::vector<T, Alloc>& vec)
clear_mem(&vec[0], vec.size());
}
+/**
+* Zeroise the values then free the memory
+* @param vec the vector to zeroise and free
+*/
+template<typename T, typename Alloc>
+void zap(std::vector<T, Alloc>& vec)
+ {
+ zeroise(vec);
+ vec.clear();
+ vec.shrink_to_fit();
+ }
+
}
#endif