aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--sys/kern/kern_mib.c6
1 files changed, 5 insertions, 1 deletions
diff --git a/sys/kern/kern_mib.c b/sys/kern/kern_mib.c
index 5724ed3f6932..fe6e49865682 100644
--- a/sys/kern/kern_mib.c
+++ b/sys/kern/kern_mib.c
@@ -182,10 +182,14 @@ sysctl_kern_arnd(SYSCTL_HANDLER_ARGS)
{
char buf[256];
size_t len;
+ int error;
len = MIN(req->oldlen, sizeof(buf));
read_random(buf, len);
- return (SYSCTL_OUT(req, buf, len));
+
+ error = SYSCTL_OUT(req, buf, len);
+ explicit_bzero(buf, len);
+ return (error);
}
SYSCTL_PROC(_kern, KERN_ARND, arandom,