1*ee758998Schristos /* $OpenBSD: explicit_bzero.c,v 1.4 2015/08/31 02:53:57 guenther Exp $ */ 2*ee758998Schristos /* 3*ee758998Schristos * Public domain. 4*ee758998Schristos * Written by Matthew Dempsky. 5*ee758998Schristos */ 6*ee758998Schristos #include "config.h" 7*ee758998Schristos #include <string.h> 8*ee758998Schristos 9*ee758998Schristos #ifdef HAVE_ATTR_WEAK 10*ee758998Schristos __attribute__((weak)) void 11*ee758998Schristos #else 12*ee758998Schristos void 13*ee758998Schristos #endif __explicit_bzero_hook(void * ATTR_UNUSED (buf),size_t ATTR_UNUSED (len))14*ee758998Schristos__explicit_bzero_hook(void *ATTR_UNUSED(buf), size_t ATTR_UNUSED(len)) 15*ee758998Schristos { 16*ee758998Schristos } 17*ee758998Schristos 18*ee758998Schristos void explicit_bzero(void * buf,size_t len)19*ee758998Schristosexplicit_bzero(void *buf, size_t len) 20*ee758998Schristos { 21*ee758998Schristos memset(buf, 0, len); 22*ee758998Schristos __explicit_bzero_hook(buf, len); 23*ee758998Schristos } 24