From owner-freebsd-hackers@FreeBSD.ORG Thu Oct 14 08:22:00 2004 Return-Path: Delivered-To: freebsd-hackers@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 5752116A4CE for ; Thu, 14 Oct 2004 08:22:00 +0000 (GMT) Received: from crumpler-s1.mel.crumpler.com.au (b20FB.static.pacific.net.au [210.23.137.251]) by mx1.FreeBSD.org (Postfix) with ESMTP id 24BEA43D1F for ; Thu, 14 Oct 2004 08:21:59 +0000 (GMT) (envelope-from listsubs@crippy.mel.crumpler.com.au) Received: from [203.208.117.170] ([203.208.117.170]) by crumpler-s1.mel.crumpler.com.au over TLS secured channel with Microsoft SMTPSVC(5.0.2195.6713); Thu, 14 Oct 2004 18:21:56 +1000 Message-ID: <416E3722.9070705@crippy.mel.crumpler.com.au> Date: Thu, 14 Oct 2004 18:21:54 +1000 From: Phillip Crumpler User-Agent: Mozilla Thunderbird 0.7.3 (X11/20041004) X-Accept-Language: en-us, en MIME-Version: 1.0 To: hackers@freebsd.org Content-Type: text/plain; charset=ISO-8859-1; format=flowed Content-Transfer-Encoding: 7bit X-OriginalArrivalTime: 14 Oct 2004 08:21:57.0294 (UTC) FILETIME=[DECE9CE0:01C4B1C6] Subject: can WEP keys be set without resetting a wireless interface? X-BeenThere: freebsd-hackers@freebsd.org X-Mailman-Version: 2.1.1 Precedence: list List-Id: Technical Discussions relating to FreeBSD List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 14 Oct 2004 08:22:00 -0000 Hi hackers, Can anyone tell me why setting WEP keys on a wireless interface must result in the interface being reset? I have a wireless authenticator that wants to set random WEP keys and send them out to connected stations. Setting a key results in the interface being reset () the ioctl handler return ENETRESET), which kicks off all of the stations and forces them to reassociate. Trying to get around this I just updated the keys directly: wk = &ic->ic_nw_keys[nkidx]; arc4rand(wk->wk_key, wk->wk_len, 0); But the moment this happens everyone goes off the air. Of course, that is the short answer: the interface gets reset because it doesn't work if it's not :-) Can anyone provide a bit more detail or suggest a way around this? Thanks, Phillip Crumpler