Skip site navigation (1)Skip section navigation (2)
Date:      Mon, 5 Mar 2012 11:19:35 -0800
From:      Adrian Chadd <adrian@freebsd.org>
To:        Mitsuru IWASAKI <iwasaki@jp.freebsd.org>
Cc:        freebsd-current@freebsd.org, freebsd-wireless@freebsd.org
Subject:   Re: patches for if_iwi and wlan for WEP mode
Message-ID:  <CAJ-Vmon%2BmHYTEZPP7x4R3uSwXV_=fJFmdTimEieEaPMvFqEmmA@mail.gmail.com>
In-Reply-To: <20120306.024212.108736612.iwasaki@jp.FreeBSD.org>
References:  <20120306.024212.108736612.iwasaki@jp.FreeBSD.org>

next in thread | previous in thread | raw e-mail | index | archive | help
Hi!

(cc'ing freebsd-wireless, where we try to talk about this kind of stuff...)

On 5 March 2012 09:42, Mitsuru IWASAKI <iwasaki@jp.freebsd.org> wrote:
> Hi,
>
> I've fixed iwi(4) so that Intel(R) PRO/Wireless 2915ABG work
> in WEP mode, which seems to be broken since 8.0-RELEASE.

Thanks for looking into this!

I've not looked into ath(4) and WEP (ever, to be honest) - I really
should. I wonder if it's similarly broken. But if it isn't, ath(4)
doesn't yet use if_transmit/if_flush. That's on my TODO list (in order
to fix fragment handling, rather than WEP.)

Would you please open a PR with this particular issue and then attach
the patch to it?

I'd rather you not commit the net80211 change until I've verified that
WEP works or doesn't work with ath(4).

Thanks!


Adrian

>
> The patches against HEAD at:
> http://people.freebsd.org/~iwasaki/iwi/iwi-20120305.diff
>
> I'm not sure that changes on ieee80211 layer are right fixes,
> but all of mbufs were discarded in ieee80211_start() in WEP mode.
>
> ----
> void
> ieee80211_start(struct ifnet *ifp)
> {
> [snip]
> =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0if (ni->ni_associd =3D=3D =
0 &&
> =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0(ni->ni_flags & IE=
EE80211_NODE_ASSOCID)) {
> =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0IEEE80211_=
DISCARD_MAC(vap, IEEE80211_MSG_OUTPUT,
> =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0eh=
->ether_dhost, NULL,
> =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0"s=
ta not associated (type 0x%04x)",
> =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0ht=
ons(eh->ether_type));
> =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0vap->iv_st=
ats.is_tx_notassoc++;
> =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0ifp->if_oe=
rrors++;
> =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0m_freem(m)=
;
> =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0ieee80211_=
free_node(ni);
> =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0continue;
> =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0}
> ----
>
> My patches set IEEE80211_NODE_ASSOCID bit only if ni->ni_associd
> is set. =A0Any suggestions on this part are welcome.
>
> I'm going to commit the changes coming weekend.
>
> Thanks!
> _______________________________________________
> freebsd-current@freebsd.org mailing list
> http://lists.freebsd.org/mailman/listinfo/freebsd-current
> To unsubscribe, send any mail to "freebsd-current-unsubscribe@freebsd.org=
"



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?CAJ-Vmon%2BmHYTEZPP7x4R3uSwXV_=fJFmdTimEieEaPMvFqEmmA>