[pkg-wpa-devel] r1043 - in /wpasupplicant/trunk/debian: NEWS changelog patches/37_rm_wait_for_interface.patch patches/series

kelmo-guest at users.alioth.debian.org kelmo-guest at users.alioth.debian.org
Mon Jan 14 08:38:00 UTC 2008


Author: kelmo-guest
Date: Mon Jan 14 08:38:00 2008
New Revision: 1043

URL: http://svn.debian.org/wsvn/pkg-wpa/?sc=1&rev=1043
Log:
* Add debian/patches/37_rm_wait_for_interface.patch to remove the -w (wait
  for network interface) option. External hotplug agents are now required to
  handle this use case, as this option has been broken for many months and
  adds extra complexity to wpa_supplicant driver interface initialization.
  (Closes: #350963)
* Update debian/NEWS to alert users about the removal of the -w command line
  option.
* Truncate debian/NEWS, none of the items are relevant for current upgrade
  paths, nor do they hold any historical relevance.

Added:
    wpasupplicant/trunk/debian/patches/37_rm_wait_for_interface.patch
Modified:
    wpasupplicant/trunk/debian/NEWS
    wpasupplicant/trunk/debian/changelog
    wpasupplicant/trunk/debian/patches/series

Modified: wpasupplicant/trunk/debian/NEWS
URL: http://svn.debian.org/wsvn/pkg-wpa/wpasupplicant/trunk/debian/NEWS?rev=1043&op=diff
==============================================================================
--- wpasupplicant/trunk/debian/NEWS (original)
+++ wpasupplicant/trunk/debian/NEWS Mon Jan 14 08:38:00 2008
@@ -1,85 +1,19 @@
-wpasupplicant (0.5.4-3) unstable; urgency=low
+wpasupplicant (0.6.2-2) unstable; urgency=low
 
-  Support for random 'wpa-action' scripts has been totally removed for the
-  following reasons:
+  The -w (wait for network interface to exist) command line option no longer
+  exists. If you have scripts that require this option, it is time to change
+  them, or use one of the two supported modes of operation explained at
+  /usr/share/doc/wpasupplicant/README.modes.gz.
 
-   * They were unmaintainable. They were not installed or updated along with
-     each new package, rather, they were user managed.
-   * The program code required to support them was relatively crude.
-   * This functionality is obsoleted by a more comprehensive 'roaming' action
-     script that controls ifupdown.
+  ifupdown supports hot-plugged network devices via the "allow-hotplug" class
+  of operation. An example /etc/network/interfaces configuration stanza would
+  look like:
 
-  Please refer to /usr/share/doc/wpasupplicant/README.modes and
-  wpa_action(8) for details about wpa-roam, and how to obtain the
-  behaviour that wpa-action scripts "tried" to achieve.
+  allow-hotplug ath0
+  iface ath0 inet dhcp
+          wpa-ssid myssid
+          wpa-psk mysecretpassphrase
 
- -- Kel Modderman <kelrin at tpg.com.au>  Sun, 30 Jul 2006 05:49:28 +1000
+  network-manager is also able to handle hot-plugged network devices.
 
-wpasupplicant (0.5.3+20060522-3) unstable; urgency=low
-
-  IF YOU ARE CURRENTLY USING -D madwifi THIS UPLOAD BROKE YOUR CONNECTION!
-  PLEASE UPGRADE YOUR WLAN DRIVERS TO CURRENT MADWIFI!
-
-  Support for the madwifi driver has changed in this release. The so called
-  'madwifi-old' driver is no longer supported, instead we included the headers
-  from madwifi-ng (madwifi.org svn trunk) to allow support for the new private
-  ioctl's in that codebase. Also note that madwifi-ng supports the 'wext'
-  ioctl's when compiled and used with a linux kernel >= 2.6.14.
-
-  More information about the new madwifi driver can be found on the
-  madwifi.org wiki:
-    
-    http://madwifi.org/
-
-  Also visit the pkg-madwifi maintainers page, hosted on madwifi.org's wiki
-  for information specific to installing and using madwifi-ng on debian:
-
-    http://pkg-madwifi.alioth.debian.org/
-
- -- Kel Modderman <kelrin at tpg.com.au>  Tue, 13 Jun 2006 22:33:16 +1000
-
-wpasupplicant (0.4.8-1) unstable; urgency=low
-
-  IF YOU HAVE USED WPASUPPLICANT BEFORE, THIS UPGRADE PROBABLY BROKE YOUR
-  CONNECTION!
-
-  This package does not ship any configuration to wpasupplicant in
-  /etc/{wpa_supplicant/,}wpa{,_}supplicant.conf anymore. There is no
-  sensible default configuration which would make sense to be started on
-  every machine. Therefore, in order to actually use wpasupplicant in
-  this package, you are required to edit your /etc/network/interfaces in
-  order to start wpasupplicant. Please read the file README.modes in
-  /usr/share/doc/wpasupplicant for more information about the supported
-  stanzas in /etc/network/interfaces.
-
-  Roaming between networks is now supported by a wpa_cli action script.
-  Please read /usr/share/doc/wpasupplicant/README.modes for a guide on how
-  to configure wpasupplicant to best suit your requirements.
-
- -- Reinhard Tartler <siretart at tauware.de>  Fri, 31 Mar 2006 09:43:14 +0200
-
-wpasupplicant (0.5.2-1) experimental; urgency=low
-
-  The installed wpa_* binaries have moved. They are installed to the
-  following locations:-
-  
-      /sbin/wpa_cli
-      /sbin/wpa_supplicant
-      /usr/bin/wpa_passphrase
-
-  Please adjust your scripts as neccessary.
-  
- -- Kel Modderman <kelrin at tpg.com.au>  Tue, 21 Mar 2006 21:16:57 +1000
-
-wpasupplicant (0.4.7-1) unstable; urgency=low
-
-  This version is designed for Wireless Extensions 19 and so will work
-  with Linux kernel 2.6.14. It works with earlier versions of linux as well.
-
-  WPA support was added in Wireless Extensions 18 and should
-  therefore exist in new (2.6.14-compliant) drivers, including
-  ipw2200 v1.0.8. In order to take advantage of this new support you need to
-  invoke wpasupplicant with the wext driver ("-D wext" in
-  /etc/default/wpasupplicant for instance, instead of "-D ipw" say).
-
- -- Reinhard Tartler <siretart at tauware.de>  Fri, 10 Feb 2006 11:15:34 +0100
+ -- Kel Modderman <kel at otaku42.de>  Mon, 14 Jan 2008 18:02:17 +1000

Modified: wpasupplicant/trunk/debian/changelog
URL: http://svn.debian.org/wsvn/pkg-wpa/wpasupplicant/trunk/debian/changelog?rev=1043&op=diff
==============================================================================
--- wpasupplicant/trunk/debian/changelog (original)
+++ wpasupplicant/trunk/debian/changelog Mon Jan 14 08:38:00 2008
@@ -12,8 +12,17 @@
     advantage of `disable_network all` and `enable_network all` via wpa_gui.
   * Add debian/patches/33_wpa_gui_qt4_save_config.patch to allow configuration
     to be saved from file menu item.
-
- -- Kel Modderman <kel at otaku42.de>  Mon, 14 Jan 2008 12:16:19 +1000
+  * Add debian/patches/37_rm_wait_for_interface.patch to remove the -w (wait
+    for network interface) option. External hotplug agents are now required to
+    handle this use case, as this option has been broken for many months and
+    adds extra complexity to wpa_supplicant driver interface initialization.
+    (Closes: #350963)
+  * Update debian/NEWS to alert users about the removal of the -w command line
+    option.
+  * Truncate debian/NEWS, none of the items are relevant for current upgrade
+    paths, nor do they hold any historical relevance.
+
+ -- Kel Modderman <kel at otaku42.de>  Mon, 14 Jan 2008 18:33:02 +1000
 
 wpasupplicant (0.6.2-1) experimental; urgency=low
 

Added: wpasupplicant/trunk/debian/patches/37_rm_wait_for_interface.patch
URL: http://svn.debian.org/wsvn/pkg-wpa/wpasupplicant/trunk/debian/patches/37_rm_wait_for_interface.patch?rev=1043&op=file
==============================================================================
--- wpasupplicant/trunk/debian/patches/37_rm_wait_for_interface.patch (added)
+++ wpasupplicant/trunk/debian/patches/37_rm_wait_for_interface.patch Mon Jan 14 08:38:00 2008
@@ -1,0 +1,298 @@
+--- a/wpa_supplicant/README
++++ b/wpa_supplicant/README
+@@ -530,10 +530,9 @@
+ 
+ In most common cases, wpa_supplicant is started with
+ 
+-wpa_supplicant -Bw -c/etc/wpa_supplicant.conf -iwlan0
++wpa_supplicant -B -c/etc/wpa_supplicant.conf -iwlan0
+ 
+-This makes the process fork into background and wait for the wlan0
+-interface if it is not available at startup time.
++This makes the process fork into background.
+ 
+ The easiest way to debug problems, and to get debug log for bug
+ reports, is to start wpa_supplicant on foreground with debugging
+@@ -907,10 +906,6 @@
+ completed before data frames can be exchanged, so wpa_supplicant
+ should be started before DHCP client.
+ 
+-Command line option '-w' can be used if wpa_supplicant is started
+-before the wireless LAN interface is present (e.g., before inserting
+-the PC Card) or is not yet up.
+-
+ For example, following small changes to pcmcia-cs scripts can be used
+ to enable WPA support:
+ 
+@@ -921,7 +916,7 @@
+ /etc/pcmcia/wireless:
+ 
+     if [ "$WPA" = "y" -a -x /usr/local/bin/wpa_supplicant ]; then
+-	/usr/local/bin/wpa_supplicant -Bw -c/etc/wpa_supplicant.conf \
++	/usr/local/bin/wpa_supplicant -B -c/etc/wpa_supplicant.conf \
+ 		-i$DEVICE
+     fi
+ 
+@@ -933,9 +928,7 @@
+     fi
+ 
+ This will make cardmgr start wpa_supplicant when the card is plugged
+-in. wpa_supplicant will wait until the interface is set up--either
+-when a static IP address is configured or when DHCP client is
+-started--and will then negotiate keys with the AP.
++in.
+ 
+ 
+ 
+--- a/wpa_supplicant/doc/docbook/wpa_supplicant.sgml
++++ b/wpa_supplicant/doc/docbook/wpa_supplicant.sgml
+@@ -12,7 +12,7 @@
+   <refsynopsisdiv>
+     <cmdsynopsis>
+       <command>wpa_supplicant</command>
+-      <arg>-BddfhKLqqtuvwW</arg>
++      <arg>-BddfhKLqqtuvW</arg>
+       <arg>-i<replaceable>ifname</replaceable></arg>
+       <arg>-c<replaceable>config file</replaceable></arg>
+       <arg>-D<replaceable>driver</replaceable></arg>
+@@ -67,10 +67,7 @@
+     <para>Before wpa_supplicant can do its work, the network interface
+     must be available.  That means that the physical device must be
+     present and enabled, and the driver for the device must have be
+-    loaded.  Note, however, that the '-w' option of the wpa_supplicant
+-    daemon instructs the daemon to continue running and to wait for
+-    the interface to become available.  Without the '-w' option, the
+-    daemon will exit immediately if the device is not already
++    loaded. The daemon will exit immediately if the device is not already
+     available.</para>
+ 
+     <para>After <command>wpa_supplicant</command> has configured the
+@@ -454,15 +451,6 @@
+       </varlistentry>
+ 
+       <varlistentry>
+-	<term>-w</term>
+-	<listitem>
+-	  <para>Wait for interface to be added, if needed.  Normally,
+-	  <command>wpa_supplicant</command> will exit if the interface
+-	  is not there yet.</para>
+-	</listitem>
+-      </varlistentry>
+-
+-      <varlistentry>
+ 	<term>-W</term>
+ 	<listitem>
+ 	  <para>Wait for a control interface monitor before starting.</para>
+@@ -485,11 +473,10 @@
+     started with:</para>
+ 
+ <blockquote><programlisting>
+-wpa_supplicant -Bw -c/etc/wpa_supplicant.conf -iwlan0
++wpa_supplicant -B -c/etc/wpa_supplicant.conf -iwlan0
+ </programlisting></blockquote>
+ 
+-    <para>This makes the process fork into background and wait for the wlan0
+-    interface if it is not available at startup time.</para>
++    <para>This makes the process fork into background.</para>
+ 
+     <para>The easiest way to debug problems, and to get debug log for
+     bug reports, is to start <command>wpa_supplicant</command> on
+@@ -754,7 +741,7 @@
+ 
+     <blockquote><programlisting>
+ if [ "$WPA" = "y" -a -x /usr/local/bin/wpa_supplicant ]; then
+-    /usr/local/bin/wpa_supplicant -Bw -c/etc/wpa_supplicant.conf -i$DEVICE
++    /usr/local/bin/wpa_supplicant -B -c/etc/wpa_supplicant.conf -i$DEVICE
+ fi
+     </programlisting></blockquote>
+ 
+@@ -771,10 +758,7 @@
+ 
+     <para>This will make <command>cardmgr</command> start
+     <command>wpa_supplicant</command> when the card is plugged
+-    in. <command>wpa_supplicant</command> will wait until the
+-    interface is set up--either when a static IP address is configured
+-    or when DHCP client is started--and will then negotiate keys with
+-    the AP.</para>
++    in.</para>
+   </refsect1>
+ 
+   <refsect1>
+--- a/wpa_supplicant/events.c
++++ b/wpa_supplicant/events.c
+@@ -862,7 +862,7 @@
+ 			break;
+ 		wpa_s->interface_removed = 0;
+ 		wpa_printf(MSG_DEBUG, "Configured interface was added.");
+-		if (wpa_supplicant_driver_init(wpa_s, 1) < 0) {
++		if (wpa_supplicant_driver_init(wpa_s) < 0) {
+ 			wpa_printf(MSG_INFO, "Failed to initialize the driver "
+ 				   "after interface was added.");
+ 		}
+--- a/wpa_supplicant/main.c
++++ b/wpa_supplicant/main.c
+@@ -81,7 +81,6 @@
+ 	       "  -u = enable DBus control interface\n"
+ #endif /* CONFIG_CTRL_IFACE_DBUS */
+ 	       "  -v = show version\n"
+-	       "  -w = wait for interface to be added, if needed\n"
+ 	       "  -W = wait for a control interface monitor before starting\n"
+ 	       "  -N = start describing new interface\n");
+ 
+@@ -147,7 +146,7 @@
+ 	wpa_supplicant_fd_workaround();
+ 
+ 	for (;;) {
+-		c = getopt(argc, argv, "b:Bc:C:D:df:g:hi:KLNp:P:qtuvwW");
++		c = getopt(argc, argv, "b:Bc:C:D:df:g:hi:KLNp:P:qtuvW");
+ 		if (c < 0)
+ 			break;
+ 		switch (c) {
+@@ -220,9 +219,6 @@
+ 			printf("%s\n", wpa_supplicant_version);
+ 			exitcode = 0;
+ 			goto out;
+-		case 'w':
+-			params.wait_for_interface++;
+-			break;
+ 		case 'W':
+ 			params.wait_for_monitor++;
+ 			break;
+--- a/wpa_supplicant/wpa_supplicant.c
++++ b/wpa_supplicant/wpa_supplicant.c
+@@ -1471,36 +1471,27 @@
+ /**
+  * wpa_supplicant_driver_init - Initialize driver interface parameters
+  * @wpa_s: Pointer to wpa_supplicant data
+- * @wait_for_interface: 0 = do not wait for the interface (reports a failure if
+- * the interface is not present), 1 = wait until the interface is available
+  * Returns: 0 on success, -1 on failure
+  *
+  * This function is called to initialize driver interface parameters.
+  * wpa_drv_init() must have been called before this function to initialize the
+  * driver interface.
+  */
+-int wpa_supplicant_driver_init(struct wpa_supplicant *wpa_s,
+-			       int wait_for_interface)
++int wpa_supplicant_driver_init(struct wpa_supplicant *wpa_s)
+ {
+ 	static int interface_count = 0;
+ 
+-	for (;;) {
+-		if (wpa_s->driver->send_eapol) {
+-			const u8 *addr = wpa_drv_get_mac_addr(wpa_s);
+-			if (addr)
+-				os_memcpy(wpa_s->own_addr, addr, ETH_ALEN);
+-			break;
+-		}
++	if (wpa_s->driver->send_eapol) {
++		const u8 *addr = wpa_drv_get_mac_addr(wpa_s);
++		if (addr)
++			os_memcpy(wpa_s->own_addr, addr, ETH_ALEN);
++	} else {
+ 		wpa_s->l2 = l2_packet_init(wpa_s->ifname,
+ 					   wpa_drv_get_mac_addr(wpa_s),
+ 					   ETH_P_EAPOL,
+ 					   wpa_supplicant_rx_eapol, wpa_s, 0);
+-		if (wpa_s->l2)
+-			break;
+-		else if (!wait_for_interface)
++		if (wpa_s->l2 == NULL)
+ 			return -1;
+-		wpa_printf(MSG_DEBUG, "Waiting for interface..");
+-		os_sleep(5, 0);
+ 	}
+ 
+ 	if (wpa_s->l2 && l2_packet_get_own_addr(wpa_s->l2, wpa_s->own_addr)) {
+@@ -1668,8 +1659,7 @@
+ }
+ 
+ 
+-static int wpa_supplicant_init_iface2(struct wpa_supplicant *wpa_s,
+-				      int wait_for_interface)
++static int wpa_supplicant_init_iface2(struct wpa_supplicant *wpa_s)
+ {
+ 	const char *ifname;
+ 	struct wpa_driver_capa capa;
+@@ -1739,9 +1729,9 @@
+ 		return -1;
+ 	}
+ 
+-	if (wpa_supplicant_driver_init(wpa_s, wait_for_interface) < 0) {
++	if (wpa_supplicant_driver_init(wpa_s) < 0)
+ 		return -1;
+-	}
++
+ 	wpa_sm_set_own_addr(wpa_s->wpa, wpa_s->own_addr);
+ 
+ 	wpa_s->ctrl_iface = wpa_supplicant_ctrl_iface_init(wpa_s);
+@@ -1825,8 +1815,7 @@
+ 		return NULL;
+ 
+ 	if (wpa_supplicant_init_iface(wpa_s, iface) ||
+-	    wpa_supplicant_init_iface2(wpa_s,
+-				       global->params.wait_for_interface)) {
++	    wpa_supplicant_init_iface2(wpa_s)) {
+ 		wpa_printf(MSG_DEBUG, "Failed to add interface %s",
+ 			   iface->ifname);
+ 		wpa_supplicant_deinit_iface(wpa_s);
+@@ -1940,7 +1929,6 @@
+ 	if (global == NULL)
+ 		return NULL;
+ 	global->params.daemonize = params->daemonize;
+-	global->params.wait_for_interface = params->wait_for_interface;
+ 	global->params.wait_for_monitor = params->wait_for_monitor;
+ 	global->params.dbus_ctrl_interface = params->dbus_ctrl_interface;
+ 	if (params->pid_file)
+@@ -1976,12 +1964,6 @@
+ 		}
+ 	}
+ 
+-	if (global->params.wait_for_interface && global->params.daemonize &&
+-	    wpa_supplicant_daemon(global->params.pid_file)) {
+-		wpa_supplicant_deinit(global);
+-		return NULL;
+-	}
+-
+ 	return global;
+ }
+ 
+@@ -1999,7 +1981,7 @@
+ {
+ 	struct wpa_supplicant *wpa_s;
+ 
+-	if (!global->params.wait_for_interface && global->params.daemonize &&
++	if (global->params.daemonize &&
+ 	    wpa_supplicant_daemon(global->params.pid_file))
+ 		return -1;
+ 
+--- a/wpa_supplicant/wpa_supplicant_i.h
++++ b/wpa_supplicant/wpa_supplicant_i.h
+@@ -96,17 +96,6 @@
+ 	int daemonize;
+ 
+ 	/**
+-	 * wait_for_interface - Wait for the network interface to appear
+-	 *
+-	 * If set, %wpa_supplicant will wait until all the configured network
+-	 * interfaces are available before starting processing. Please note
+-	 * that in many cases, a better alternative would be to start
+-	 * %wpa_supplicant without network interfaces and add the interfaces
+-	 * dynamically whenever they become available.
+-	 */
+-	int wait_for_interface;
+-
+-	/**
+ 	 * wait_for_monitor - Wait for a monitor program before starting
+ 	 */
+ 	int wait_for_monitor;
+@@ -349,8 +338,7 @@
+ int wpa_supplicant_reload_configuration(struct wpa_supplicant *wpa_s);
+ 
+ const char * wpa_supplicant_state_txt(int state);
+-int wpa_supplicant_driver_init(struct wpa_supplicant *wpa_s,
+-			       int wait_for_interface);
++int wpa_supplicant_driver_init(struct wpa_supplicant *wpa_s);
+ int wpa_supplicant_set_suites(struct wpa_supplicant *wpa_s,
+ 			      struct wpa_scan_res *bss,
+ 			      struct wpa_ssid *ssid,

Modified: wpasupplicant/trunk/debian/patches/series
URL: http://svn.debian.org/wsvn/pkg-wpa/wpasupplicant/trunk/debian/patches/series?rev=1043&op=diff
==============================================================================
--- wpasupplicant/trunk/debian/patches/series (original)
+++ wpasupplicant/trunk/debian/patches/series Mon Jan 14 08:38:00 2008
@@ -12,3 +12,4 @@
 34_ctrl_iface_enable_all.patch
 35_ctrl_iface_disable_all.patch
 36_ctrl_iface_remove_all.patch
+37_rm_wait_for_interface.patch




More information about the Pkg-wpa-devel mailing list