diff options
Diffstat (limited to 'sys/lib/libkern/explicit_bzero.c')
-rw-r--r-- | sys/lib/libkern/explicit_bzero.c | 19 |
1 files changed, 12 insertions, 7 deletions
diff --git a/sys/lib/libkern/explicit_bzero.c b/sys/lib/libkern/explicit_bzero.c index 297fc7052c9..346c0bac70e 100644 --- a/sys/lib/libkern/explicit_bzero.c +++ b/sys/lib/libkern/explicit_bzero.c @@ -1,16 +1,21 @@ -/* $OpenBSD: explicit_bzero.c,v 1.2 2014/06/10 04:16:57 deraadt Exp $ */ +/* $OpenBSD: explicit_bzero.c,v 1.3 2014/06/21 02:34:26 matthew Exp $ */ /* * Public domain. - * Written by Ted Unangst + * Written by Matthew Dempsky. */ #include <lib/libkern/libkern.h> -/* - * explicit_bzero - don't let the compiler optimize away bzero - */ +__attribute__((weak)) void __explicit_bzero_hook(void *, size_t); + +__attribute__((weak)) void +__explicit_bzero_hook(void *buf, size_t len) +{ +} + void -explicit_bzero(void *p, size_t n) +explicit_bzero(void *buf, size_t len) { - bzero(p, n); + memset(buf, 0, len); + __explicit_bzero_hook(buf, len); } |