mirror of
https://git.freebsd.org/ports.git
synced 2025-06-29 16:40:31 -04:00
The NDIS driver didn't build when privsep option was turned off. Moveover, it didn't display the driver name correctly, so I figured out a patch based on base's ndis driver code. Thirdly, when privsep option is turned off, wpa_priv is not built, so let's handle that condition. Finally, remove privsep from default options because it removes the standard list of drivers and replaces it with privsep driver.
28 lines
851 B
C
28 lines
851 B
C
--- src/drivers/driver_ndis.c.orig 2014-10-09 14:41:31 UTC
|
|
+++ src/drivers/driver_ndis.c
|
|
@@ -2110,7 +2110,11 @@ static int wpa_driver_ndis_get_names(str
|
|
dlen = dpos - desc;
|
|
else
|
|
dlen = os_strlen(desc);
|
|
- drv->adapter_desc = dup_binstr(desc, dlen);
|
|
+ drv->adapter_desc = os_malloc(dlen + 1);
|
|
+ if (drv->adapter_desc) {
|
|
+ os_memcpy(drv->adapter_desc, desc, dlen);
|
|
+ drv->adapter_desc[dlen] = '\0';
|
|
+ }
|
|
os_free(b);
|
|
if (drv->adapter_desc == NULL)
|
|
return -1;
|
|
@@ -2278,7 +2282,11 @@ static int wpa_driver_ndis_get_names(str
|
|
} else {
|
|
dlen = os_strlen(desc[i]);
|
|
}
|
|
- drv->adapter_desc = dup_binstr(desc[i], dlen);
|
|
+ drv->adapter_desc = os_malloc(dlen + 1);
|
|
+ if (drv->adapter_desc) {
|
|
+ os_memcpy(drv->adapter_desc, desc[i], dlen);
|
|
+ drv->adapter_desc[dlen] = '\0';
|
|
+ }
|
|
os_free(names);
|
|
if (drv->adapter_desc == NULL)
|
|
return -1;
|