summaryrefslogtreecommitdiffstats
path: root/package/madwifi/patches/110-init_fix_PR_914.patch
blob: 5df989def80572e85d77c75ffaeec135bc5162fa (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
Index: madwifi-ng-r2525-20070630/ath/if_ath.c
===================================================================
--- madwifi-ng-r2525-20070630.orig/ath/if_ath.c	2007-07-03 23:02:28.081798750 +0200
+++ madwifi-ng-r2525-20070630/ath/if_ath.c	2007-07-03 23:02:28.585830250 +0200
@@ -1988,7 +1988,10 @@
 		ath_draintxq(sc);
 		if (!sc->sc_invalid) {
 			ath_stoprecv(sc);
+
+			/* XXX: this helps to avoid crashes on ifconfig down/up
 			ath_hal_phydisable(ah);
+			 */
 		} else
 			sc->sc_rxlink = NULL;
 		ath_beacon_free(sc);		/* XXX needed? */
id='n230' href='#n230'>230 231 232 233 234 235 236 237 238 239 240 241 242 243
diff -urN openswan.old/programs/loggerfix openswan.dev/programs/loggerfix
--- openswan.old/programs/loggerfix	1970-01-01 01:00:00.000000000 +0100
+++ openswan.dev/programs/loggerfix	2006-10-08 20:41:08.000000000 +0200
@@ -0,0 +1,5 @@
+#!/bin/sh
+# use filename instead of /dev/null to log, but dont log to flash or ram
+# pref. log to nfs mount
+echo "$*" >> /dev/null
+exit 0
diff -urN openswan.old/programs/look/look.in openswan.dev/programs/look/look.in
--- openswan.old/programs/look/look.in	2006-10-08 20:43:21.000000000 +0200
+++ openswan.dev/programs/look/look.in	2006-10-08 20:41:08.000000000 +0200
@@ -84,7 +84,7 @@
 then
 	pat="$pat|$defaultroutephys\$|$defaultroutevirt\$"
 else
-	for i in `echo "$IPSECinterfaces" | sed 's/=/ /'`
+	for i in `echo "$IPSECinterfaces" | tr '=' ' '`
 	do
 		pat="$pat|$i\$"
 	done
diff -urN openswan.old/programs/_plutorun/_plutorun.in openswan.dev/programs/_plutorun/_plutorun.in
--- openswan.old/programs/_plutorun/_plutorun.in	2006-10-08 20:43:21.000000000 +0200
+++ openswan.dev/programs/_plutorun/_plutorun.in	2006-10-08 20:41:08.000000000 +0200
@@ -147,7 +147,7 @@
 			exit 1
 		fi
 	else
-		if test ! -w "`dirname $stderrlog`"
+		if test ! -w "`echo $stderrlog | sed -r 's/(^.*\/)(.*$)/\1/'`"
 		then
 			echo Cannot write to directory to create \"$stderrlog\".
 			exit 1
diff -urN openswan.old/programs/_realsetup/_realsetup.in openswan.dev/programs/_realsetup/_realsetup.in
--- openswan.old/programs/_realsetup/_realsetup.in	2006-10-08 20:43:21.000000000 +0200
+++ openswan.dev/programs/_realsetup/_realsetup.in	2006-10-08 20:41:08.000000000 +0200
@@ -232,7 +232,7 @@
 
 	# misc pre-Pluto setup
 
-	perform test -d `dirname $subsyslock` "&&" touch $subsyslock
+	perform test -d `echo $subsyslock | sed -r 's/(^.*\/)(.*$)/\1/'` "&&" touch $subsyslock "&&" rm -f $subsyslock
 
 	if test " $IPSECforwardcontrol" = " yes"
 	then
diff -urN openswan.old/programs/send-pr/send-pr.in openswan.dev/programs/send-pr/send-pr.in
--- openswan.old/programs/send-pr/send-pr.in	2006-10-08 20:43:21.000000000 +0200
+++ openswan.dev/programs/send-pr/send-pr.in	2006-10-08 20:41:08.000000000 +0200
@@ -402,7 +402,7 @@
 		    else
 			if [ "$fieldname" != "Category" ]
 			then
-			    values=`${BINDIR}/query-pr --valid-values $fieldname | sed ':a;N;$!ba;s/\n/ /g' | sed 's/ *$//g;s/ / | /g;s/^/[ /;s/$/ ]/;'`
+			    values=`${BINDIR}/query-pr --valid-values $fieldname | tr '\n' ' ' | sed 's/ *$//g;s/ / | /g;s/^/[ /;s/$/ ]/;'`
 			    valslen=`echo "$values" | wc -c`
 			else
 			    values="choose from a category listed above"
@@ -414,7 +414,7 @@
 			else
 				desc="<${values} (one line)>";
 			fi
-			dpat=`echo "$desc" | sed 's/[][*+^$|\()&/]/./g'`
+			dpat=`echo "$desc" | tr '\]\[*+^$|\()&/' '............'`
 			echo "/^>${fieldname}:/ s/${dpat}//" >> $FIXFIL
 		    fi
 		    echo "${fmtname}${desc}" >> $file
@@ -425,7 +425,7 @@
 			desc="	$default_val";
 		    else
 		        desc="	<`${BINDIR}/query-pr --field-description $fieldname` (multiple lines)>";
-			dpat=`echo "$desc" | sed 's/[][*+^$|\()&/]/./g'`
+			dpat=`echo "$desc" | tr '\]\[*+^$|\()&/' '............'`
 			echo "s/^${dpat}//" >> $FIXFIL
 		    fi
 		    echo "${fmtname}" >> $file;
@@ -437,7 +437,7 @@
 			desc="${default_val}"
 		    else
 			desc="<`${BINDIR}/query-pr --field-description $fieldname` (one line)>"
-			dpat=`echo "$desc" | sed 's/[][*+^$|\()&/]/./g'`
+			dpat=`echo "$desc" | tr '\]\[*+^$|\()&/' '............'`
 			echo "/^>${fieldname}:/ s/${dpat}//" >> $FIXFIL
 		    fi
 		    echo "${fmtname}${desc}" >> $file
diff -urN openswan.old/programs/setup/setup.in openswan.dev/programs/setup/setup.in
--- openswan.old/programs/setup/setup.in	2006-10-08 20:43:21.000000000 +0200
+++ openswan.dev/programs/setup/setup.in	2006-10-08 20:41:08.000000000 +0200
@@ -117,12 +117,21 @@
 # do it
 case "$1" in
   start|--start|stop|--stop|_autostop|_autostart)
