[pkg-wpa-devel] r1403 - in /wpasupplicant/trunk/debian: README.Debian changelog ifupdown/functions.sh ifupdown/wpa_action.8 ifupdown/wpa_action.sh rules wpasupplicant.preinst wpasupplicant.wpa_action.logrotate wpasupplicant.wpa_supplicant.logrotate

kelmo-guest at users.alioth.debian.org kelmo-guest at users.alioth.debian.org
Sun Jul 19 22:10:14 UTC 2009


Author: kelmo-guest
Date: Sun Jul 19 22:10:14 2009
New Revision: 1403

URL: http://svn.debian.org/wsvn/pkg-wpa/?sc=1&rev=1403
Log:
* Modify wpa_action and associated functions to use logger(1) instead of
  piping to /var/log/wpa_action.$IFACE.log.
* Add wpasupplicant.preinst to handle removal of obsolete logrotate
  conffiles now that all wpa_supplicant/wpa_cli output is logged to
  syslog.

Added:
    wpasupplicant/trunk/debian/wpasupplicant.preinst
Removed:
    wpasupplicant/trunk/debian/wpasupplicant.wpa_action.logrotate
    wpasupplicant/trunk/debian/wpasupplicant.wpa_supplicant.logrotate
Modified:
    wpasupplicant/trunk/debian/README.Debian
    wpasupplicant/trunk/debian/changelog
    wpasupplicant/trunk/debian/ifupdown/functions.sh
    wpasupplicant/trunk/debian/ifupdown/wpa_action.8
    wpasupplicant/trunk/debian/ifupdown/wpa_action.sh
    wpasupplicant/trunk/debian/rules

Modified: wpasupplicant/trunk/debian/README.Debian
URL: http://svn.debian.org/wsvn/pkg-wpa/wpasupplicant/trunk/debian/README.Debian?rev=1403&op=diff
==============================================================================
--- wpasupplicant/trunk/debian/README.Debian (original)
+++ wpasupplicant/trunk/debian/README.Debian Sun Jul 19 22:10:14 2009
@@ -23,7 +23,6 @@
         - Interacting with wpa_supplicant with wpa_cli and wpa_gui
         - Controlling the Roaming Daemon with wpa_action
         - Fine Tuning the Roaming Setup
-        - The Logfile
         - Using External Mapping Scripts (e.g. guessnet)
         - /etc/network/interfaces with external mapping
 
@@ -335,8 +334,7 @@
 wpa_supplicant associates and de-associates with the network associated
 to it by the 'id_str' option used in the wpa_supplicant.conf configuration file.
 
-A log of /sbin/wpa_action's actions is created at
-/var/log/wpa_action.$IFACE.log, please attach the log when reporting problems.
+/sbin/wpa_action's actions are logged to syslog.
 
 Interacting with wpa_supplicant with wpa_cli and wpa_gui
 ========================================================
@@ -385,27 +383,6 @@
 wpa_gui, or you can give each network its own priority. This is provided by the
 'priority' option of wpa_supplicant.conf.
 
-The Logfile
-===========
-
-All activity of the roaming dameon is logged to /var/log/wpa_action.log. The
-following information is logged:
-
-        * time and date
-        * interface name and action event
-        * values of enviromental variables (WPA_ID, WPA_ID_STR, WPA_CTRL_DIR)
-        * ifupdown command executed
-        * wpa_cli status (based on WPA-PSK network, may display different info)
-                - bssid
-                - ssid
-                - id
-                - id_str
-                - pairwise_cipher
-                - group_cipher
-                - key_mgmt
-                - wpa_state
-                - ip_address
-
 Using External Mapping Scripts (e.g. guessnet)
 ==============================================
 

