bzero,
explicit_bzero —
write zeroes to a byte string
#include
<strings.h>
void
bzero(
void
*b,
size_t
len);
#include
<string.h>
void
explicit_bzero(
void
*b,
size_t
len);
The
bzero() function writes
len zero bytes to the string
b. If
len is
zero,
bzero() does nothing.
The
explicit_bzero() variant behaves the
same, but will not be removed by a compiler's dead store optimization pass,
making it useful for clearing sensitive memory such as a password.
memset(3),
swab(3)
The
bzero() function conforms to the X/Open
System Interfaces option of the
IEEE Std
1003.1-2004 (“POSIX.1”) specification. It was removed
from the standard in
IEEE Std 1003.1-2008
(“POSIX.1”), which recommends using
memset(3) instead.
The
explicit_bzero() function is an
OpenBSD extension.
The
bzero() function first appeared in
4.2BSD. The
explicit_bzero() function first appeared in
OpenBSD 5.5.