[pkg-wpa-devel] r1013 - in /wpasupplicant/trunk/debian: changelog ifupdown/functions.sh rules wpasupplicant.postinst wpasupplicant.postrm wpasupplicant.preinst wpasupplicant.wpa-ifupdown.init

kelmo-guest at users.alioth.debian.org kelmo-guest at users.alioth.debian.org
Tue Jan 8 09:36:27 UTC 2008


Author: kelmo-guest
Date: Tue Jan  8 09:36:27 2008
New Revision: 1013

URL: http://svn.debian.org/wsvn/pkg-wpa/?sc=1&rev=1013
Log:
* Modify debian/wpasupplicant.wpa-ifupdown.init to be no-op when sendsigs
  omission interface is supported.

Added:
    wpasupplicant/trunk/debian/wpasupplicant.wpa-ifupdown.init
Removed:
    wpasupplicant/trunk/debian/wpasupplicant.preinst
Modified:
    wpasupplicant/trunk/debian/changelog
    wpasupplicant/trunk/debian/ifupdown/functions.sh
    wpasupplicant/trunk/debian/rules
    wpasupplicant/trunk/debian/wpasupplicant.postinst
    wpasupplicant/trunk/debian/wpasupplicant.postrm

Modified: wpasupplicant/trunk/debian/changelog
URL: http://svn.debian.org/wsvn/pkg-wpa/wpasupplicant/trunk/debian/changelog?rev=1013&op=diff
==============================================================================
--- wpasupplicant/trunk/debian/changelog (original)
+++ wpasupplicant/trunk/debian/changelog Tue Jan  8 09:36:27 2008
@@ -64,9 +64,6 @@
   * Remove upgrade removal of conffiles from wpasupplicant versions that exist
     in oldstable and before. The preinst part of the upgrade handling was
     removed in pkg-wpa commit r852.
-  * Handle removal of /etc/init.d/wpa-ifupdown from package on upgrade. This
-    is done using preinst, postinst and postrm trio similar to that which
-    facilitated the removal of /etc/init.d/wpasupplicant.
   * Create sendsigs omission pidfile in /lib/init/rw/sendsigs.omit.d/ for
     wpa_supplicant and wpa_cli processes managed by ifupdown. Determine
     runlevel when wpa_cli roaming daemon is active, and allow ot to be killed
@@ -90,8 +87,10 @@
   * Add debian/patches/31_wpa_gui_qt4_select_any.patch to allow selection of
     any network already defined in network combobox when more than 1 network
     is defined.
-
- -- Kel Modderman <kel at otaku42.de>  Mon, 07 Jan 2008 21:11:31 +1000
+  * Modify debian/wpasupplicant.wpa-ifupdown.init to be no-op when sendsigs
+    omission interface is supported.
+
+ -- Kel Modderman <kel at otaku42.de>  Tue, 08 Jan 2008 19:33:58 +1000
 
 wpasupplicant (0.6.1~git20071119-1) unstable; urgency=low
 

Modified: wpasupplicant/trunk/debian/ifupdown/functions.sh
URL: http://svn.debian.org/wsvn/pkg-wpa/wpasupplicant/trunk/debian/ifupdown/functions.sh?rev=1013&op=diff
==============================================================================
--- wpasupplicant/trunk/debian/ifupdown/functions.sh (original)
+++ wpasupplicant/trunk/debian/ifupdown/functions.sh Tue Jan  8 09:36:27 2008
@@ -45,8 +45,16 @@
 # previously, we used an initscript to ifdown interfaces before sendsigs
 # terminated wpa_supplicant/wpa_cli processes - that was an ugly hack
 if [ -d /lib/init/rw/sendsigs.omit.d/ ]; then
+	# Debian
 	WPA_SUP_OMIT_PIDFILE="/lib/init/rw/sendsigs.omit.d/wpasupplicant.wpa_supplicant.${WPA_IFACE}.pid"
 	WPA_CLI_OMIT_PIDFILE="/lib/init/rw/sendsigs.omit.d/wpasupplicant.wpa_action.${WPA_IFACE}.pid"
