|
List Info
Thread: ath(4) and stealth AP
|
|
| ath(4) and stealth AP |

|
2006-04-19 12:55:39 |
Tatoku Ogaito <tacha tack.fukui-med.ac.jp> writes:
> Hi,
>
> I'm having a problem with the ath(4) device recently.
>
> After the "Big update on ath and net80211",
> http://mail-index.netbsd.org/source-changes/2006
/03/02/0001.html,
> both of my ath on pci (ThinkPad X31) and ath on cardbus
cannot find
> wireless network which provided by stealth Access
Point.
>
> Since wi(4) and iwi(4) can connect the same network at
same time,
> I think it is the problem on ath.
>
> Also, when I change the AP setting to announce its
SSID, ath
> CAN connect to the network.
>
> Has anybody else noticed any problem like this ?
Not with ath, but with ral AND wpa_supplicant. It's unable
to
find the AP is SSID broadcast is off.
--
Rui Paulo <rpaulo {NetBSD{,-PT}.org,fnop.net}>
|
|
| ath(4) and stealth AP |

|
2006-04-19 16:05:51 |
Rui Paulo wrote:
> Tatoku Ogaito <tacha tack.fukui-med.ac.jp>
writes:
>
>> Hi,
>>
>> I'm having a problem with the ath(4) device
recently.
>>
>> After the "Big update on ath and
net80211",
>> http://mail-index.netbsd.org/source-changes/2006
/03/02/0001.html,
>> both of my ath on pci (ThinkPad X31) and ath on
cardbus cannot find
>> wireless network which provided by stealth Access
Point.
>>
>> Since wi(4) and iwi(4) can connect the same network
at same time,
>> I think it is the problem on ath.
>>
>> Also, when I change the AP setting to announce its
SSID, ath
>> CAN connect to the network.
>>
>> Has anybody else noticed any problem like this ?
>
> Not with ath, but with ral AND wpa_supplicant. It's
unable to
> find the AP is SSID broadcast is off.
>
Is the channel marked for passive scan only?
Sam
|
|
| ath(4) and stealth AP |

|
2006-04-19 16:50:37 |
Sam Leffler <sam errno.com> writes:
> Rui Paulo wrote:
>> Tatoku Ogaito <tacha tack.fukui-med.ac.jp>
writes:
>>
>>> Hi,
>>>
>>> I'm having a problem with the ath(4) device
recently.
>>>
>>> After the "Big update on ath and
net80211",
>>> http://mail-index.netbsd.org/source-changes/2006
/03/02/0001.html,
>>> both of my ath on pci (ThinkPad X31) and ath on
cardbus cannot find
>>> wireless network which provided by stealth
Access Point.
>>>
>>> Since wi(4) and iwi(4) can connect the same
network at same time,
>>> I think it is the problem on ath.
>>>
>>> Also, when I change the AP setting to announce
its SSID, ath CAN
>>> connect to the network.
>>>
>>> Has anybody else noticed any problem like this
?
>> Not with ath, but with ral AND wpa_supplicant.
It's unable to
>> find the AP is SSID broadcast is off.
>>
> Is the channel marked for passive scan only?
I think it was for active scan (if you mean scan_ssid=1),
but I'm
packaging and I already shut down the box..
--
Rui Paulo <rpaulo {NetBSD{,-PT}.org,fnop.net}>
|
|
| ath(4) and stealth AP |

|
2006-04-19 16:56:56 |
Rui Paulo wrote:
> Sam Leffler <sam errno.com> writes:
>
>> Rui Paulo wrote:
>>> Tatoku Ogaito <tacha tack.fukui-med.ac.jp>
writes:
>>>
>>>> Hi,
>>>>
>>>> I'm having a problem with the ath(4)
device recently.
>>>>
>>>> After the "Big update on ath and
net80211",
>>>> http://mail-index.netbsd.org/source-changes/2006
/03/02/0001.html,
>>>> both of my ath on pci (ThinkPad X31) and
ath on cardbus cannot find
>>>> wireless network which provided by stealth
Access Point.
>>>>
>>>> Since wi(4) and iwi(4) can connect the same
network at same time,
>>>> I think it is the problem on ath.
>>>>
>>>> Also, when I change the AP setting to
announce its SSID, ath CAN
>>>> connect to the network.
>>>>
>>>> Has anybody else noticed any problem like
this ?
>>> Not with ath, but with ral AND wpa_supplicant.
It's unable to
>>> find the AP is SSID broadcast is off.
>>>
>> Is the channel marked for passive scan only?
>
> I think it was for active scan (if you mean
scan_ssid=1), but I'm
> packaging and I already shut down the box..
>
Channels are marked passive according to local regulatory
constraints.
When scanning you're not supposed to send a probe req on a
channel setup
this way unless you know it's being used for 802.11
communication. The
code currently in cvs will listen on such channels but when
the ap is
not broadcasting it's ssid this is insufficient.
So was the ap setup on a channel marked for passive scan
only? In
freebsd you can tell by doing
ifconfig ath0 list chan
and channels marked passive have a '*'.
Sam
|
|
| ath(4) and stealth AP |

