cvs commit: src/sys/compat/ndis kern_ndis.c subr_ndis.c
src/sys/dev/if_ndis if_ndis.c
Bill Paul
wpaul at FreeBSD.org
Mon Feb 2 23:39:25 PST 2004
wpaul 2004/02/02 23:39:23 PST
FreeBSD src repository
Modified files:
sys/compat/ndis kern_ndis.c subr_ndis.c
sys/dev/if_ndis if_ndis.c
Log:
Implement support for single packet sends. The Intel Centrino driver
that Asus provides on its CDs has both a MiniportSend() routine
and a MiniportSendPackets() function. The Microsoft NDIS docs say
that if a driver has both, only the MiniportSendPackets() routine
will be used. Although I think I implemented the support correctly,
calling the MiniportSend() routine seems to result in no packets going
out on the air, even though no error status is returned. The
MiniportSendPackets() function does work though, so at least in
this case it doesn't matter.
In if_ndis.c:ndis_getstate_80211(), if ndis_get_assoc() returns
an error, don't bother trying to obtain any other state since the
calls may fail, or worse cause the underlying driver to crash.
(The above two changes make the Asus-supplied Centrino work.)
Also, when calling the OID_802_11_CONFIGURATION OID, remember
to initialize the structure lengths correctly.
In subr_ndis.c:ndis_open_file(), set the current working directory
to rootvnode if we're in a thread that doesn't have a current
working directory set.
Revision Changes Path
1.35 +26 -0 src/sys/compat/ndis/kern_ndis.c
1.41 +10 -0 src/sys/compat/ndis/subr_ndis.c
1.40 +29 -7 src/sys/dev/if_ndis/if_ndis.c
More information about the cvs-src
mailing list