svn commit: r334413 - head/lib/libdevinfo
Warner Losh
imp at FreeBSD.org
Thu May 31 02:57:52 UTC 2018
Author: imp
Date: Thu May 31 02:57:51 2018
New Revision: 334413
URL: https://svnweb.freebsd.org/changeset/base/334413
Log:
Sanity check the return from the kernel.
We should be getting back as many bytes as we asked for, and we
don't handle shortages at all, so just reject anything that's
not right.
Differential Revision: https://reviews.freebsd.org/D15629
Modified:
head/lib/libdevinfo/devinfo.c
Modified: head/lib/libdevinfo/devinfo.c
==============================================================================
--- head/lib/libdevinfo/devinfo.c Thu May 31 02:54:11 2018 (r334412)
+++ head/lib/libdevinfo/devinfo.c Thu May 31 02:57:51 2018 (r334413)
@@ -220,6 +220,11 @@ devinfo_init_devices(int generation)
warn("sysctl hw.bus.devices.%d", dev_idx);
return(errno);
}
+ if (rlen != sizeof(udev)) {
+ warnx("sysctl returned wrong data %zd bytes instead of %zd",
+ rlen, sizeof(udev));
+ return (EINVAL);
+ }
if ((dd = malloc(sizeof(*dd))) == NULL)
return(ENOMEM);
dd->dd_dev.dd_handle = udev.dv_handle;
More information about the svn-src-all
mailing list