|
2006-04-19 17:46:43 |
On Wed, 19 Apr 2006 17:50:37 +0100, Rui Paulo <rpaulo fnop.net> wrote:
>
> > Is the channel marked for passive scan only?
>
> I think it was for active scan (if you mean
scan_ssid=1), but I'm
> packaging and I already shut down the box..
>
I can test tonight with an ath interface compiled from
yesterday's
source. I don't know the US regulatory constraints -- what
should I
expect to happen?
--Steven M. Bellovin, http://www.cs.columbi
a.edu/~smb
|
|
| ath(4) and stealth AP |

|
2006-04-20 14:31:59 |
Hi.
>> In Message <44466BD8.6010103 errno.com>
at Wed, 19 Apr 2006 09:56:56 -0700
Sam Leffler <sam errno.com> wrote:
> Channels are marked passive according to local
regulatory constraints.
> When scanning you're not supposed to send a probe req
on a channel setup
> this way unless you know it's being used for 802.11
communication. The
> code currently in cvs will listen on such channels but
when the ap is
> not broadcasting it's ssid this is insufficient.
>
> So was the ap setup on a channel marked for passive
scan only? In
> freebsd you can tell by doing
>
> ifconfig ath0 list chan
>
> and channels marked passive have a '*'.
Unfortunately the ifconfig bundled with NetBSD does not
support
"list command".
[tamp]/tmp% /sbin/ifconfig ath0 list chan
ifconfig: list: bad value
So I stole list_channels function (and required function)
from FreeBSD's
ifconfig, and I got the following results.
[tamp]/usr/current/src/sbin/ifconfig# ./ifconfig ath0
ath0:
flags=8843<UP,BROADCAST,RUNNING,SIMPLEX,MULTICAST> mtu
1500
Channel 1 : 2412* Mhz 11g Channel 10 : 2457* Mhz
11g
Channel 2 : 2417* Mhz 11g Channel 11 : 2462* Mhz
11g
Channel 3 : 2422* Mhz 11g Channel 12 : 2467* Mhz
11g
Channel 4 : 2427* Mhz 11g Channel 13 : 2472* Mhz
11g
Channel 5 : 2432* Mhz 11g Channel 14 : 2484* Mhz
11b
Channel 6 : 2437* Mhz 11g Channel 34 : 5170* Mhz
11a
Channel 7 : 2442* Mhz 11g Channel 38 : 5190* Mhz
11a
Channel 8 : 2447* Mhz 11g Channel 42 : 5210* Mhz
11a
Channel 9 : 2452* Mhz 11g Channel 46 : 5230* Mhz
11a
....
What shall/can I do next ?
Thanks
Tacha
|
|
| ath(4) and stealth AP |

|
2006-04-20 16:10:15 |
Tatoku Ogaito wrote:
> Hi.
>
>>> In Message <44466BD8.6010103 errno.com>
> at Wed, 19 Apr 2006 09:56:56 -0700
> Sam Leffler <sam errno.com> wrote:
>
> > Channels are marked passive according to local
regulatory constraints.
> > When scanning you're not supposed to send a
probe req on a channel setup
> > this way unless you know it's being used for
802.11 communication. The
> > code currently in cvs will listen on such
channels but when the ap is
> > not broadcasting it's ssid this is insufficient.
> >
> > So was the ap setup on a channel marked for
passive scan only? In
> > freebsd you can tell by doing
> >
> > ifconfig ath0 list chan
> >
> > and channels marked passive have a '*'.
>
>
> Unfortunately the ifconfig bundled with NetBSD does not
support
> "list command".
>
> [tamp]/tmp% /sbin/ifconfig ath0 list chan
> ifconfig: list: bad value
>
> So I stole list_channels function (and required
function) from FreeBSD's
> ifconfig, and I got the following results.
>
> [tamp]/usr/current/src/sbin/ifconfig# ./ifconfig ath0
> ath0:
flags=8843<UP,BROADCAST,RUNNING,SIMPLEX,MULTICAST> mtu
1500
> Channel 1 : 2412* Mhz 11g Channel 10 :
2457* Mhz 11g
> Channel 2 : 2417* Mhz 11g Channel 11 :
2462* Mhz 11g
> Channel 3 : 2422* Mhz 11g Channel 12 :
2467* Mhz 11g
> Channel 4 : 2427* Mhz 11g Channel 13 :
2472* Mhz 11g
> Channel 5 : 2432* Mhz 11g Channel 14 :
2484* Mhz 11b
> Channel 6 : 2437* Mhz 11g Channel 34 :
5170* Mhz 11a
> Channel 7 : 2442* Mhz 11g Channel 38 :
5190* Mhz 11a
> Channel 8 : 2447* Mhz 11g Channel 42 :
5210* Mhz 11a
> Channel 9 : 2452* Mhz 11g Channel 46 :
5230* Mhz 11a
> ....
>
>
> What shall/can I do next ?
I have changes in freebsd to dtrt. I started to import them
yesterday
but netbsd locked up on my dell 600m when I brought up an
ath interface
so I set it aside. This is a GENERIC_LAPTOP kernel from cvs
of
yesterday morning w/o any mods fwiw.
Sam
|
|
| ath(4) and stealth AP |

