From: Ivo van Doorn <ivdoorn@gmail.com>
To: Johannes Berg <johannes@sipsolutions.net>
Cc: "John W. Linville" <linville@tuxdriver.com>,
linux-wireless@vger.kernel.org
Subject: Re: [PATCH 18/24] rt2x00: Add Multicast/Broadcast filtering
Date: Fri, 3 Aug 2007 17:09:39 +0200 [thread overview]
Message-ID: <200708031709.39208.IvDoorn@gmail.com> (raw)
In-Reply-To: <1186149676.4647.42.camel@johannes.berg>
On Friday 03 August 2007, Johannes Berg wrote:
> On Tue, 2007-07-31 at 20:37 +0200, Ivo van Doorn wrote:
>
> > + if (is_monitor_present(intf)) {
> > + filter = IFF_PROMISC | IFF_MULTICAST | IFF_BROADCAST;
> > + if (intf->filter != filter)
> > + __set_bit(PACKET_FILTER_PENDING, &rt2x00dev->flags);
> > + }
>
> Don't do that. There's no requirement that monitor mode interfaces
> always be promisc. Also, earlier in the code:
Note that this "Enable promisc" on monitor mode here will only be send to
the device. It does not mean that the non-monitor mode will have promisc
mode enabled. In fact, when the monitor interface goes down, the normal
setting will be used again.
If with monitor mode, IFF_PROMISC is not send to the device, monitor
mode is useless since it will not catch anything except beacons
(Especially true when you only have 1 interface which is in monitor mode)
> > + int promisc = !!(filter & IFF_PROMISC);
> > + int multicast = !!(filter & IFF_MULTICAST);
> > + int broadcast = !!(filter & IFF_BROADCAST);
> > u32 reg;
> >
> > rt2x00pci_register_read(rt2x00dev, RXCSR0, ®);
> > rt2x00_set_field32(®, RXCSR0_DROP_NOT_TO_ME, !promisc);
> > + rt2x00_set_field32(®, RXCSR0_DROP_MCAST, !multicast);
> > + rt2x00_set_field32(®, RXCSR0_DROP_BCAST, !broadcast);
> > rt2x00pci_register_write(rt2x00dev, RXCSR0, reg);
>
> Depending on how the hardware behaves I think promisc should imply the
> other two, it seems likely that even with DROP_NOT_TO_ME turned off you
> won't be getting multicast traffic and promisc should see that too.
Setting those 2 registers is having them at least configurable instead of having
them always to 0. At least now the user has some control over them. ;)
Ivo
next prev parent reply other threads:[~2007-08-03 15:05 UTC|newest]
Thread overview: 9+ messages / expand[flat|nested] mbox.gz Atom feed top
2007-07-31 18:37 [PATCH 18/24] rt2x00: Add Multicast/Broadcast filtering Ivo van Doorn
2007-08-03 14:01 ` Johannes Berg
2007-08-03 15:09 ` Ivo van Doorn [this message]
2007-08-03 15:20 ` Johannes Berg
2007-08-03 15:36 ` Ivo van Doorn
2007-08-03 15:42 ` Johannes Berg
2007-08-03 16:04 ` Ivo van Doorn
2007-08-03 19:34 ` Johannes Berg
2007-08-03 20:11 ` Michael Buesch
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=200708031709.39208.IvDoorn@gmail.com \
--to=ivdoorn@gmail.com \
--cc=johannes@sipsolutions.net \
--cc=linux-wireless@vger.kernel.org \
--cc=linville@tuxdriver.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).