View | Details | Raw Unified | Return to bug 119129
Collapse All | Expand All

(-)kern_mib.c (-5 / +9 lines)
Lines 153-166 SYSCTL_INT(_hw, HW_PAGESIZE, pagesize, C Link Here
153
static int
153
static int
154
sysctl_kern_arnd(SYSCTL_HANDLER_ARGS)
154
sysctl_kern_arnd(SYSCTL_HANDLER_ARGS)
155
{
155
{
156
	u_long val;
156
	char buf[256];
157
	size_t len;
157
158
158
	arc4rand(&val, sizeof(val), 0);
159
	len = req->oldlen;
159
	return (sysctl_handle_long(oidp, &val, 0, req));
160
	if (len > sizeof(buf))
161
		len = sizeof(buf);
162
	arc4rand(buf, len, 0);
163
	return (SYSCTL_OUT(req, buf, len));
160
}
164
}
161
165
162
SYSCTL_PROC(_kern, KERN_ARND, arandom, CTLFLAG_RD,
166
SYSCTL_PROC(_kern, KERN_ARND, arandom, CTLTYPE_OPAQUE | CTLFLAG_RD,
163
	0, 0, sysctl_kern_arnd, "L", "arc4rand");
167
    NULL, 0, sysctl_kern_arnd, "", "arc4rand");
164
168
165
static int
169
static int
166
sysctl_hw_physmem(SYSCTL_HANDLER_ARGS)
170
sysctl_hw_physmem(SYSCTL_HANDLER_ARGS)

Return to bug 119129