Modified: wpasupplicant/trunk/debian/changelog
URL: http://svn.debian.org/wsvn/pkg-wpa/wpasupplicant/trunk/debian/changelog?rev=1403&op=diff
==============================================================================
--- wpasupplicant/trunk/debian/changelog (original)
+++ wpasupplicant/trunk/debian/changelog Sun Jul 19 22:10:14 2009
@@ -18,8 +18,13 @@
     comply with sequencing rules as per pm-action(8) (LP: #307493). Provide
     the symlink to our hook in /usr/lib/pm-utils/sleep.d/ rather than
     /etc/pm/sleep.d/.
-
- -- Kel Modderman <kel at otaku42.de>  Sat, 18 Jul 2009 17:11:48 +1000
+  * Modify wpa_action and associated functions to use logger(1) instead of
+    piping to /var/log/wpa_action.$IFACE.log.
+  * Add wpasupplicant.preinst to handle removal of obsolete logrotate
+    conffiles now that all wpa_supplicant/wpa_cli output is logged to
+    syslog.
+
+ -- Kel Modderman <kel at otaku42.de>  Mon, 20 Jul 2009 08:09:14 +1000
 
 wpasupplicant (0.6.9-3) 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=1403&op=diff
==============================================================================
--- wpasupplicant/trunk/debian/ifupdown/functions.sh (original)
+++ wpasupplicant/trunk/debian/ifupdown/functions.sh Sun Jul 19 22:10:14 2009
@@ -37,7 +37,6 @@
 WPA_CLI_BIN="/sbin/wpa_cli"
 WPA_CLI_PNAME="wpa_cli"
 WPA_CLI_PIDFILE="/var/run/wpa_action.${WPA_IFACE}.pid"
-WPA_CLI_LOGFILE="/var/log/wpa_action.${WPA_IFACE}.log"
 WPA_CLI_TIMESTAMP="/var/run/wpa_action.${WPA_IFACE}.timestamp"
 WPA_CLI_IFUPDOWN="/var/run/wpa_action.${WPA_IFACE}.ifupdown"
 
@@ -87,6 +86,9 @@
 # Ensures a standard and easily identifiable message is printed by
 # scripts using this function library.
 #
+# log		Log a message to syslog when called non-interactively
+#		by wpa_action
+#
 # verbose	To stdout when IF_WPA_VERBOSITY or VERBOSITY is true
 #
 # action	Same as verbose but without newline
@@ -98,9 +100,21 @@
 # NB: when called by wpa_action, there is no redirection (verbose)
 #
 wpa_msg () {
-	if [ -n "$WPA_ACTION" ]; then
+	if [ "$1" = "log" ]; then
 		shift
-		echo "wpa_action: $@"
+		case "$WPA_ACTION" in
+			"CONNECTED"|"DISCONNECTED")
+				[ -x /usr/bin/logger ] || return
+				if [ "$#" -gt 0 ]; then
+					logger -t "wpa_action" "$@"
+				else
+					logger -t "wpa_action"
+				fi
+				;;
+			*)
+				[ "$#" -gt 0 ] && echo "wpa_action: $@"
+				;;
+		esac
 		return
 	fi
 	
@@ -848,32 +862,10 @@
 }
 
 #####################################################################
