#559040 SIOCSIFFLAGS: Unknown error 132 for interface with rfkill enabled

Package:
wpasupplicant
Source:
wpa
Description:
client support for WPA and WPA2 (IEEE 802.11i)
Submitter:
Joachim Breitner
Date:
2010-01-20 10:45:03 UTC
Severity:
normal
#559040#5
Date:
2009-12-01 13:07:41 UTC
From:
To:
Hi,

since a short while (maybe kernel 2.6.31, not sure), wpa_supplicant (in
roamding mode) does not start when the rfkill switch for my wireless
interface is enabled:

$ /sbin/wpa_supplicant -s -B -P /var/run/wpa_supplicant.wlan0.pid -i wlan0 -W -D wext -c /etc/wpa_supplicant/wpa_supplicant.conf
SIOCSIFFLAGS: Unknown error 132

strace output:

munmap(0x7f145716f000, 4096)            = 0
socket(PF_INET, SOCK_DGRAM, IPPROTO_IP) = 4
socket(PF_NETLINK, SOCK_RAW, 0)         = 5
bind(5, {sa_family=AF_NETLINK, pid=0, groups=00000001}, 12) = 0
ioctl(4, SIOCGIFFLAGS, {ifr_name="wlan0", ifr_flags=IFF_BROADCAST|IFF_MULTICAST}) = 0
ioctl(4, SIOCSIFFLAGS, {ifr_name="wlan0", ???}) = -1 ERFKILL (Unknown error 132)
dup(2)                                  = 6
fcntl(6, F_GETFL)                       = 0x8002 (flags O_RDWR|O_LARGEFILE)
fstat(6, {st_mode=S_IFCHR|0620, st_rdev=makedev(136, 3), ...}) = 0

Judging from the strace output, the kernel has a new error condition for
rkill-disabled interfaces that wpa_supplicant does not handle.

This bug causes wpa_supplicant to exit and it is available any more when
the killswitch is disabled. I have to manually run
$ ifdown --force wlan0; ifup wlan0
to enable it again.

Greetings,
Joachim

- -- System Information:
Debian Release: squeeze/sid
  APT prefers unstable
  APT policy: (500, 'unstable'), (1, 'experimental')
Architecture: amd64 (x86_64)

Kernel: Linux 2.6.31-1-amd64 (SMP w/2 CPU cores)
Locale: LANG=de_DE.UTF-8, LC_CTYPE=de_DE.UTF-8 (charmap=UTF-8)
Shell: /bin/sh linked to /bin/dash

Versions of packages wpasupplicant depends on:
ii  adduser                       3.111      add and remove users and groups
ii  libc6                         2.10.2-2   GNU C Library: Shared libraries
ii  libdbus-1-3                   1.2.16-2   simple interprocess messaging syst
ii  libnl1                        1.1-5      library for dealing with netlink s
ii  libpcsclite1                  1.5.5-1    Middleware to access a smart card
ii  libreadline5                  5.2-7      GNU readline and history libraries
ii  libssl0.9.8                   0.9.8k-6   SSL shared libraries
ii  lsb-base                      3.2-23     Linux Standard Base 3.2 init scrip

wpasupplicant recommends no packages.

Versions of packages wpasupplicant suggests:
pn  libengine-pkcs11-openssl      <none>     (no description available)
pn  wpagui                        <none>     (no description available)

- -- no debconf information
iEYEARECAAYFAksVFRUACgkQ9ijrk0dDIGyklQCfdhDHm944iL5Fy6IKkfC3zxqV
IGgAnjX+mVssl/cGPUIrwI1TlBwh0zf9
=zGLc
-----END PGP SIGNATURE-----

#559040#10
Date:
2009-12-03 10:49:48 UTC
From:
To:
Hi again,

Am Dienstag, den 01.12.2009, 14:07 +0100 schrieb Joachim Breitner:
helps:

SIOCSIFFLAGS: Unknown error 132
Could not set interface 'wlan0' UP
Failed to initialize driver interface
Failed to add interface wlan0
Cancelling scan request
Cancelling authentication timeout


Greetings,
Joachim

#559040#15
Date:
2010-01-20 10:14:09 UTC
From:
To:
I am having the same issue. However, everything does work on startup and
continues to work until calling wpa_supplicant manually or ifdown.
Additionally, it can be 'fixed' by removing the driver module (I'm using
b43) and re-inserting it, then running /etc/init.d/networking restart.
While it is 'working', iwlist scanning returns nothing. I'm also
attaching the results from running wpa_supplicant -ddd. It seems to me
that it isn't necessarily an issue in WPA but in the driver (at least in
my case), as it is failing to get anything from an AP scan. Hope that
helps someone!

Cheers,
Christopher