Bug 128001 - wpa_supplicant(8), wlan(4), and wi(4) issues
Summary: wpa_supplicant(8), wlan(4), and wi(4) issues
Status: Open
Alias: None
Product: Base System
Classification: Unclassified
Component: bin (show other bugs)
Version: 8.0-CURRENT
Hardware: Any Any
: Normal Affects Only Me
Assignee: freebsd-bugs (Nobody)
URL:
Keywords:
Depends on:
Blocks:
 
Reported: 2008-10-10 15:20 UTC by david
Modified: 2018-01-03 05:13 UTC (History)
0 users

See Also:


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description david 2008-10-10 15:20:10 UTC
	wpa_supplicant(8) fails to properly associate with a WEP-only
	access point, and its man page fails to document command-line
	arguments with which it is invoked by default on a FreeBSD system.

Fix: 

Use a different NIC, though that isn't an attractive option,
	and may not always be feasible.

	I'll be happy to test.
How-To-Repeat: 	For the former, set up an access point to use WEP.  In my case, I
	have a couple of access points, one on channel 1; the other
	on channel 11, each of which uses the same static WEP key and the same
	list of permitted MAC addresses for clients.  Each uses the same
	SSID, and neither broadcasts it.

	This has worked well for years for plain WEP, and it still works for
	an an(4) device, as seen in the following ifconfig(8) output:

g1-37(8.0-C)[1] ifconfig
xl0: flags=8802<BROADCAST,SIMPLEX,MULTICAST> metric 0 mtu 1500
        options=9<RXCSUM,VLAN_MTU>
        ether 00:08:74:e9:c9:41
        media: Ethernet autoselect (none)
        status: no carrier
fwe0: flags=8802<BROADCAST,SIMPLEX,MULTICAST> metric 0 mtu 1500
        options=8<VLAN_MTU>
        ether 42:4f:c0:2c:30:41
        ch 1 dma -1
fwip0: flags=8802<BROADCAST,SIMPLEX,MULTICAST> metric 0 mtu 1500
        lladdr 42.4f.c0.0.7.2c.30.41.a.2.ff.fe.0.0.0.0
plip0: flags=108810<POINTOPOINT,SIMPLEX,MULTICAST,NEEDSGIANT> metric 0 mtu 1500
lo0: flags=8049<UP,LOOPBACK,RUNNING,MULTICAST> metric 0 mtu 16384
        inet6 fe80::1%lo0 prefixlen 64 scopeid 0x5 
        inet6 ::1 prefixlen 128 
        inet 127.0.0.1 netmask 0xff000000 
wi0: flags=8843<UP,BROADCAST,RUNNING,SIMPLEX,MULTICAST> metric 0 mtu 2290
        ether 00:02:2d:5b:2c:78
        media: IEEE 802.11 Wireless Ethernet autoselect mode 11b
        status: associated
an0: flags=8843<UP,BROADCAST,RUNNING,SIMPLEX,MULTICAST> metric 0 mtu 1500
        ether 00:40:96:40:5d:44
        inet 172.17.1.37 netmask 0xffff0000 broadcast 172.17.255.255
        media: IEEE 802.11 Wireless Ethernet autoselect (DS/11Mbps)
        status: associated
        ssid  1:lmdhw-net channel 1 (2412 Mhz 11b)
        stationname FreeBSD
        authmode OPEN privacy ON deftxkey 1 txpower 0 rtsthreshold 0
        fragthreshold 0 bmiss 0 ucastrate 0 mcastrate 0 mgmtrate 0 maxretry 0
        roaming DEVICE bintval 0
wlan0: flags=8843<UP,BROADCAST,RUNNING,SIMPLEX,MULTICAST> metric 0 mtu 1500
        ether 00:02:2d:5b:2c:78
        media: IEEE 802.11 Wireless Ethernet DS/2Mbps mode 11b
        status: associated
        ssid "" channel 3 (2422 Mhz 11b) bssid 00:02:2d:5b:2c:78
        country US authmode WPA1+WPA2/802.11i privacy ON deftxkey UNDEF
        txpower 0 bmiss 7 scanvalid 60 roaming MANUAL bintval 0
g1-37(8.0-C)[2] ancontrol -S | grep -i bssid
Current BSSID:          [ 00:04:5a:cd:d4:17 ]
g1-37(8.0-C)[3] 

	The highest-priority stanza in /etc/wpa_supplicant.conf -- slightly
	redacted (to hide the static WEP key) reads:

network={
        ssid="lmdhw-net"
        scan_ssid=1
        key_mgmt=NONE
        wep_tx_keyidx=0
        wep_key0=fedcba9876
        auth_alg=OPEN
        group=WEP40
        priority=127
}

	but as you see above, the wi0 NIC claims to be associated with 
	some other access point.

	The wi0 NIC in question works -- without the assistance of
	wpa_supplicant -- in the same environment when the same
	machine is running RELENG_6, so it isn't merely a matter
	of the access points not being configured to accept the MAC
	address of the NIC.

	Also, as I was preparing to try to debug this, I checked the
	curently-running wpa_supplicant process and saw:

g1-37(8.0-C)[3] ps ax | grep wpa
  529  ??  Ss     0:00.50 /usr/sbin/wpa_supplicant -s -B -i wlan0 -c /etc/wpa_supplicant.conf -D bsd -P /var/run/wpa_supplicant
  g1-37(8.0-C)[4] 

	but the wpa_supplicant man page does not document the -D or -P
	options:

g1-37(8.0-C)[5] man wpa_supplicant | egrep -- '-(s|B|D|P)'
     wpa_supplicant [-BdehLqsvw] -i ifname -c config-file
     -s      Send log messages through syslog(3) instead of to the terminal.
     -B      Detach from the controlling terminal and run as a daemon process
g1-37(8.0-C)[6]
Comment 1 Mark Linimon freebsd_committer freebsd_triage 2008-10-10 16:50:04 UTC
Responsible Changed
From-To: freebsd-bugs->freebsd-net

Over to maintainer(s).
Comment 2 david 2008-10-10 17:22:05 UTC
Follow-up:

Here's sme additional detail, as I was a bit rushed to get to work
when I filed the PR.

* The NIC is a "Dell TrueMobile 1150 Series PC Card" (in a miniPCI
  form factor).  That NIC is explicitly listed in wi(4) as supported.

* On killing & re-starting wpa-supplicant, ifconfig(8) shows another
  "fake" association to an access point with a null SSDI, but this
  time, using channel 8 (vs. the use of 3 in the previously-cited
  example).

* I have a 3rd access point (that is small enough that I'm in the habit
  of keeping it in my laptop bag when it's not in use).  Since it,
  unlike the previously-cited access points, is not normally being
  used by other folks, I can experiment with its settings as part
  of testing, if that would be useful.

* I also have available an iwi(4) miniPCI card for which wpa_supplicant
  has worked.  However, I'd prefer to minimize switching the miniPCI
  cards back & forth, as it's a bit difficult to get the antenna
  lead reconnected each time, and breaking the lead is pretty easy
  (I've managed to accomplish this once before, much to my chagrin
  and annoyance).

I will start poking around again to see if I can persuade wpa_cli
to do something useful.

Peace,
david
-- 
David H. Wolfskill				david@catwhisker.org
Depriving a girl or boy of an opportunity for education is evil.

See http://www.catwhisker.org/~david/publickey.gpg for my public key.
Comment 3 Eitan Adler freebsd_committer freebsd_triage 2017-12-31 07:59:36 UTC
For bugs matching the following criteria:

Status: In Progress Changed: (is less than) 2014-06-01

Reset to default assignee and clear in-progress tags.

Mail being skipped