Check for memset_explicit() and explicit_memset()
We can use either of these to implement a missing explicit_bzero().
explicit_memset() is supported on NetBSD. NetBSD hitherto didn't have
a way to implement explicit_bzero() other than the fallback variant.
memset_explicit() is the C23 standard, so we use it as first
preference. It is currently supported on:
- NetBSD 11
- FreeBSD 15
- glibc 2.43
It doesn't provide additional coverage, but as it's the new standard,
its availability will presumably grow.
Reviewed-by: Bertrand Drouvot <bertranddrouvot.pg@gmail.com>
Discussion: https://www.postgresql.org/message-id/flat/c4701776-8d99-41da-938d-88528a3adc15%40eisentraut.org
Branch
------
master
Details
-------
https://git.postgresql.org/pg/commitdiff/386ca3908de28dd882a62b8f97a329db07b23138
Modified Files
--------------
configure | 2 +-
configure.ac | 2 ++
meson.build | 2 ++
src/include/pg_config.h.in | 6 ++++++
src/port/explicit_bzero.c | 18 +++++++++++++++++-
5 files changed, 28 insertions(+), 2 deletions(-)