diff options
Diffstat (limited to 'src/alloc')
-rw-r--r-- | src/alloc/secmem.h | 12 |
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 |