struct wi_req: how to deal with removal, affects multiple ports

Sam Leffler sam at errno.com
Mon Oct 1 14:34:07 PDT 2007


Andrew Thompson wrote:
> On Mon, Oct 01, 2007 at 09:40:35PM +0200, Ulrich Spoerlein wrote:
>   
>> Hi,
>>
>> on July 11th you removed the definition for struct wi_req on -CURRENT
>> from sys/dev/wi/if_wavelan_ieee.h with the following commit message
>>
>> revision 1.21
>> date: 2007/07/11 21:25:48;  author: thompsa;  state: Exp;  lines: +2 -0
>> Now that wicontrol has been removed from the base system the corresponding
>> ioctls can be removed. These have been #ifdef'd out and left as a reference in
>> case any of the RIDs need to be turned into sysctls at a later date.
>>
>> Reviewed by:    sam, avatar
>> Approved by:    re (kensmith)
>>
>> I don't know why, but recently at least the ports xwlans and wmwifi fail
>> to build because of the missing definition, I guess. bsd-airtools has
>> recently been flagged as broken, too. Presumably due to the same reason.
>>     
>
> Up until that commit wi(4) was the only driver to support the
> SIOCGWAVELAN calls, now it has been totally removed in favour of the
> net80211 systems.
>
>   
>> How should these ports deal with this? Both are calling SIOCGWAVELAN
>> with wi_type set to WI_RID_COMMS_QUALITY.
>>     
>
> I guess these ports should be updated to use the IEEE80211_IOC_SCAN_REQ
> and IEEE80211_IOC_SCAN_RESULTS ioctls. These are driver independent and
> supported by all the wireless drivers, src/sbin/ifconfig/ifieee80211.c
> is a good reference.
>
> I see that wmwifi-bsd.patch from wmwifi could be updated reasonably
> easy, I can help if you like.
>   

This issue came to me previously and I said basically the same 
thing--the old api's were deprecated long ago (w/ the promise to pull 
the plug in 7.0).  For example, I offered an updated dstumbler that read 
radiotap with libpcap for many years but noone updated the port.  
Anything wireless should use the current ioctls and if there are any 
issues I will help.  As Andrew mentioned ifconfig is the best reference 
for the moment (though I have changes to make the code less of a 
steaming pile of hacks).  The best solution would be for someone to take 
the ifconfig code and write a library.

    Sam



More information about the freebsd-ports mailing list