-## wpa_action basic logging
-# Log actions to file
-#
-wpa_log_init () {
-	if touch "$WPA_CLI_LOGFILE" 2>/dev/null; then
-		exec >> "$WPA_CLI_LOGFILE" 2>&1
-	fi
-}
-
-# log timestamp and wpa_action arguments
-wpa_log_action () {
-	[ -w "$WPA_CLI_LOGFILE" ] || return 0
-	
-	local DATE
-	DATE=$(date +"%H:%M:%S  %Y-%m-%d")
-	
-	echo "########## $DATE ##########"
-	echo "IFACE=$WPA_IFACE ACTION=$WPA_ACTION"
-}
-
-# log wpa_cli environment variables
-wpa_log_environment () {
-	[ -w "$WPA_CLI_LOGFILE" ] || return 0
-
-	echo "WPA_ID=$WPA_ID WPA_ID_STR=$WPA_ID_STR"
-	echo "WPA_CTRL_DIR=$WPA_CTRL_DIR"
+## Log wpa_cli environment variables
+wpa_log_env () {
+	wpa_msg log "WPA_IFACE=$WPA_IFACE WPA_ACTION=$WPA_ACTION"
+	wpa_msg log "WPA_ID=$WPA_ID WPA_ID_STR=$WPA_ID_STR WPA_CTRL_DIR=$WPA_CTRL_DIR"
 }
 
 #####################################################################
@@ -885,10 +877,7 @@
 # potential to cause system instability.
 #
 wpa_hysteresis_event () {
-	local TIME
-
-	TIME=$(date +%s)
-	echo "$TIME" > "$WPA_CLI_TIMESTAMP"
+	echo "$(date +%s)" > "$WPA_CLI_TIMESTAMP" 2>/dev/null
 }
 
 wpa_hysteresis_check () {
@@ -904,7 +893,7 @@
 		# compare values, allowing new action to be processed 
 		# only if last action was more than 4 seconds ago
 		if [ "$TIMEWAIT" -le "$TIMESTAMP" ]; then
-			echo "Ignoring $WPA_ACTION event, too soon after previous event"
+			wpa_msg log "$WPA_ACTION event blocked by hysteresis check"
 			return 1
 		fi
 	fi
@@ -923,7 +912,7 @@
 	if [ -e /etc/network/interfaces ]; then
 		INTERFACES_FILE="/etc/network/interfaces"
 	else
-		echo "Cannot locate ifupdown's \"interfaces\" file, $WPA_IFACE will not be configured"
+		wpa_msg log "cannot locate ifupdown's \"interfaces\" file, $WPA_IFACE will not be configured"
 		return 1
 	fi
 
@@ -934,7 +923,7 @@
 		# ubuntu's
 		IFSTATE_FILE="/var/run/network/ifstate"
 	else
-		echo "Cannot locate ifupdown's \"ifstate\" file, $WPA_IFACE will not be configured"
+		wpa_msg log "cannot locate ifupdown's \"ifstate\" file, $WPA_IFACE will not be configured"
 		return 1
 	fi
 
@@ -946,8 +935,7 @@
 		return 0
 	fi
 
-	echo "Interface \"$WPA_IFACE\" failed to establish a connection."
-	echo "Attempting reassociation..."
+	wpa_msg log "ifdown failed to configure interface $WPA_IFACE"
 	return 1
 }
 
@@ -975,12 +963,9 @@
 	
 	if [ -z "$IF_WPA_MAPPING_SCRIPT_PRIORITY" ] && [ -n "$WPA_ID_STR" ]; then
 		WPA_LOGICAL_IFACE="$WPA_ID_STR"
-		echo "Mapping logical interface via id_str: $WPA_LOGICAL_IFACE"
 	fi
 	
 	if [ -z "$WPA_LOGICAL_IFACE" ] && [ -n "$IF_WPA_MAPPING_SCRIPT" ]; then
-		echo "Mapping logical interface via wpa-mapping-script: $IF_WPA_MAPPING_SCRIPT"
-		
 		local WPA_MAP_STDIN
 		
 		WPA_MAP_STDIN=$(set | sed -n 's/^\(IF_WPA_MAP[0-9]*\)=.*/echo \$\1/p')
@@ -992,19 +977,17 @@
 		fi
 		
 		if [ -n "$WPA_LOGICAL_IFACE" ]; then
-			echo "Mapping script result: $WPA_LOGICAL_IFACE"
+			wpa_msg log "mapping script result: $WPA_LOGICAL_IFACE"
 		else
-			echo "Mapping script failed."
+			wpa_msg log "mapping script failed."
 		fi
 	fi
 
 	if [ -z "$WPA_LOGICAL_IFACE" ]; then
 		if [ -n "$IF_WPA_ROAM_DEFAULT_IFACE" ]; then
 			WPA_LOGICAL_IFACE="$IF_WPA_ROAM_DEFAULT_IFACE"
-			echo "Using wpa-roam-default-iface: $WPA_LOGICAL_IFACE"
 		else
 			WPA_LOGICAL_IFACE="default"
-			echo "Using fallback logical interface: $WPA_LOGICAL_IFACE"
 		fi
 	fi
 
@@ -1012,15 +995,14 @@
 		if egrep -q "^iface[[:space:]]+${WPA_LOGICAL_IFACE}[[:space:]]+inet" "$INTERFACES_FILE"; then
 			: # logical network is defined
 		else
-			echo "No network defined for \"$WPA_LOGICAL_IFACE\" in \"$INTERFACES_FILE\""
-			echo "Trying to configure the \"default\" network instead ..."
+			wpa_msg log "network settings not defined for $WPA_LOGICAL_IFACE in $INTERFACES_FILE"
 			WPA_LOGICAL_IFACE="default"
 		fi
-			
-		echo "ifup $WPA_IFACE=$WPA_LOGICAL_IFACE"
+
+		wpa_msg log "ifup $WPA_IFACE=$WPA_LOGICAL_IFACE"
 
 		ifupdown_lock
-		
+
 		if grep -q "^$WPA_IFACE=$WPA_IFACE" "$IFSTATE_FILE"; then
 			# Force settings over the unconfigured "master" IFACE
 			/sbin/ifup -v --force "$WPA_IFACE=$WPA_LOGICAL_IFACE"
@@ -1029,8 +1011,6 @@
 		fi
 
 		ifupdown_unlock
-	else
-		echo "No suitable logical interface mapping for ifupdown to configure"
 	fi
 }
 
