DF-2734 / fix.diff
--- a/sys/kern/sys_generic.c +++ b/sys/kern/sys_generic.c @@ -688,10 +688,11 @@ } else { *(caddr_t *)data = uspc_data; } - } else if ((com & IOC_OUT) != 0 && size) { + } else if (size) { /* * Zero the buffer so the user always - * gets back something deterministic. + * gets back something deterministic. This also covers + * IOC_NONE-direction commands whose size is non-zero. */ bzero(data, (size_t)size); } |