[pkg-wpa-devel] Bug#772763: wpasupplicant: ifupdown script should ignore wired interfaces

Raphaël Droz raphael.droz at gmail.com
Wed Dec 10 20:50:26 UTC 2014


Package: wpasupplicant
Version: 1.0-3+b1
Severity: normal


I've a wlan0 interfaces setup and working using wpasupplicant.
I've a custom configuration for eth0 (using guessnet).

Using `if-up -v eth0` triggers the scripts, and end-up executing *all*
if-pre.d/* scripts.
Strangely, wpasupplicant's ifupdown.sh "succeeds", runs a daemon and
creates a /var/run/wpa_action.eth0.pid

This is probably not expected.
Since there's no way to avoid execution of if-*.d/ on an interface
definition basis (interfaces(5)), wpasupplicant's ifupdown.sh should be
more "intelligent" about whether to run for an interface or not.

Currently only a check on $IFACE != lo is done but this is not sufficient.
Would wpasupplicant depend upon wireless-tools, it could check the return
value of `/sbin/iwconfig $IFACE`. But this is not the case.

Thus, in the attached patch, the script returns (code=0) if
/sys/class/net/$IFACE/phy80211 does not exist.
[patch against the version in Wheezy]


best regards



References:
http://anonscm.debian.org/viewvc/pkg-wpa/wpa/trunk/debian/ifupdown/wpasupplicant.sh?revision=1693&view=markup


--- /etc/wpa_supplicant/ifupdown.sh.save        2014-11-24 23:22:41.903406609 -0300
+++ /etc/wpa_supplicant/ifupdown.sh     2014-11-24 23:27:01.280692791 -0300
@@ -37,6 +37,11 @@
        exit 0
 fi

+# quit if we're called with a non-wireless interface
+if [ ! -e "/sys/class/net/$IFACE/phy80211" ]; then
+       exit 0
+fi
+
 # allow wpa_supplicant interface to be specified via wpa-iface
 # useful for starting wpa_supplicant on one interface of a bridge
 if [ -n "$IF_WPA_IFACE" ]; the



-- System Information:
Debian Release: 7.7
  APT prefers stable
  APT policy: (990, 'stable'), (90, 'unstable'), (90, 'testing'), (1, 'experimental')
Architecture: i386 (i686)

Kernel: Linux 3.16.0-4-686-pae (SMP w/1 CPU core)
Locale: LANG=fr_FR.UTF-8, LC_CTYPE=fr_FR.UTF-8 (charmap=UTF-8)
Shell: /bin/sh linked to /bin/dash

Versions of packages wpasupplicant depends on:
ii  adduser           3.113+nmu3
ii  initscripts       2.88dsf-41+deb7u1
ii  libc6             2.13-38+deb7u6
ii  libdbus-1-3       1.6.8-1+deb7u4
ii  libncurses5       5.9-10
ii  libnl-3-200       3.2.7-4
ii  libnl-genl-3-200  3.2.7-4
ii  libpcsclite1      1.8.4-1+deb7u1
ii  libreadline5      5.2+dfsg-2~deb7u1
ii  libssl1.0.0       1.0.1e-2+deb7u12
ii  libtinfo5         5.9-10
ii  lsb-base          4.1+Debian8+deb7u1

wpasupplicant recommends no packages.

Versions of packages wpasupplicant suggests:
pn  libengine-pkcs11-openssl  <none>
ii  wpagui                    1.0-3+b1

-- Configuration Files:
/etc/wpa_supplicant/ifupdown.sh changed [not included]

-- no debconf information



More information about the Pkg-wpa-devel mailing list