1272673Sdelphij/*	$OpenBSD: explicit_bzero.c,v 1.3 2014/06/21 02:34:26 matthew Exp $ */
2272673Sdelphij/*
3272673Sdelphij * Public domain.
4272673Sdelphij * Written by Matthew Dempsky.
5272673Sdelphij */
6272673Sdelphij
7272673Sdelphij#include <sys/cdefs.h>
8272673Sdelphij__FBSDID("$FreeBSD: releng/11.0/sys/libkern/explicit_bzero.c 273189 2014-10-16 22:04:07Z delphij $");
9272673Sdelphij
10273189Sdelphij#ifdef _KERNEL
11272673Sdelphij#include <sys/libkern.h>
12273189Sdelphij#else
13273189Sdelphij#include <string.h>
14273189Sdelphij#endif /* _KERNEL */
15272673Sdelphij
16272673Sdelphij__attribute__((weak)) void __explicit_bzero_hook(void *, size_t);
17272673Sdelphij
18272673Sdelphij__attribute__((weak)) void
19272673Sdelphij__explicit_bzero_hook(void *buf, size_t len)
20272673Sdelphij{
21272673Sdelphij}
22272673Sdelphij
23272673Sdelphijvoid
24272673Sdelphijexplicit_bzero(void *buf, size_t len)
25272673Sdelphij{
26272673Sdelphij	memset(buf, 0, len);
27272673Sdelphij	__explicit_bzero_hook(buf, len);
28272673Sdelphij}
29