1 /* $OpenBSD: explicit_bzero.c,v 1.3 2014/06/21 02:34:26 matthew Exp $ */ 2 /* 3 * Public domain. 4 * Written by Matthew Dempsky. 5 */ 6 7 #include <sys/cdefs.h> 8 #ifdef _KERNEL 9 #include <sys/libkern.h> 10 #else 11 #include <string.h> 12 #include <ssp/ssp.h> 13 #endif /* _KERNEL */ 14 15 __attribute__((weak)) void __explicit_bzero_hook(void *, size_t); 16 17 __attribute__((weak)) void 18 __explicit_bzero_hook(void *buf, size_t len) 19 { 20 } 21 22 void 23 __ssp_real(explicit_bzero)(void *buf, size_t len) 24 { 25 memset(buf, 0, len); 26 __explicit_bzero_hook(buf, len); 27 } 28