diff options
Diffstat (limited to 'usr.sbin/sysinstall/devices.c')
-rw-r--r-- | usr.sbin/sysinstall/devices.c | 8 |
1 files changed, 5 insertions, 3 deletions
diff --git a/usr.sbin/sysinstall/devices.c b/usr.sbin/sysinstall/devices.c index 8cf1fb3..640b6da 100644 --- a/usr.sbin/sysinstall/devices.c +++ b/usr.sbin/sysinstall/devices.c @@ -295,6 +295,8 @@ deviceGetAll(void) msgNotify("Probing devices, please wait (this can take a while)..."); /* First go for the network interfaces. Stolen shamelessly from ifconfig! */ + memset(&ifc, 0, sizeof(ifc)); + memset(buffer, 0, INTERFACE_MAX * sizeof(struct ifreq)); ifc.ifc_len = sizeof(buffer); ifc.ifc_buf = buffer; @@ -371,7 +373,7 @@ skipif: if (fd >= 0) close(fd); snprintf(n, sizeof n, device_names[i].name, j); - deviceRegister(strdup(n), device_names[i].description, strdup(try), + deviceRegister(n, device_names[i].description, strdup(try), DEVICE_TYPE_CDROM, TRUE, mediaInitCDROM, mediaGetCDROM, mediaShutdownCDROM, NULL); if (isDebug()) @@ -390,7 +392,7 @@ skipif: close(fd); snprintf(n, sizeof n, device_names[i].name, j); - deviceRegister(strdup(n), device_names[i].description, strdup(try), + deviceRegister(n, device_names[i].description, strdup(try), DEVICE_TYPE_FLOPPY, TRUE, mediaInitFloppy, mediaGetFloppy, mediaShutdownFloppy, NULL); if (isDebug()) @@ -405,7 +407,7 @@ skipif: close(fd); snprintf(n, sizeof(n), device_names[i].name, j); - deviceRegister(strdup(n), device_names[i].description, + deviceRegister(n, device_names[i].description, strdup(try), DEVICE_TYPE_USB, TRUE, mediaInitUSB, mediaGetUSB, mediaShutdownUSB, NULL); |