Skip to contentSkip to conversation

Another patch

PATCH Gioele Barabucci 1 participant 1 message Feb 25, 2001

lore
Share & tools
lore
#0 lore raw

This patch is just a code cleanup but adds also the possibility to use comments in *map files (but only if the line starts exactly with "# ")

Please test it deeply because I have not tested it a lot (I'm having probs with my linux box)

Signature · 5 lines
Gioele Barabucci (Gb]) 
 ) mailto:[email protected]
 ) http://www.gioelebarabucci.com
 ) ) I've been and now I've gone
 ) )          /Magic Pie^Oasis

Index: etc/hotplug/hotplug.functions
===================================================================
RCS file: /cvsroot/linux-hotplug/admin/etc/hotplug/hotplug.functions,v retrieving revision 1.2

hotplug/hotplug.functions +18 -13
diff -u -3 -p -r1.2 hotplug.functions
@@ -58,8 +58,13 @@ MODPROBE="/sbin/modprobe"
 #
 load_drivers ()
 {
-    DRIVERS=
+    DRIVERS=""
 
+    # make this routine more readable
+    TYPE=$1
+    FILENAME=$2
+    DESCRIPTION=$3
+
     # NOTE:  usbmodules isn't currently in the trusted path; also,
     # something later than "usbutils-0.7" is needed ("--mapfile"
     # and modutils 2.4.2 support are both needed ... patch avail
@@ -69,16 +74,16 @@ load_drivers ()
 # choose which way they use to generate module listings.
 
     # can we use usbmodules, pcimodules?
-    LISTER=`type -p $1modules`
-    if [ x$LISTER != x ]; then
-	case $1 in
+    LISTER=`type -p ${TYPE}modules`
+    if [ "$LISTER" != "" ]; then
+	case $TYPE in
 	usb)
 	    # only works if we have usbdevfs
 	    # ... reads more descriptors than are passed in env
-	    if [ x$DEVICE = x ]; then
+	    if [ "$DEVICE" = "" ]; then
 		LISTER=
 	    else
-		DRIVERS=`$LISTER --mapfile $2 --device $DEVICE`
+		DRIVERS=`$LISTER --mapfile $FILENAME --device $DEVICE`
 	    fi ;;
 
 	pci)
@@ -88,14 +93,14 @@ load_drivers ()
 	    DRIVERS=`$LISTER`
 	    ;;
 	
-	*)	mesg "how to invoke $1modules ??"
+	*)	mesg "how to invoke ${TYPE}modules ??"
 	    LISTER=
 	esac
     fi
 
     # do it with just shell scripts
-    if [ x$LISTER = x ]; then
-	$1_map_modules < $2
+    if [ "$LISTER" = "" ]; then
+	${TYPE}_map_modules < $FILENAME
     fi
 
     if [ "$DRIVERS" = "" ]; then
@@ -103,7 +108,7 @@ load_drivers ()
     fi
 
     if [ "$DEBUG" != "" ]; then
-	mesg Modprobe and setup $DRIVERS for $3
+	mesg Modprobe and setup $DRIVERS for $DESCRIPTION
     fi
 
     # maybe driver modules need loading and configuring
@@ -114,11 +119,11 @@ load_drivers ()
 	    if ! $MODPROBE $MODULE >/dev/null 2>&1
 	    then
 		mesg "... can't load module $MODULE"
-	    elif [ -x /etc/hotplug/$1/$MODULE ]; then
+	    elif [ -x /etc/hotplug/$TYPE/$MODULE ]; then
 		if [ "$DEBUG" != "" ]; then
-		    mesg Module setup $MODULE for $3
+		    mesg Module setup $MODULE for $DESCRIPTION
 		fi
-		/etc/hotplug/$1/$MODULE
+		/etc/hotplug/$TYPE/$MODULE
 	    fi
 	fi
     done

Index: etc/hotplug/net.agent
===================================================================
RCS file: /cvsroot/linux-hotplug/admin/etc/hotplug/net.agent,v retrieving revision 1.4

hotplug/net.agent +1 -1
diff -u -3 -p -r1.4 net.agent
@@ -18,7 +18,7 @@
 . hotplug.functions
 # DEBUG=yes export DEBUG
 
-if [ x$INTERFACE = x ]; then
+if [ "$INTERFACE" = "" ]; then
     mesg Bad NET invocation
     exit 1
 fi

Index: etc/hotplug/pci.agent
===================================================================
RCS file: /cvsroot/linux-hotplug/admin/etc/hotplug/pci.agent,v retrieving revision 1.7

hotplug/pci.agent +4 -1
diff -u -3 -p -r1.7 pci.agent
@@ -38,7 +38,7 @@ MAP_CURRENT=$MODULE_DIR/modules.pcimap
 # accumulates list of modules we may care about
 DRIVERS=
 
-if [ x$PCI_CLASS = x  -o x$PCI_CLASS = x ]; then
+if [ "$PCI_CLASS" = ""  -o "$PCI_CLASS" = "" ]; then
     mesg Bad PCI agent invocation
     exit 1
 fi