@@ -1039,16 +1019,13 @@
 # Check IFACE state and ifdown as requested.
 #
 ifdown () {
-	if grep -q "^$WPA_IFACE" "$IFSTATE_FILE"; then
-		ifupdown_lock
-
-		echo "ifdown $WPA_IFACE"
-		/sbin/ifdown -v "$WPA_IFACE"
-
-		ifupdown_unlock
-	else
-		echo "Ignoring request to take \"$WPA_IFACE\" down, it is not up"
-	fi
+	wpa_msg log "ifdown $WPA_IFACE"
+
+	ifupdown_lock
+
+	/sbin/ifdown -v "$WPA_IFACE"
+
+	ifupdown_unlock
 }
 
 #####################################################################
@@ -1059,7 +1036,7 @@
 # NB: use iproute if present, flushing the IFACE first
 #
 if_post_down_up () {
-	if type ip >/dev/null; then
+	if [ -x /bin/ip ]; then
 		ip addr flush dev "$WPA_IFACE" 2>/dev/null
 		ip link set "$WPA_IFACE" up
 	else

Modified: wpasupplicant/trunk/debian/ifupdown/wpa_action.8
URL: http://svn.debian.org/wsvn/pkg-wpa/wpasupplicant/trunk/debian/ifupdown/wpa_action.8?rev=1403&op=diff
==============================================================================
--- wpasupplicant/trunk/debian/ifupdown/wpa_action.8 (original)
+++ wpasupplicant/trunk/debian/ifupdown/wpa_action.8 Sun Jul 19 22:10:14 2009
@@ -35,21 +35,19 @@
 \fBCONNECTED\fR
 \fBwpa_supplicant\fR has completed authentication.
 \fBifup\fR \fIIFACE=WPA_ID_STR\fR is invoked and the action is logged to
-\fI/var/log/wpa_action.IFACE.log\fR. Network settings for the \fILOGICAL\fR
-interface \fIWPA_ID_STR\fR are applied.
+syslog. Network settings for the \fILOGICAL\fR interface \fIWPA_ID_STR\fR
+are applied.
 .TP
 \fBDISCONNECTED\fR
 \fBwpa_supplicant\fR has detected disconnection.
 \fBifdown\fR \fIIFACE=WPA_ID_STR\fR is invoked and the action is logged to
-\fI/var/log/wpa_action.log\fR. Network settings for the \fILOGICAL\fR
-interface \fIWPA_ID_STR\fR are undone.
+syslog. Network settings for the \fILOGICAL\fR interface \fIWPA_ID_STR\fR
+are undone.
 .TP
 \fBstop\fR
 The 'stop' \fIACTION\fR is a called manually by the user, to stop the 
 \fBwpa_cli\fR daemon, invoke \fBifdown\fR \fIIFACE\fR (if the \fIIFACE\fR is
 present in the \fIifstate\fR file) and stop the \fBwpa_supplicant\fR daemon.
-The action is logged to \fI/var/log/wpa_action.log\fR. 'down' is a
-synonym for 'stop' and can be used equally.
 .TP
 \fBreload\fR
 The 'reload' \fIACTION\fR can be used to reload the \fBwpa_supplicant\fR

Modified: wpasupplicant/trunk/debian/ifupdown/wpa_action.sh
URL: http://svn.debian.org/wsvn/pkg-wpa/wpasupplicant/trunk/debian/ifupdown/wpa_action.sh?rev=1403&op=diff
==============================================================================
--- wpasupplicant/trunk/debian/ifupdown/wpa_action.sh (original)
+++ wpasupplicant/trunk/debian/ifupdown/wpa_action.sh Sun Jul 19 22:10:14 2009
@@ -38,22 +38,18 @@
 
 case "$WPA_ACTION" in
 	"CONNECTED")
