Skip site navigation (1)Skip section navigation (2)
Date:      Fri, 26 Sep 2008 10:51:10 -0700
From:      Sam Leffler <sam@freebsd.org>
To:        John Hay <jhay@meraka.org.za>
Cc:        "Paul B. Mahol" <onemda@gmail.com>, freebsd-mobile@freebsd.org
Subject:   Re: setting bssid in adhoc mode
Message-ID:  <48DD210E.6050300@freebsd.org>
In-Reply-To: <20080926055522.GA13842@zibbi.meraka.csir.co.za>
References:  <20080922132500.GA25677@zibbi.meraka.csir.co.za>	<3a142e750809250741j7b9003e4q539618d1c9407def@mail.gmail.com>	<20080925161338.GA69284@zibbi.meraka.csir.co.za>	<3a142e750809251159p3f5f3bam11243b3f144859c2@mail.gmail.com> <20080926055522.GA13842@zibbi.meraka.csir.co.za>

next in thread | previous in thread | raw e-mail | index | archive | help
John Hay wrote:
> On Thu, Sep 25, 2008 at 08:59:37PM +0200, Paul B. Mahol wrote:
>   
>> On 9/25/08, John Hay <jhay@meraka.org.za> wrote:
>>     
>>> On Thu, Sep 25, 2008 at 04:41:30PM +0200, Paul B. Mahol wrote:
>>>       
>>>> On 9/22/08, John Hay <jhay@meraka.org.za> wrote:
>>>>         
>>>>> Hi
>>>>>
>>>>> I'm trying out the new ath/wlan stuff in current. Should one still be
>>>>> able to set the bssid in adhoc mode? We normally lock the bssid in
>>>>> an adhoc network because of problems that the network split and does
>>>>> not merge, if you do not do it.
>>>>>
>>>>> What I have done is this:
>>>>>
>>>>> # ifconfig wlan0 create wlandev ath0 wlanmode adhoc
>>>>> # ifconfig wlan0 ssid ptamesh up
>>>>>
>>>>> Up to here works well. It will scan and if it finds another node with
>>>>> the
>>>>> same ssid, it will "lock" on that channel and use the correct bssid.
>>>>>
>>>>> If it does not find another node with the same ssid, it will start it
>>>>> own thing on channel 10. But it looks like one cannot set the bssid.
>>>>>
>>>>> # ifconfig wlan0 bssid 02:07:ca:fe:ba:be
>>>>> ifconfig: 02:07:ca:fe:ba:be: bad value
>>>>>           
>>>> I had similar experience with STA mode, instead I use ap (ap is alias
>>>> for bssid, at least it works in STA mode)
>>>> I never bothered is this bug in manual page, ifconfig or in something else
>>>> ...
>>>>         
>>> Ah, thanks yes, "ifconfig wlan0 ap 02:07:ca:fe:ba:be" works just fine.
>>> Just do not try to unset it with "ifconfig wlan0 ap -". That is an
>>> alias for "panic now" :-)
>>>       
>> Well, on my system it doesnt panic here.
>> So more info to debug "your" panic is required ...
>>     
>
> I'll have to see if I can reproduce it.
>
>   
>>> So it looks like ifconfig is getting confused with the many different
>>> uses of the keyword bssid.
>>>
>>> I must say I still do not understand what the other use for bssid is.
>>> Close to the end of ifconfig/ifieee80211.c there are these:
>>>
>>> DEF_CMD_ARG("bssid",            set80211bssid),
>>> DEF_CMD_ARG("ap",               set80211bssid),
>>> ...
>>> DEF_CLONE_CMD("bssid",  1,      set80211clone_bssid),
>>> DEF_CLONE_CMD("-bssid", 0,      set80211clone_bssid),
>>>
>>> So my guess is that I was hitting the clone version when in fact I
>>> needed the other version. Luckily ap does not have a clone version.
>>> So when should the clone version be used? And how does ifconfig
>>> decide which one to use?
>>>       
>
> I looked into the ifconfig code a bit more. I think that with the
> current code in the ifconfig() and cmd_lookup() functions, it is
> imposssible to have two different keywords that share the same
> keyword. cmd_lookup() will always search until it finds the first
> instance in the list and return that. The first instance in this
> case being the last one added.
>   

Correct.

> So either the code must change or one of the bssid keywords have
> to change. My suggestion would be to keep the bssid for which ap
> is an alias and change the other one. Anybody have a suggestion
> of what to change it to?
>
>   
I prefer to change the code to handle this ambiguity within 
ifieee80211.c.  You cannot use both together or at least they are 
redundant.  I'll look at it when I've got time; but don't let me 
distract you.

    Sam




Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?48DD210E.6050300>