HDFS-15977. Call explicit_bzero only if it is available. (#2914)
Reviewed-by: Masatake Iwasaki <iwasakims@apache.org> Reviewed-by: Inigo Goiri <inigoiri@apache.org>
This commit is contained in:
parent
17be99f9f9
commit
f0241ec216
|
@ -51,6 +51,7 @@ find_package(GSasl)
|
||||||
find_package(Threads)
|
find_package(Threads)
|
||||||
|
|
||||||
include(CheckCXXSourceCompiles)
|
include(CheckCXXSourceCompiles)
|
||||||
|
include(CheckSymbolExists)
|
||||||
|
|
||||||
# Download and build gtest
|
# Download and build gtest
|
||||||
configure_file(CMakeLists-gtest.txt.in googletest-download/CMakeLists.txt)
|
configure_file(CMakeLists-gtest.txt.in googletest-download/CMakeLists.txt)
|
||||||
|
@ -168,6 +169,11 @@ else (NOT NO_SASL)
|
||||||
message(STATUS "Compiling with NO SASL SUPPORT")
|
message(STATUS "Compiling with NO SASL SUPPORT")
|
||||||
endif (NOT NO_SASL)
|
endif (NOT NO_SASL)
|
||||||
|
|
||||||
|
check_symbol_exists(explicit_bzero "string.h" HAVE_EXPLICIT_BZERO)
|
||||||
|
if(HAVE_EXPLICIT_BZERO)
|
||||||
|
add_definitions(-DHAVE_EXPLICIT_BZERO)
|
||||||
|
endif()
|
||||||
|
|
||||||
add_definitions(-DASIO_STANDALONE -DASIO_CPP11_DATE_TIME)
|
add_definitions(-DASIO_STANDALONE -DASIO_CPP11_DATE_TIME)
|
||||||
|
|
||||||
# Disable optimizations if compiling debug
|
# Disable optimizations if compiling debug
|
||||||
|
|
|
@ -47,7 +47,12 @@ bool XPlatform::Syscall::WriteToStdoutImpl(const char* message) {
|
||||||
void XPlatform::Syscall::ClearBufferSafely(void* buffer,
|
void XPlatform::Syscall::ClearBufferSafely(void* buffer,
|
||||||
const size_t sz_bytes) {
|
const size_t sz_bytes) {
|
||||||
if (buffer != nullptr) {
|
if (buffer != nullptr) {
|
||||||
|
#ifdef HAVE_EXPLICIT_BZERO
|
||||||
explicit_bzero(buffer, sz_bytes);
|
explicit_bzero(buffer, sz_bytes);
|
||||||
|
#else
|
||||||
|
// fallback to bzero
|
||||||
|
bzero(buffer, sz_bytes);
|
||||||
|
#endif
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue