Date: Tue, 19 Oct 2010 18:48:35 +0200 From: Bernhard Schmidt <bschmidt@freebsd.org> To: Alexey Dokuchaev <danfe@freebsd.org> Cc: net@freebsd.org Subject: Re: Monitor mode not working for iwi(4) on 7.X Message-ID: <AANLkTikBhtpTRitvyA3i8g7AzSj_CY8a3s8HQjgiXWbF@mail.gmail.com> In-Reply-To: <20101016124152.GA95535@FreeBSD.org> References: <4763016D.7060100@janh.de> <201010081944.50287.bschmidt@techwires.net> <20101009060239.GA88618@FreeBSD.org> <201010092046.41551.bschmidt@techwires.net> <20101010072730.GA91527@FreeBSD.org> <20101016124152.GA95535@FreeBSD.org>
next in thread | previous in thread | raw e-mail | index | archive | help
Alexey Dokuchaev <danfe@freebsd.org>:
> On Sun, Oct 10, 2010 at 07:27:30AM +0000, Alexey Dokuchaev wrote:
>> On Sat, Oct 09, 2010 at 08:46:41PM +0200, Bernhard Schmidt wrote:
>> > On Saturday 09 October 2010 08:02:39 Alexey Dokuchaev wrote:
>> > > Much better! =A0"airodump-ng iwi0" now sees stations in addition to =
APs,
>> > > which means it can utilize monitor mode. =A0"ifconfig iwi0 scan" how=
ever
>> > > does not work after that (and "list scan" returns no results) even i=
f I
>> > > put adapter back to normal (from promisc and monitor modes) with
>> > > ifconfig(8). =A0kldunloading and loading module again fixes the issu=
e.
>> >
>> > Due to enqueueing the scan command in an infinite loop (yeah.. scannin=
g
>> > returns every frame, that's monitor mode for that device.. *sigh*) we
>> > might increment a queue index but never actually dequeueing the comman=
d.
>> > On 'down' we clear the command queue but not the indices resulting in
>> > the cur index not pointing to a filled entry. Attached patch should fi=
x
>> > that.
>>
>> It does, thanks! =A0"list scan" gets populated after I -mediaopt monitor
>> after scan; module reload is not required anymore.
>
> Not sure if this is a driver or ifconfig(8) problem, but after I -mediaop=
t
> monitor, ifconfig(8) still reports it in media line:
>
> =A0 =A0 =A0 =A0media: IEEE 802.11 Wireless Ethernet autoselect <monitor>
>
> However, as I said, scan list gets populated, which suggests ifconfig(8)
> is getting something wrong. =A0Doing -mediaopt monitor the second time
> "knocks" ifconfig(8) though.
I can't reproduce that on my stable/7 setup, neither in 'UP' nor in 'DOWN'
state. Can you post the exact command sequence you've used? The output
differs though..
# ifconfig iwi0 mediaopt monitor
# ifconfig iwi0 up
# ifconfig iwi0 | grep media
media: IEEE 802.11 Wireless Ethernet autoselect (autoselect <monitor>)
# ifconfig iwi0 -mediaopt monitor
# ifconfig iwi0 | grep media
media: IEEE 802.11 Wireless Ethernet autoselect
#
--
Bernhard
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?AANLkTikBhtpTRitvyA3i8g7AzSj_CY8a3s8HQjgiXWbF>