-		wpa_log_init
+		wpa_log_env
 		wpa_hysteresis_check || exit 1
-		wpa_log_action
-		wpa_log_environment
 		ifupdown_check || exit 1
 		wpa_hysteresis_event
 		ifup
-		wpa_cli status
+		wpa_cli status | wpa_msg log
 		ifupdown_status || wpa_cli reassociate
 		;;
 
 	"DISCONNECTED")
-		wpa_log_init
+		wpa_log_env
 		wpa_hysteresis_check || exit 1
-		wpa_log_action
-		wpa_log_environment
 		ifupdown_check || exit 1
 		ifdown
 		if_post_down_up
@@ -64,15 +60,11 @@
 		ifupdown_check || exit 1
 		ifdown
 		test_wpa_supplicant && kill_wpa_supplicant
-		wpa_log_init
-		wpa_log_action
 		;;
 
 	"restart"|"reload")
 		test_wpa_supplicant || exit 1
 		reload_wpa_supplicant
-		wpa_log_init
-		wpa_log_action
 		;;
 	
 	"check")

Modified: wpasupplicant/trunk/debian/rules
URL: http://svn.debian.org/wsvn/pkg-wpa/wpasupplicant/trunk/debian/rules?rev=1403&op=diff
==============================================================================
--- wpasupplicant/trunk/debian/rules (original)
+++ wpasupplicant/trunk/debian/rules Sun Jul 19 22:10:14 2009
@@ -113,8 +113,6 @@
 	dh_installchangelogs wpa_supplicant/ChangeLog
 	dh_installdocs
 	dh_installexamples
-	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

Added: wpasupplicant/trunk/debian/wpasupplicant.preinst
URL: http://svn.debian.org/wsvn/pkg-wpa/wpasupplicant/trunk/debian/wpasupplicant.preinst?rev=1403&op=file
==============================================================================
--- wpasupplicant/trunk/debian/wpasupplicant.preinst (added)
+++ wpasupplicant/trunk/debian/wpasupplicant.preinst Sun Jul 19 22:10:14 2009
@@ -1,0 +1,35 @@
+#!/bin/sh
+
+set -e
+
+rm_conffile() {
+	local PKGNAME="$1"
+	local CONFFILE="$2"
+
+	[ -e "$CONFFILE" ] || return 0
+
+	local md5sum="$(md5sum $CONFFILE | sed -e 's/ .*//')"
+	local old_md5sum="$(dpkg-query -W -f='${Conffiles}' $PKGNAME | \
+		sed -n -e "\' $CONFFILE ' { s/ obsolete$//; s/.* //; p }")"
+	if [ "$md5sum" != "$old_md5sum" ]; then
+		echo "Obsolete conffile $CONFFILE has been modified by you."
+		echo "Saving as $CONFFILE.dpkg-bak ..."
+		mv -f "$CONFFILE" "$CONFFILE".dpkg-bak
+	else
+		echo "Removing obsolete conffile $CONFFILE ..."
+		rm -f "$CONFFILE"
+	fi
+}
+
+case "$1" in
+	install|upgrade)
+		if dpkg --compare-versions "$2" le "0.6.9-4"; then
+			rm_conffile wpasupplicant /etc/logrotate.d/wpa_supplicant
+			rm_conffile wpasupplicant /etc/logrotate.d/wpa_action
+		fi
+		;;
+esac
+
+#DEBHELPER#
+
+exit 0




More information about the Pkg-wpa-devel mailing list