|
2006-05-01 13:54:30 |
Hi.
I updated my ThinkPad X31 to current as of 30 Apr, 2006.
In my case, bringing up an ath interface does not lock up
my system. Although the ath cannot find stealth AP,
it works w/ normal AP.
Just FYI.
Tacha
|
|
| Array |

|
1969-12-31 18:00:00 |
Hello again.
>> In Message <4447B267.70201 errno.com>
at Thu, 20 Apr 2006 09:10:15 -0700
Sam Leffler <sam errno.com> wrote:
> I have changes in freebsd to dtrt. I started to
import them yesterday
I digged a cvsweb.freebsd.org and found that you fixed the
probelm in
http://freebsd.rambler.ru/bsdmail/cvs-src_2006/msg03
210.html
Relevant diffs for our tree are as follows and this works
for me well.
May I commit them ?
TIA
Tacha
Index: src/sys/net80211/ieee80211_input.c
============================================================
=======
RCS file:
/cvsroot/NetBSD-cvs/main/src/sys/net80211/ieee80211_input.c,
v
Prereq: 1.59
diff -u -p -r1.59 ieee80211_input.c
 -2092,6
+2092,18  ieee80211_recv_mgmt(struct ieee80211com
* If scanning, just pass information to the scan module.
*/
if (ic->ic_flags & IEEE80211_F_SCAN) {
+ if (ic->ic_flags_ext & IEEE80211_FEXT_PROBECHAN)
{
+ /*
+ * Actively scanning a channel marked passive;
+ * send a probe request now that we know there
+ * is 802.11 traffic present.
+ *
+ * XXX check if the beacon we recv'd gives
+ * us what we need and suppress the probe req
+ */
+ ieee80211_probe_curchan(ic, 1);
+ ic->ic_flags_ext &= ~IEEE80211_FEXT_PROBECHAN;
+ }
ieee80211_add_scan(ic, &scan, wh,
subtype, rssi, rstamp);
return;
Index: src/sys/net80211/ieee80211_node.c
============================================================
=======
RCS file:
/cvsroot/NetBSD-cvs/main/src/sys/net80211/ieee80211_node.c,v
Prereq: 1.56
diff -u -p -r1.56 ieee80211_node.c
 -340,6
+340,7  ieee80211_next_scan(struct ieee80211com
* flushing anything queued in the driver and below.
*/
ic->ic_mgt_timer = 0;
+ ic->ic_flags_ext &= ~IEEE80211_FEXT_PROBECHAN;
chan = ic->ic_curchan;
do {
 -366,6
+367,31  ieee80211_next_scan(struct ieee80211com
return 0;
}
+/*
+ * Probe the curent channel, if allowed, while scanning.
+ * If the channel is not marked passive-only then send
+ * a probe request immediately. Otherwise mark state and
+ * listen for beacons on the channel; if we receive
something
+ * then we'll transmit a probe request.
+ */
+void
+ieee80211_probe_curchan(struct ieee80211com *ic, int force)
+{
+ struct ifnet *ifp = ic->ic_ifp;
+
+ if ((ic->ic_curchan->ic_flags &
IEEE80211_CHAN_PASSIVE) == 0 || force) {
+ /*
+ * XXX send both broadcast+directed probe request
+ */
+ ieee80211_send_probereq(ic->ic_bss,
+ ic->ic_myaddr, ifp->if_broadcastaddr,
+ ifp->if_broadcastaddr,
+ ic->ic_des_essid, ic->ic_des_esslen,
+ ic->ic_opt_ie, ic->ic_opt_ie_len);
+ } else
+ ic->ic_flags_ext |= IEEE80211_FEXT_PROBECHAN;
+}
+
static __inline void
copy_bss(struct ieee80211_node *nbss, const struct
ieee80211_node *obss)
{
 -610,6
+636,7  ieee80211_cancel_scan(struct ieee80211co
(ic->ic_flags & IEEE80211_F_ASCAN) ?
"active" : "passive");
ic->ic_flags &= ~(IEEE80211_F_SCAN |
IEEE80211_F_ASCAN);
+ ic->ic_flags_ext &= ~IEEE80211_FEXT_PROBECHAN;
}
/*
Index: src/sys/net80211/ieee80211_node.h
============================================================
=======
RCS file:
/cvsroot/NetBSD-cvs/main/src/sys/net80211/ieee80211_node.h,v
Prereq: 1.21
diff -u -p -r1.21 ieee80211_node.h
 -191,6
+191,7  void ieee80211_node_unauthorize(struct i
void ieee80211_begin_scan(struct ieee80211com *, int);
int ieee80211_next_scan(struct ieee80211com *);
+void ieee80211_probe_curchan(struct ieee80211com *, int);
void ieee80211_create_ibss(struct ieee80211com*, struct
ieee80211_channel *);
void ieee80211_reset_bss(struct ieee80211com *);
void ieee80211_cancel_scan(struct ieee80211com *);
Index: src/sys/net80211/ieee80211_proto.c
============================================================
=======
RCS file:
/cvsroot/NetBSD-cvs/main/src/sys/net80211/ieee80211_proto.c,
v
Prereq: 1.24
diff -u -p -r1.24 ieee80211_proto.c
 -991,19
+991,11  ieee80211_newstate(struct ieee80211com *
break;
case IEEE80211_S_SCAN:
/*
- * Scan next. If doing an active scan and the
- * channel is not marked passive-only then send
- * a probe request. Otherwise just listen for
- * beacons on the channel.
+ * Scan next. If doing an active scan probe
+ * for the requested ap (if any).
*/
- if ((ic->ic_flags & IEEE80211_F_ASCAN) &&
- (ic->ic_curchan->ic_flags &
IEEE80211_CHAN_PASSIVE) == 0) {
- ieee80211_send_probereq(ni,
- ic->ic_myaddr, ifp->if_broadcastaddr,
- ifp->if_broadcastaddr,
- ic->ic_des_essid, ic->ic_des_esslen,
- ic->ic_opt_ie, ic->ic_opt_ie_len);
- }
+ if (ic->ic_flags & IEEE80211_F_ASCAN)
+ ieee80211_probe_curchan(ic, 0);
break;
case IEEE80211_S_RUN:
/* beacon miss */
Index: src/sys/net80211/ieee80211_var.h
============================================================
=======
RCS file:
/cvsroot/NetBSD-cvs/main/src/sys/net80211/ieee80211_var.h,v
Prereq: 1.24
diff -u -p -r1.24 ieee80211_var.h
 -256,6
+256,7  extern struct ieee80211com_head ieee8021
#define IEEE80211_FEXT_WDS 0x00000001 /* CONF: 4 addr
allowed */
/* 0x00000006 reserved */
#define IEEE80211_FEXT_BGSCAN 0x00000008 /* STATUS: enable
full bgscan completion */
+#define IEEE80211_FEXT_PROBECHAN 0x00020000 /* CONF: probe
passive channel*/
/* ic_caps */
#define IEEE80211_C_WEP 0x00000001 /* CAPABILITY: WEP
available */
|
|
| Array |

|
1969-12-31 18:00:00 |
Tatoku Ogaito wrote:
> I digged a cvsweb.freebsd.org and found that you fixed
the probelm in
> http://freebsd.rambler.ru/bsdmail/cvs-src_2006/msg03
210.html
>
> Relevant diffs for our tree are as follows and this
works for me well.
> May I commit them ?
I overlooked the beginnings of this thread in April, so just
to check
if I understand the issue correctly -
This is a change that adds the ability to associate with a
stealth AP
when the channel used is declared passive-only in the local
regulatory
domain?
And the reason I have never had a problem with my ath
associating with
my stealth AP on chan 11 must be that chan 11 is not
passive-only in
the US (or in my part of the US)?
Just checking to make sure I'm not missing something.
Thanks!
-Chap
|
|
|
|