+#elif [ -d /var/run/sendsigs.omit.d/ ]; then
+#	# Ubuntu
+#	WPA_SUP_OMIT_PIDFILE="/var/run/sendsigs.omit.d/wpasupplicant.wpa_supplicant.${WPA_IFACE}.pid"
+#	WPA_CLI_OMIT_PIDFILE="/var/run/sendsigs.omit.d/wpasupplicant.wpa_action.${WPA_IFACE}.pid"
+else
+	WPA_SUP_OMIT_PIDFILE=
+	WPA_CLI_OMIT_PIDFILE=
 fi
 
 # default ctrl_interface socket directory

Modified: wpasupplicant/trunk/debian/rules
URL: http://svn.debian.org/wsvn/pkg-wpa/wpasupplicant/trunk/debian/rules?rev=1013&op=diff
==============================================================================
--- wpasupplicant/trunk/debian/rules (original)
+++ wpasupplicant/trunk/debian/rules Tue Jan  8 09:36:27 2008
@@ -93,6 +93,7 @@
 	dh_install
 	dh_installlogrotate --package=wpasupplicant --name=wpa_action
 	dh_installlogrotate --package=wpasupplicant --name=wpa_supplicant
+	dh_installinit --package=wpasupplicant --name=wpa-ifupdown --no-start -- start 15 0 6 .
 	dh_installman
 	dh_link
 	dh_strip

Modified: wpasupplicant/trunk/debian/wpasupplicant.postinst
URL: http://svn.debian.org/wsvn/pkg-wpa/wpasupplicant/trunk/debian/wpasupplicant.postinst?rev=1013&op=diff
==============================================================================
--- wpasupplicant/trunk/debian/wpasupplicant.postinst (original)
+++ wpasupplicant/trunk/debian/wpasupplicant.postinst Tue Jan  8 09:36:27 2008
@@ -15,23 +15,8 @@
 # If prerm fails during replacement due to conflict:
 #       <postinst> abort-remove in-favour <new-package> <version>
 
-# Remove a no-longer used conffile
-rm_conffile() {
-	CONFFILE="$1"
-	
-	if [ -e "$CONFFILE" ]; then
-		echo "Removing obsolete conffile $CONFFILE"
-		rm -f "$CONFFILE"
-	fi
-}
-
 case "$1" in
 	configure)
-		# Remove the obsolete wpa-ifupdown workaround
-		if dpkg --compare-versions "$2" le "0.6.2-1"; then
-			rm_conffile /etc/init.d/wpa-ifupdown
-			update-rc.d -f wpa-ifupdown remove || true
-		fi
 		# Add the netdev group unless it's already there
 		if ! getent group netdev >/dev/null; then
 			addgroup --quiet --system netdev || true

Modified: wpasupplicant/trunk/debian/wpasupplicant.postrm
URL: http://svn.debian.org/wsvn/pkg-wpa/wpasupplicant/trunk/debian/wpasupplicant.postrm?rev=1013&op=diff
==============================================================================
--- wpasupplicant/trunk/debian/wpasupplicant.postrm (original)
+++ wpasupplicant/trunk/debian/wpasupplicant.postrm Tue Jan  8 09:36:27 2008
@@ -26,18 +26,6 @@
 # If preinst fails during upgrade:
 #       <new-postrm> abort-upgrade <old-version>
 
-# Undo removal of a no-longer used conffile
-undo_rm_conffile() {
-	CONFFILE="$1"
-	
-	if [ ! -e "$CONFFILE" ]; then
-		if [ -e "$CONFFILE".dpkg-bak ]; then
-			echo "Restoring modified conffile $CONFFILE"
-			mv -f "$CONFFILE".dpkg-bak "$CONFFILE"
-        	fi
-	fi
-}
-
 case "$1" in
 	remove)
 		;;
