aboutsummaryrefslogtreecommitdiff
path: root/src/support/lockedpool.cpp
diff options
context:
space:
mode:
authorLuke Dashjr <[email protected]>2019-03-14 13:36:24 +0000
committerLuke Dashjr <[email protected]>2020-03-04 19:52:16 +0000
commitd831831822885717e9841f1ff67c19add566fa45 (patch)
tree644a0ec6acfe33d4b75daf4ec5acd67a66209f01 /src/support/lockedpool.cpp
parentMerge #13951: Hardcoded seeds update pre-0.17 branch (diff)
downloaddiscoin-d831831822885717e9841f1ff67c19add566fa45.tar.xz
discoin-d831831822885717e9841f1ff67c19add566fa45.zip
lockedpool: When possible, use madvise to avoid including sensitive information in core dumps
Diffstat (limited to 'src/support/lockedpool.cpp')
-rw-r--r--src/support/lockedpool.cpp3
1 files changed, 3 insertions, 0 deletions
diff --git a/src/support/lockedpool.cpp b/src/support/lockedpool.cpp
index 070b3ed80..fc1f660ae 100644
--- a/src/support/lockedpool.cpp
+++ b/src/support/lockedpool.cpp
@@ -250,6 +250,9 @@ void *PosixLockedPageAllocator::AllocateLocked(size_t len, bool *lockingSuccess)
addr = mmap(nullptr, len, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0);
if (addr) {
*lockingSuccess = mlock(addr, len) == 0;
+#ifdef MADV_DONTDUMP
+ madvise(addr, len, MADV_DONTDUMP);
+#endif
}
return addr;
}