← Back to team overview

desktop-packages team mailing list archive

[Bug 1545302] Re: wpa-roam broken by fix for ifupdown #1337873

 

Paul, I think that the real cause here is that (by looking into debian/ifupdown/functions.sh) wpasupplicant depends on the previous single-file ifstate.
Currently, for the sake of the locking mechanism, it has been split into an individual ifstate.$IFACE per interface, while wpasupplicant still checks for the state /run/network/ifstate.

This leads to loosing track of aliases and misusing of the locking.

I will work on fixing this for Ubuntu and Debian and will appreciate
your help in testing it as soon as a hotfix is ready.

Thanks!

-- 
You received this bug notification because you are a member of Desktop
Packages, which is subscribed to wpa in Ubuntu.
https://bugs.launchpad.net/bugs/1545302

Title:
  wpa-roam broken by fix for ifupdown #1337873

Status in wpa package in Ubuntu:
  Confirmed

Bug description:
  The following versions of ifupdown introduced a recursion check using "IFUPDOWN_<interface>" environment variables along with a new locking mechanism for ifup (see #1337873):
  0.7.47.2ubuntu4.2 (in Trusty)
  0.7.54ubuntu1.1 (in Wily)
  0.7.54ubuntu2 (in Xenial)

  This recursion check breaks the wpa-roam feature of wpasupplicant,
  preventing it from loading the logical interface specified by id_str
  after associating with an AP.  Specifically, after upgrading to one of
  the above ifupdown versions, the '/sbin/ifup -v --force
  "$WPA_IFACE=$WPA_LOGICAL_IFACE"' command run by wpa_action in
  functions.sh fails with an "ifup: recursion detected for parent
  interface wlan0 in post-up phase" error.

  To fix the issue, functions.sh needs to run `unset
  "IFDOWN_$WPA_IFACE"` before calling /sbin/ifup to prevent ifup from
  detecting the recursion.  The attached patch implements this change.

To manage notifications about this bug go to:
https://bugs.launchpad.net/ubuntu/+source/wpa/+bug/1545302/+subscriptions


References