https://bugs.gentoo.org/909422 https://github.com/randombit/botan/commit/3f87e1eef7dbfe231d833ffbf06f7a85b070b600 (cherry-picked getentropy.cpp bit) https://github.com/randombit/botan/commit/562ea8da8ab34985b4b3dfefc1bea57829213ace --- a/src/lib/entropy/getentropy/getentropy.cpp +++ b/src/lib/entropy/getentropy/getentropy.cpp @@ -10,8 +10,8 @@ #if defined(BOTAN_TARGET_OS_IS_OPENBSD) || defined(BOTAN_TARGET_OS_IS_FREEBSD) || defined(BOTAN_TARGET_OS_IS_SOLARIS) #include #else - #include // older macOS needs this before sys/random.h #include + #include // older macOS needs this before sys/random.h #endif namespace Botan { @@ -21,16 +21,14 @@ namespace Botan { * buffer size is limited to 256 bytes. On OpenBSD this does neither * block nor fail. */ -size_t Getentropy::poll(RandomNumberGenerator& rng) - { +size_t Getentropy::poll(RandomNumberGenerator& rng) { secure_vector buf(256); - if(::getentropy(buf.data(), buf.size()) == 0) - { + if(::getentropy(buf.data(), buf.size()) == 0) { rng.add_entropy(buf.data(), buf.size()); return buf.size() * 8; - } + } return 0; - } } +} // namespace Botan From 562ea8da8ab34985b4b3dfefc1bea57829213ace Mon Sep 17 00:00:00 2001 From: Jack Lloyd Date: Mon, 29 May 2023 10:10:54 -0400 Subject: [PATCH] Clean up getentropy includes --- a/src/lib/entropy/getentropy/getentropy.cpp +++ b/src/lib/entropy/getentropy/getentropy.cpp @@ -6,12 +6,11 @@ */ #include +#include -#if defined(BOTAN_TARGET_OS_IS_OPENBSD) || defined(BOTAN_TARGET_OS_IS_FREEBSD) || defined(BOTAN_TARGET_OS_IS_SOLARIS) - #include -#else +// macOS and Android include it in sys/random.h instead +#if __has_include() #include - #include // older macOS needs this before sys/random.h #endif namespace Botan { @@ -31,4 +30,5 @@ size_t Getentropy::poll(RandomNumberGenerator& rng) { return 0; } + } // namespace Botan