@@ -102,6 +102,9 @@ pci_map_modules ()
     while read module vendor device subvendor subdevice class class_mask ignored
     do
 	: checkmatch $module
+        if [ "$module" = "#" ]; then
+          continue
+        fi
 
 	: vendor $vendor $pci_id_vendor
 	if [ $vendor -ne $PCI_ANY -a $vendor -ne $pci_id_vendor ]; then

Index: etc/hotplug/usb.agent
===================================================================
RCS file: /cvsroot/linux-hotplug/admin/etc/hotplug/usb.agent,v retrieving revision 1.7

hotplug/usb.agent +11 -5
diff -u -3 -p -r1.7 usb.agent
@@ -44,7 +44,7 @@
 
 if [ -f /etc/sysconfig/usb ]; then
     . /etc/sysconfig/usb
-    if [ x$USBD_ENABLE = xfalse ]; then
+    if [ "$USBD_ENABLE" = "false" ]; then
 	exit 0
     fi
 fi
@@ -80,7 +80,7 @@ MAP_USERMAP=$HOTPLUG_DIR/usb.usermap
 # accumulates list of modules we may care about
 DRIVERS=
 
-if [ x$PRODUCT = x  -o x$ACTION = x ]; then
+if [ "$PRODUCT" = "" -o "$ACTION" = "" ]; then
     mesg Bad USB agent invocation
     exit 1
 fi
@@ -111,7 +111,7 @@ usb_convert_vars ()
     usb_idProduct=$2
     usb_idDevice=$3
 
-    if [ x$TYPE != x ]; then
+    if [ "$TYPE" != "" ]; then
     	IFS=/
     	set $TYPE ''
 	usb_bDeviceClass=$1
@@ -125,7 +125,7 @@ usb_convert_vars ()
 	usb_bDeviceProtocol=1000
     fi
 
-    if [ x$INTERFACE != x ]; then
+    if [ "$INTERFACE" != "" ]; then
 	IFS=/
 	set $INTERFACE ''
 	usb_bInterfaceClass=$1
@@ -160,6 +160,7 @@ usb_map_modules ()
     # expected to work on any line!
 
     # comment line lists (current) usb_device_id field names
+    # is this still needed?
     read ignored
 
     # look at each usb_device_id entry
@@ -169,6 +170,11 @@ usb_map_modules ()
     do
 	: checkmatch $module
 
+        # ok, now it read comment, but only if the line starts with "# "
+        if [ "$module" = "#" ]; then 
+          continue
+        fi 
+
 # FIXME:  tests against USB_ANY should be replaced
 # by tests against bits in match_flags
 # ... if it's there, and nonzero
@@ -273,7 +279,7 @@ add)
 	fi
     fi
 
-    if [ $FOUND = false ]; then
+    if [ "$FOUND" = "false" ]; then
 	mesg "... no drivers for $LABEL"
 	exit 2
     fi

Index: etc/hotplug/usb.rc
===================================================================
RCS file: /cvsroot/linux-hotplug/admin/etc/hotplug/usb.rc,v retrieving revision 1.5

hotplug/usb.rc +2 -1
diff -u -3 -p -r1.5 usb.rc
@@ -53,7 +53,7 @@ usb_boot_events ()
 	# synthesize hotplug events if we can 
 	# we need (non-bash) programs to parse descriptors.
 	LISTER=`type -p usbmodules`
-	if [ x$LISTER = x -o ! -f /proc/bus/usb/devices ]; then
+	if [ "$LISTER" = "" -o ! -f /proc/bus/usb/devices ]; then
 		echo $"** can't synthesize root hub events"
 		return
 	fi
@@ -98,6 +98,7 @@ maybe_start_usb ()
 	    then
 		mount /proc/bus/usb
 	    else
+                # why do not use usbdevfs instead of none?
 		mount -t usbdevfs none /proc/bus/usb
 	    fi
 	fi

Index: sbin/hotplug
===================================================================
RCS file: /cvsroot/linux-hotplug/admin/sbin/hotplug,v retrieving revision 1.3

hotplug +2 -2
diff -u -3 -p -r1.3 hotplug
@@ -32,14 +32,14 @@ fi
 # Examples:  usb, pci, isapnp, net, ieee1394, printer, disk,
 # parport, ... 
 #
-if [ $# -lt 1 -o "$1" = help -o "$1" = '--help' ]; then
+if [ $# -lt 1 -o "$1" = "help" -o "$1" = "--help" ]; then
     if [ -t ]; then
 	echo "Usage: $0 AgentName ..."
 
 	AGENTS=""
 	for AGENT in /etc/hotplug/*.agent ; do
 	    TYPE=`basename $AGENT | sed s/.agent//`
-	    if [ -x $AGENT ] ; then
+	    if [ -x $AGENT ]; then
 		AGENTS="$AGENTS $TYPE"
 	    else
 		AGENTS="$AGENTS ($TYPE)"