@@ -49,9 +37,6 @@
 	upgrade|failed-upgrade|disappear)
 		;;
 	abort-install|abort-upgrade)
-		if dpkg --compare-versions "$2" le "0.6.2-1"; then
-			undo_rm_conffile /etc/init.d/wpa-ifupdown
-		fi
 		;;
 	*)
 		echo "$0 called with unknown argument \`$1'" 1>&2

Added: wpasupplicant/trunk/debian/wpasupplicant.wpa-ifupdown.init
URL: http://svn.debian.org/wsvn/pkg-wpa/wpasupplicant/trunk/debian/wpasupplicant.wpa-ifupdown.init?rev=1013&op=file
==============================================================================
--- wpasupplicant/trunk/debian/wpasupplicant.wpa-ifupdown.init (added)
+++ wpasupplicant/trunk/debian/wpasupplicant.wpa-ifupdown.init Tue Jan  8 09:36:27 2008
@@ -1,0 +1,86 @@
+#!/bin/sh
+
+### BEGIN INIT INFO
+# Provides:		wpa-ifupdown
+# Required-Start:	$network
+# Required-Stop:	$network
+# Should-Start:
+# Should-Stop:
+# Default-Start:
+# Default-Stop:		0 6
+# Short-Description:	Stop wpa_supplicant processes started via ifupdown
+# Description:		Run ifdown on interfaces authenticated via
+#			wpa_supplicant.	Sendsigs terminates wpa_supplicant
+#                       processes before networking is stopped causing each
+#                       network interface authenticated via a wpa_supplicant
+#                       daemon to be terminated abrubtly.
+#                       Since initscripts package version 2.86.ds1-48 an
+#                       interface exists to omit process id's from sendsigs. If
+#                       this interface is present this script is a no-op.
+### END INIT INFO
+
+PATH=/usr/sbin:/usr/bin:/sbin:/bin
+
+test -d /var/run || exit 0
+
+test -x /sbin/ifdown || exit 0
+
+. /lib/lsb/init-functions
+
+stop_wpa_action () {
+	test -x /sbin/wpa_action || return 0
+	IFACES=$(find /var/run -maxdepth 1 -type f -name 'wpa_action.*.pid' -printf '%P\n' | \
+		cut -d'.' -f2 2>/dev/null)
+	if test -n "$IFACES"; then
+		log_daemon_msg "Stopping wpa_action roaming interfaces"
+		for iface in $IFACES; do
+			log_progress_msg "$iface"
+			# wpa_action executes /sbin/ifdown
+			wpa_action "$iface" stop >/dev/null 2>&1
+		done
+		log_end_msg 0
+	fi
+}
+
+stop_wpa_supplicant () {
+	IFACES=$(find /var/run -maxdepth 1 -type f -name 'wpa_supplicant.*.pid' -printf '%P\n' | \
+		grep -v wpa_supplicant.dbus.pid | cut -d'.' -f2 2>/dev/null)
+	if test -n "$IFACES"; then
+		log_daemon_msg "Stopping wpa_supplicant interfaces"
+		for iface in $IFACES; do
+			log_progress_msg "$iface"
+			ifdown "$iface" >/dev/null 2>&1
+		done
+		log_end_msg 0
+	fi
+}
+
+sendsigs_omission_support () {
+	if [ -d /lib/init/rw/sendsigs.omit.d/ ]; then
+		# Debian
+		return 0
+	#elif [ /var/run/sendsigs.omit.d/ ]; then
+	#	# Ubuntu
+	#	return 0
+	fi
+
+	return 1
+}
+
+case "$1" in
+	start|restart|force-reload)
+		# No-op
+		;;
+	stop)
+		if ! sendsigs_omission_support; then
+			stop_wpa_action
+			stop_wpa_supplicant
+		fi
+		;;
+	*)
+		echo "Usage: $0 {start|stop|restart|force-reload}" >&2
+		exit 3
+		;;
+esac
+
+exit 0




More information about the Pkg-wpa-devel mailing list