if_ndis patch

Paul B Mahol onemda at gmail.com
Sun Nov 1 09:09:20 UTC 2009


On 10/31/09, Coleman Kane <cokane at freebsd.org> wrote:
> Paul,
>
> Did you get to send this to sam@, etc ?

Negative, now let @net know about it too.

> On Fri, 2009-10-30 at 16:52 +0100, Paul B Mahol wrote:
>> Hi,
>>
>> There is no point to do scanning how it is currently done:
>>
>> Index: if_ndis.c
>> ===================================================================
>> --- if_ndis.c   (revision 198675)
>> +++ if_ndis.c   (working copy)
>> @@ -3398,11 +3398,8 @@
>>         struct ifnet *ifp = ic->ic_ifp;
>>         struct ndis_softc *sc = ifp->if_softc;
>>         struct ieee80211vap *vap;
>> -       struct ieee80211_scan_state *ss;
>> -       ndis_80211_ssid ssid;
>>         int error, len;
>>
>> -       ss = ic->ic_scan;
>>         vap = TAILQ_FIRST(&ic->ic_vaps);
>>
>>         if (!NDIS_INITIALIZED(sc)) {
>> @@ -3411,20 +3408,6 @@
>>                 return;
>>         }
>>
>> -       len = sizeof(ssid);
>> -       bzero((char *)&ssid, len);
>> -       if (ss->ss_nssid == 0)
>> -               ssid.ns_ssidlen = 1;
>> -       else {
>> -               /* Perform a directed scan */
>> -               ssid.ns_ssidlen = ss->ss_ssid[0].len;
>> -               bcopy(ss->ss_ssid[0].ssid, ssid.ns_ssid, ssid.ns_ssidlen);
>> -       }
>> -
>> -       error = ndis_set_info(sc, OID_802_11_SSID, &ssid, &len);
>> -       if (error)
>> -               DPRINTF(("%s: set ESSID failed\n", __func__));
>> -
>>         len = 0;
>>         error = ndis_set_info(sc, OID_802_11_BSSID_LIST_SCAN,
>>             NULL, &len);


More information about the freebsd-net mailing list