pgsql: Check for memset_explicit() and explicit_memset()

Started by Peter Eisentraut5 months ago1 messagescomitters
Jump to latest
#1Peter Eisentraut
peter_e@gmx.net

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: /messages/by-id/c4701776-8d99-41da-938d-88528a3adc15@eisentraut.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(-)