summaryrefslogtreecommitdiff
path: root/sys/compat/ndis/subr_ndis.c
diff options
context:
space:
mode:
Diffstat (limited to 'sys/compat/ndis/subr_ndis.c')
-rw-r--r--sys/compat/ndis/subr_ndis.c11
1 files changed, 8 insertions, 3 deletions
diff --git a/sys/compat/ndis/subr_ndis.c b/sys/compat/ndis/subr_ndis.c
index c898f067d3dd..98a0a284ce8f 100644
--- a/sys/compat/ndis/subr_ndis.c
+++ b/sys/compat/ndis/subr_ndis.c
@@ -626,6 +626,9 @@ NdisReadConfiguration(status, parm, cfg, key, type)
block = (ndis_miniport_block *)cfg;
sc = device_get_softc(block->nmb_physdeviceobj->do_devext);
+ /*
+ device_printf(sc->ndis_dev, "NdisReadConfiguration sc=%p\n", sc);
+ */
if (key->us_len == 0 || key->us_buf == NULL) {
*status = NDIS_STATUS_FAILURE;
@@ -984,7 +987,7 @@ NdisWriteErrorLogEntry(ndis_handle adapter, ndis_error_code code,
dev = block->nmb_physdeviceobj->do_devext;
drv = block->nmb_deviceobj->do_drvobj;
sc = device_get_softc(dev);
- ifp = sc->ifp;
+ ifp = NDISUSB_GET_IFNET(sc);
if (ifp != NULL && ifp->if_flags & IFF_DEBUG) {
error = pe_get_message((vm_offset_t)drv->dro_driverstart,
@@ -1304,17 +1307,19 @@ NdisReadNetworkAddress(status, addr, addrlen, adapter)
ndis_handle adapter;
{
struct ndis_softc *sc;
+ struct ifnet *ifp;
ndis_miniport_block *block;
uint8_t empty[] = { 0, 0, 0, 0, 0, 0 };
block = (ndis_miniport_block *)adapter;
sc = device_get_softc(block->nmb_physdeviceobj->do_devext);
- if (sc->ifp == NULL) {
+ ifp = NDISUSB_GET_IFNET(sc);
+ if (ifp == NULL) {
*status = NDIS_STATUS_FAILURE;
return;
}
- if (sc->ifp->if_addr == NULL ||
+ if (ifp->if_addr == NULL ||
bcmp(IF_LLADDR(sc->ifp), empty, ETHER_ADDR_LEN) == 0)
*status = NDIS_STATUS_FAILURE;
else {