-	if test " `id -u`" != " 0"
+	if [ "x${USER}" != "xroot" ]
 	then
 		echo "permission denied (must be superuser)" |
 			logger -s -p $IPSECsyslog -t ipsec_setup 2>&1
 		exit 1
 	fi
+	# make sure all required directories exist
+	if [ ! -d /var/run/pluto ]
+	then
+		mkdir -p /var/run/pluto
+	fi
+	if [ ! -d /var/lock/subsys ]
+	then
+		mkdir -p /var/lock/subsys
+	fi
 	tmp=/var/run/pluto/ipsec_setup.st
 	outtmp=/var/run/pluto/ipsec_setup.out
 	(
diff -urN openswan.old/programs/showhostkey/showhostkey.in openswan.dev/programs/showhostkey/showhostkey.in
--- openswan.old/programs/showhostkey/showhostkey.in	2006-10-08 20:43:21.000000000 +0200
+++ openswan.dev/programs/showhostkey/showhostkey.in	2006-10-08 20:41:08.000000000 +0200
@@ -63,7 +63,7 @@
 	exit 1
 fi
 
-host="`hostname --fqdn`"
+host="`cat /proc/sys/kernel/hostname`"
 
 awk '	BEGIN {
 		inkey = 0
@@ -81,7 +81,7 @@
 		os = "[ \t]*"
 		x = "[^ \t]+"
 		oc = "(#.*)?"
-		suffix = ":" os "[rR][sS][aA]" os "{" os oc "$"
+		suffix = ":" os "[rR][sS][aA]" os "[{]" os oc "$"
 		if (id == "") {
 			pat = "^" suffix
 			printid = "default"
diff -urN openswan.old/programs/starter/klips.c openswan.dev/programs/starter/klips.c
--- openswan.old/programs/starter/klips.c	2006-10-08 20:43:21.000000000 +0200
+++ openswan.dev/programs/starter/klips.c	2006-10-08 20:41:08.000000000 +0200
@@ -83,7 +83,7 @@
 		if (stat(PROC_MODULES,&stb)==0) {
 			unsetenv("MODPATH");
 			unsetenv("MODULECONF");
-			system("depmod -a >/dev/null 2>&1 && modprobe ipsec");
+			system("depmod -a >/dev/null 2>&1 && insmod ipsec");
 		}
 		if (stat(PROC_IPSECVERSION,&stb)==0) {
 			_klips_module_loaded = 1;
diff -urN openswan.old/programs/starter/netkey.c openswan.dev/programs/starter/netkey.c
--- openswan.old/programs/starter/netkey.c	2006-10-08 20:43:21.000000000 +0200
+++ openswan.dev/programs/starter/netkey.c	2006-10-08 20:41:08.000000000 +0200
@@ -75,7 +75,7 @@
 		if (stat(PROC_MODULES,&stb)==0) {
 			unsetenv("MODPATH");
 			unsetenv("MODULECONF");
-			system("depmod -a >/dev/null 2>&1 && modprobe xfrm4_tunnel esp4 ah4 af_key");
+			system("depmod -a >/dev/null 2>&1 && insmod xfrm4_tunnel esp4 ah4 af_key");
 		}
 		if (stat(PROC_NETKEY,&stb)==0) {
 			_netkey_module_loaded = 1;
diff -urN openswan.old/programs/_startklips/_startklips.in openswan.dev/programs/_startklips/_startklips.in
--- openswan.old/programs/_startklips/_startklips.in	2006-10-08 20:43:21.000000000 +0200
+++ openswan.dev/programs/_startklips/_startklips.in	2006-10-08 20:41:46.000000000 +0200
@@ -242,7 +242,7 @@
         fi
         if test -f $moduleinstplace/$wantgoo
         then
-                echo "modprobe failed, but found matching template module $wantgoo."
+                echo "insmod failed, but found matching template module $wantgoo."
                 echo "Copying $moduleinstplace/$wantgoo to $module."
                 rm -f $module
                 mkdir -p $moduleplace
@@ -262,15 +262,15 @@
     echo "FATAL ERROR: Both KLIPS and NETKEY IPsec code is present in kernel"
     exit
 fi
-if test ! -f $ipsecversion && test ! -f $netkey && modprobe -qn ipsec
+if test ! -f $ipsecversion && test ! -f $netkey && insmod -q ipsec
 then
     # statically compiled KLIPS/NETKEY not found; try to load the module
-    modprobe ipsec
+    insmod ipsec
 fi
 
 if test ! -f $ipsecversion && test ! -f $netkey
 then
-	modprobe -v af_key
+	insmod -v af_key
 fi
 
 if test -f $netkey
@@ -278,25 +278,25 @@
 	klips=false
 	if test -f $modules
 	then
-		modprobe -qv ah4
-		modprobe -qv esp4
-		modprobe -qv ipcomp
+		insmod -qv ah4
+		insmod -qv esp4
+		insmod -qv ipcomp
 		#  xfrm4_tunnel is needed by ipip and ipcomp
-		modprobe -qv xfrm4_tunnel
+		insmod -qv xfrm4_tunnel
 		# xfrm_user contains netlink support for IPsec 
-		modprobe -qv xfrm_user
+		insmod -qv xfrm_user
 		if [ -n "`cat /proc/cpuinfo |grep Nehemiah`" ]
 		then
 			echo "VIA Nehemiah detected, probing for PadLock"
-			modprobe -qv hw_random
+			insmod -qv hw_random
 			# padlock must load before aes module
-			modprobe -qv padlock
+			insmod -qv padlock
 		fi
 		# load the most common ciphers/algo's
-		modprobe -qv sha1
-		modprobe -qv md5
-		modprobe -qv des
-		modprobe -qv aes
+		insmod -qv sha1
+		insmod -qv md5
+		insmod -qv des
+		insmod -qv aes
 	fi
 fi
 
@@ -312,10 +312,16 @@
 		fi
                 unset MODPATH MODULECONF        # no user overrides!
                 depmod -a >/dev/null 2>&1
-		modprobe -qv hw_random
+		insmod -qv hw_random
 		# padlock must load before aes module
-		modprobe -qv padlock
-                modprobe -v ipsec
+		insmod -qv padlock
+                if [ -f insmod ]
+		then
+			insmod -v ipsec
+		elif [ -f insmod ]
+		then
+			insmod ipsec
+		fi
         fi
         if test ! -f $ipsecversion
         then