Red Hat Training

A Red Hat training course is available for Red Hat Enterprise Linux

13. Configuration Changes From Previous Release

krb5-server-1.6.1-17.el5.i386.rpm: /etc/rc.d/init.d/krb524
---  
+++  
@@ -13,9 +13,6 @@
 # Get config.
 . /etc/sysconfig/network
 
-# Check that networking is up.
-[ ${NETWORKING} = "no" ] && exit 0
-
 # Get config.
 [ -r /etc/sysconfig/krb524 ] && . /etc/sysconfig/krb524
 
@@ -28,9 +25,8 @@
 
 # Shell functions to cut down on unnecessary shell invocations.
 start() {
-  	if [ ! -f /var/kerberos/krb5kdc/principal ] ; then
-	    exit 0
-	fi
+  	[ -f /var/kerberos/krb5kdc/principal ] || exit 6
+	[ -x $krb524d ] || exit 5
 	echo -n $"Starting $prog: "
 	daemon ${krb524d} ${KRB524D_ARGS:--m}
 	RETVAL=$?
@@ -68,7 +64,7 @@
 	;;
   *)
 	echo $"Usage: $0 {start|stop|status|restart|condrestart}"
-	RETVAL=1
+	RETVAL=2
 	;;
 esac
 
lvm2-2.02.26-3.el5.i386.rpm: /etc/rc.d/init.d/lvm2-monitor
---  
+++  
@@ -27,17 +27,11 @@
 VGCHANGE="/usr/sbin/vgchange"
 WARN=1
 
-getvgs() {
-    # TODO workaround, need fix warning messages to always use stderr
-    vgs --noheadings -o name 2> /dev/null | grep -v '^[ \t]*WARNING:' | \
-	grep -v '^[ \t]*Volume Groups with the clustered attribute will be inaccessible.'
-}
-
 start()
 {
 	ret=0
 	# TODO do we want to separate out already active groups only?
-	VGS=`getvgs`
+	VGS=`vgs --noheadings -o name 2> /dev/null`
 	for vg in $VGS
 	do
 	    action "Starting monitoring for VG $vg:" $VGCHANGE --monitor y $vg || ret=$?
@@ -55,7 +49,7 @@
 	   echo "Not stopping monitoring, this is a dangerous operation. Please use force-stop to override."
 	   return 1
 	fi
-	VGS=`getvgs`
+	VGS=`vgs --noheadings -o name 2> /dev/null`
 	for vg in $VGS
 	do
 	    action "Stopping monitoring for VG $vg:" $VGCHANGE --monitor n $vg || ret=$?
dhcp-3.0.5-7.el5.i386.rpm: /etc/rc.d/init.d/dhcpd
---  
+++  
@@ -1,128 +1,140 @@
 #!/bin/sh
 #
-# dhcpd         This shell script takes care of starting and stopping
-#               dhcpd.
+### BEGIN INIT INFO
+# Provides: dhcpd
+# Default-Start:
+# Default-Stop:
+# Should-Start:
+# Required-Start: $network
+# Required-Stop:
+# Short-Description: Start and stop the DHCP server
+# Description: dhcpd provides the Dynamic Host Configuration Protocol (DHCP)
+#              server.
+### END INIT INFO
+#
+# The fields below are left around for legacy tools (will remove later).
 #
 # chkconfig: - 65 35
-# description: dhcpd provide access to Dynamic Host Control Protocol.
+# description: dhcpd provides the Dynamic Host Configuration Protocol (DHCP) \
+#              server
+# processname: dhcpd
+# config: /etc/dhcpd.conf
+# config: /var/lib/dhcpd/dhcpd.leases
+# pidfile: /var/run/dhcpd.pid
 
-# Source function library.
-. /etc/rc.d/init.d/functions
+. /etc/init.d/functions
 
-# Source networking configuration.
-. /etc/sysconfig/network
-. /etc/sysconfig/dhcpd
+RETVAL=0
 
-# Check that networking is up.
-[ ${NETWORKING} = "no" ] && exit 0
+prog=dhcpd
+dhcpd=/usr/sbin/dhcpd
+lockfile=/var/lock/subsys/dhcpd
+pidfile=/var/run/dhcpd.pid
+statedir=/var/lib/dhcpd
 
-[ -f /usr/sbin/dhcpd ] || exit 0
+[ -f /etc/sysconfig/dhcpd ] && . /etc/sysconfig/dhcpd
 
-cfOption()
-{ let i=0; 
-  for a in $*; 
-  do ((++i)); 
-     if [ $a = -cf ]; then 
-	 ((++i)); 
-	 eval 'echo $'$i;
-     elif [[ $a = -cf* ]]; then 
-	 echo ${a#-cf}; 
-     fi; 
-  done; 
+# if the user specified a different config file, make sure we reference it
+findConfig() {
+    for arg in $DHCPDARGS ; do
+        if [ "$found" = 1 ]; then
+            [ -f "$arg" ] && echo "$arg"
+            return
+        fi
+        if [ "$arg" = "-cf" ]; then
+            found=1
+            continue
+        fi
+    done
+    echo "/etc/dhcpd.conf"
 }
 
-CF=`cfOption $DHCPDARGS`
-if [ -z "$CF" ]; then
-   CF='/etc/dhcpd.conf';
+conf="$(findConfig "$DHCPDARGS")"
+
+if [ ! -f $statedir/dhcpd.leases ] ; then
+    mkdir -p $statedir
+    touch $statedir/dhcpd.leases
+    [ -x /sbin/restorecon ] && [ -d /selinux ] && /sbin/restorecon $statedir/dhcpd.leases >/dev/null 2>&1
 fi
 
-[ -f "$CF" ] || exit 0
-if [ ! -f /var/lib/dhcpd/dhcpd.leases ] ; then
-   mkdir -p /var/lib/dhcpd
-   touch /var/lib/dhcpd/dhcpd.leases
-   [ -x /sbin/restorecon ] && [ -d /selinux ] && /sbin/restorecon /var/lib/dhcp/dhcpd.leases >/dev/null 2>&1
-fi
-
-RETVAL=0
-prog="dhcpd"
-
-configtest()
-{        
-	/usr/sbin/dhcpd -q -t -cf $CF
-	return $?
+configtest() {
+    [ -x $dhcpd ] || return 5
+    [ -f $conf ] || return 6
+    $dhcpd -q -t -cf $conf
+    RETVAL=$?
+    return $RETVAL
 }
 
 start() {
-	# Start daemons.
-	echo -n $"Starting $prog: "
-	daemon /usr/sbin/dhcpd ${DHCPDARGS} 2>/dev/null
-	RETVAL=$?
-	echo
-	if [ $RETVAL -eq 0 ]; then 
-	    touch /var/lock/subsys/dhcpd
-	    if [ -x /usr/bin/logger ]; then
-		/usr/bin/logger -t dhcpd 'dhcpd startup succeeded'
-	    fi;
-	else
-	    if [ -x /usr/bin/logger ]; then
-		/usr/bin/logger -t dhcpd 'dhcpd startup failed'
-	    fi;
-        fi
-	return $RETVAL
+    [ -x $dhcpd ] || return 5
+    [ -f $conf ] || return 6
+
+    pidofproc $prog >/dev/null 2>&1
+    RETVAL=$?
+    [ $RETVAL -eq 0 ] && return $RETVAL
+
+    echo -n $"Starting $prog: "
+    daemon $dhcpd $DHCPDARGS 2>/dev/null
+    RETVAL=$?
+    echo
+    [ $RETVAL = 0 ] && touch $lockfile
+    return $RETVAL
 }
 
 stop() {
-	# Stop daemons.
-	echo -n $"Shutting down $prog: "
-	killproc dhcpd
-	RETVAL=$?
-	echo
-	if [ $RETVAL -eq 0 ]; then
-           rm -f /var/lock/subsys/dhcpd
-	   if [ -x /usr/bin/logger ]; then
-		/usr/bin/logger -t dhcpd 'dhcpd shutdown succeeded'
-	   fi;
-	else
-	   if [ -x /usr/bin/logger ]; then
-		/usr/bin/logger -t dhcpd 'dhcpd shutdown failed'
-	   fi;
-	fi
-	return $RETVAL
+    pidofproc $prog >/dev/null 2>&1
+    if [ $? -ne 0 ]; then
+        RETVAL=7
+        return $RETVAL
+    fi
+
+    echo -n $"Shutting down $prog: "
+    killproc $prog
+    RETVAL=$?
+    [ $RETVAL = 0 ] && rm -f $lockfile
+    echo
+    return $RETVAL
 }
 
-# See how we were called.
+if [ $# -gt 1 ]; then
+    RETVAL=2
+    exit $RETVAL
+fi
+
 case "$1" in
-  start)
-	start
-	;;
-  stop)
-	stop
-	;;
-  restart|reload)
-	configtest || exit $?
-	stop
-	start
-	RETVAL=$?
-	;;
-  condrestart)
-	if [ -f /var/lock/subsys/dhcpd ]; then
-	    stop
-	    start
-	    RETVAL=$?
-	fi
-	;;
-  configtest|check|testconfig|test)
-	configtest
-	RETVAL=$?
-	;;
-  status)
-	status dhcpd
-	RETVAL=$?
-	;;
-  *)
-	echo $"Usage: $0 {start|stop|restart|condrestart|configtest|status}"
-	exit 1
+    start)
+        start
+        RETVAL=$?
+        ;;
+    stop)
+        stop
+        RETVAL=$?
+        ;;
+    restart|force-reload)
+        stop ; start
+        RETVAL=$?
+        ;;
+    try-restart|reload)
+        RETVAL=3
+        ;;
+    condrestart)
+        if [ -f $lockfile ]; then
+            stop ; start
+            RETVAL=$?
+        fi
+        ;;
+    configtest)
+        configtest
+        RETVAL=$?
+        ;;
+    status)
+        status $dhcpd
+        RETVAL=$?
+        ;;
+    *)
+        echo $"Usage: $0 {start|stop|restart|condrestart|configtest|status}"
+        RETVAL=3
+        ;;
 esac
 
 exit $RETVAL
-
bind-9.3.3-10.el5.i386.rpm: /etc/rc.d/init.d/named
---  
+++  
@@ -14,10 +14,9 @@
 # Source networking configuration.
 [ -r /etc/sysconfig/network ] && . /etc/sysconfig/network
 
-# Check that networking is up.
-[ "${NETWORKING}" = "no" ] && exit 1
-
 [ -r /etc/sysconfig/named ] && . /etc/sysconfig/named
+
+export KRB5_KTNAME=${KEYTAB_FILE:-/etc/named.keytab}
 
 # Don't kill named during clean-up
 NAMED_SHUTDOWN_TIMEOUT=${NAMED_SHUTDOWN_TIMEOUT:-100}
@@ -36,8 +35,6 @@
     named='named_sdb';
 fi;
 prog=$named
-
-[ -x /usr/sbin/$named ] || exit 1
 
 nmdcOption()
 { let i=0; 
@@ -54,18 +51,6 @@
 
 named_c_option=`nmdcOption $OPTIONS`;
 named_conf=${named_c_option:-/etc/named.conf};
-
-if [ ! -r ${ROOTDIR}${named_conf} ] ; then
-   if [ -z "$named_c_option" ] && [ -r ${ROOTDIR}/etc/named.caching-nameserver.conf ]; then
-       named_conf='/etc/named.caching-nameserver.conf';
-       OPTIONS="$OPTIONS -c ${named_conf}";
-   else
-       echo Locating $ROOTDIR/${named_conf} failed:
-       failure
-       echo;
-       exit 1;
-   fi;
-fi;
 
 dbusEnabled=0;
 for a in $OPTIONS; do
@@ -88,6 +73,21 @@
 fi
 
 start() {
+
+	[ -x /usr/sbin/$named ] || exit 5
+
+	if [ ! -r ${ROOTDIR}${named_conf} ] ; then
+	   if [ -z "$named_c_option" ] && [ -r ${ROOTDIR}/etc/named.caching-nameserver.conf ]; then
+	       named_conf='/etc/named.caching-nameserver.conf';
+	       OPTIONS="$OPTIONS -c ${named_conf}";
+	   else
+	       echo Locating $ROOTDIR/${named_conf} failed:
+	       failure
+	       echo;
+	       exit 6;
+	   fi;
+	fi;
+
         # Start daemons.
         echo -n $"Starting $named: "
 	if [ -n "`/sbin/pidof -o %PPID $named`" ]; then
@@ -185,7 +185,7 @@
 	   if [ -x /usr/bin/logger ]; then
 	       echo "$named_err" | /usr/bin/logger -pdaemon.error -tnamed 
            fi;
-           return $RETVAL;
+           return 7;
         fi;
  	[ $RETVAL -eq 0 ] && touch /var/lock/subsys/named 
         echo
@@ -196,23 +196,19 @@
         echo -n $"Stopping $named: "
 	/usr/sbin/rndc stop >/dev/null 2>&1 
 	RETVAL=$?
-	if [ $RETVAL -eq 0 ]; then
-            timeout=0
-            while : ; do
-		if /sbin/pidof -o %PPID $named >/dev/null; then
-         	   if [ $timeout -ge $NAMED_SHUTDOWN_TIMEOUT ]; then
-		   	killproc $named -TERM >/dev/null 2>&1
-	           	RETVAL=$?
+	[ "$RETVAL" -eq 0 ] || killproc "$named" -TERM >/dev/null 2>&1
+
+	timeout=0
+	RETVAL=0
+	while /sbin/pidof -o %PPID "$named" >/dev/null; do
+		if [ $timeout -ge $NAMED_SHUTDOWN_TIMEOUT ]; then
+			RETVAL=1
 			break
-        	   else
+		else
 			sleep 2 && echo -n "."
 			timeout=$((timeout+2))
-		   fi;
-		else
-		   break
-                fi;
-            done
-	fi;
+		fi;
+	done
 	if [ $RETVAL -eq 0 ]; then
 	    rm -f /var/lock/subsys/named
 	    rm -f /var/run/named.pid
@@ -238,6 +234,7 @@
 }
 rhstatus() {
 	/usr/sbin/rndc status
+	status /usr/sbin/$named
 	return $?
 }	
 restart() {
@@ -292,7 +289,7 @@
 		restart
 		;;
 	condrestart)
-		if [ -e /var/lock/subsys/named ]; then restart; fi
+		[ -e /var/lock/subsys/named ] && restart;
 		;;
 	reload)
 		reload
@@ -304,8 +301,8 @@
 	        checkconfig
 		;;
 	*)
-        	echo $"Usage: $0 {start|stop|status|restart|condrestart|reload|probe}"
-		exit 1
+        	echo $"Usage: $0 {start|stop|status|restart|condrestart|reload|configtest|probe}"
+		exit 2
 esac
 
 exit $?
krb5-server-1.6.1-17.el5.i386.rpm: /etc/rc.d/init.d/kprop
---  
+++  
@@ -12,9 +12,6 @@
 # Get config.
 . /etc/sysconfig/network
 
-# Check that networking is up.
-[ ${NETWORKING} = "no" ] && exit 0
-
 # Source function library.
 . /etc/init.d/functions
 
@@ -24,9 +21,8 @@
 
 # Sheel functions to cut down on useless shell instances.
 start() {
-  	if [ ! -f /var/kerberos/krb5kdc/kpropd.acl ] ; then
-	    exit 0
-	fi
+  	[ -f /var/kerberos/krb5kdc/kpropd.acl ] || exit 6
+	[ -x $kpropd ] || exit 5
 	echo -n $"Starting $prog: "
 	daemon ${kpropd} -S
 	RETVAL=$?
@@ -65,7 +61,7 @@
 	;;
   *)
 	echo $"Usage: $0 {start|stop|status|restart|condrestart}"
-	RETVAL=1
+	RETVAL=2
 	;;
 esac
 
initscripts-8.45.17.EL-1.i386.rpm: /etc/sysconfig/network-scripts/ifup-ipsec
---  
+++  
@@ -102,6 +102,7 @@
     [ -n "$KEY_ESP_IN" ] && SPD_ESP_IN=yes
     [ -n "$KEY_ESP_OUT" ] && SPD_ESP_OUT=yes
 else
+    [ -z "$IKE_DHGROUP" ] && IKE_DHGROUP=2
     [ -z "$AH_PROTO" ] && AH_PROTO=sha1
     [ -z "$ESP_PROTO" ] && ESP_PROTO=3des
 
@@ -179,7 +180,7 @@
 	        encryption_algorithm $ESP_PROTO;
 		hash_algorithm $AH_PROTO;
 		authentication_method pre_shared_key;
-		dh_group 2 ;
+		dh_group $IKE_DHGROUP;
 	}
 }
 EOF
@@ -201,7 +202,7 @@
 		encryption_algorithm $ESP_PROTO;
 		hash_algorithm $AH_PROTO;
 		authentication_method rsasig;
-		dh_group 2;
+		dh_group $IKE_DHGROUP;
 	}
 }
 EOF
@@ -213,7 +214,7 @@
 	        encryption_algorithm $ESP_PROTO;
 		hash_algorithm $AH_PROTO;
 		authentication_method gssapi_krb;
-		dh_group 2 ;
+		dh_group $IKE_DHGROUP;
 	}
 }
 EOF
krb5-server-1.6.1-17.el5.i386.rpm: /etc/rc.d/init.d/kadmin
---  
+++  
@@ -14,9 +14,6 @@
 # Get config.
 . /etc/sysconfig/network
 
-# Check that networking is up.
-[ ${NETWORKING} = "no" ] && exit 0
-
 # Get config.
 [ -r /etc/sysconfig/kadmin ] && . /etc/sysconfig/kadmin
 
@@ -32,15 +29,16 @@
   	if [ ! -f /var/kerberos/krb5kdc/principal ] ; then
 	    # Make an educated guess—if they're using kldap somewhere,
 	    # then we don't know for sure that this is an error.
-  	    if [ ! grep -q 'db_library.*=.*kldap' /etc/krb5.conf ] ; then
+  	    if ! grep -q 'db_library.*=.*kldap' /etc/krb5.conf ; then
 	        echo $"Error. Default principal database does not exist."
+	        exit 1
 	    fi
-	    exit 0
 	fi
   	if [ -f /var/kerberos/krb5kdc/kpropd.acl ] ; then
 	    echo $"Error. This appears to be a slave server, found kpropd.acl"
-	    exit 0
+	    exit 6
 	else
+	[ -x $kadmind ] || exit 5
   	    if [ ! -f /var/kerberos/krb5kdc/kadm5.keytab ] ; then
 		echo -n $"Extracting kadm5 Service Keys: "
 		# This should always work.
@@ -97,7 +95,7 @@
 	;;
   *)
 	echo $"Usage: $0 {start|stop|status|condrestart|reload|restart}"
-	RETVAL=1
+	RETVAL=2
 	;;
 esac
 
nfs-utils-1.0.9-24.el5.i386.rpm: /etc/rc.d/init.d/nfs
---  
+++  
@@ -14,41 +14,38 @@
 . /etc/rc.d/init.d/functions
 
 # Source networking configuration.
-if [ ! -f /etc/sysconfig/network ]; then
-    exit 6
-fi
-
-. /etc/sysconfig/network
-
-# Check that networking is up.
-[ "${NETWORKING}" = "no" ] && exit 6
-
-[ -x /usr/sbin/rpc.nfsd ] || exit 5
-[ -x /usr/sbin/rpc.mountd ] || exit 5
-[ -x /usr/sbin/exportfs ] || exit 5
-
-# Don't fail if /etc/exports doesn't exist; create a bare-bones version and continue.
-[ -r /etc/exports ] || \
-    { touch /etc/exports && chmod u+rw,g+r,o+r /etc/exports ; } || \
-    { echo "/etc/exports does not exist" ; exit 0 ; }
+[ -f /etc/sysconfig/network ] && . /etc/sysconfig/network
 
 # Check for and source configuration file otherwise set defaults
 [ -f /etc/sysconfig/nfs ] && . /etc/sysconfig/nfs
-
-[ -z "$MOUNTD_NFS_V2" ] && MOUNTD_NFS_V2=default
-[ -z "$MOUNTD_NFS_V3" ] && MOUNTD_NFS_V3=default
-
-# Number of servers to be started by default
-[ -z "$RPCNFSDCOUNT" ] && RPCNFSDCOUNT=8
-
-# Remote quota server
-[ -z "$RQUOTAD" ] && RQUOTAD=`type -path rpc.rquotad`
 
 RETVAL=0
 
 # See how we were called.
 case "$1" in
   start)
+
+	# Check that networking is up.
+	[ "${NETWORKING}" = "no" ] && exit 6
+
+	[ -x /usr/sbin/rpc.nfsd ] || exit 5
+	[ -x /usr/sbin/rpc.mountd ] || exit 5
+	[ -x /usr/sbin/exportfs ] || exit 5
+
+	# Don't fail if /etc/exports doesn't exist; create a bare-bones 
+	# version and continue.
+	[ -r /etc/exports ] || \
+    	{ touch /etc/exports && chmod u+rw,g+r,o+r /etc/exports ; } || \
+    	{ echo "/etc/exports does not exist" ; exit 0 ; }
+	[ -z "$MOUNTD_NFS_V2" ] && MOUNTD_NFS_V2=default
+	[ -z "$MOUNTD_NFS_V3" ] && MOUNTD_NFS_V3=default
+
+	# Number of servers to be started by default
+	[ -z "$RPCNFSDCOUNT" ] && RPCNFSDCOUNT=8
+
+	# Remote quota server
+	[ -z "$RQUOTAD" ] && RQUOTAD=`type -path rpc.rquotad`
+
 	# Start daemons.
 	[ -x /usr/sbin/rpc.svcgssd ] && /sbin/service rpcsvcgssd start
 
@@ -98,6 +95,7 @@
 	daemon rpc.mountd $RPCMOUNTDOPTS
 	RETVAL=$?
 	echo
+	[ $RETVAL -ne 0 ] && exit $RETVAL
 	touch /var/lock/subsys/nfs
 
 	# Let rpc.idmapd know that rpc.mountd just started
@@ -117,13 +115,6 @@
 		killproc rpc.rquotad
 		RETVAL=$?
 		echo
-	fi
-	# Reset the lockd ports if they were set
-	if [ -n "$LOCKD_TCPPORT" ]; then
-	    /sbin/sysctl -w fs.nfs.nlm_tcpport=0 >/dev/null 2>&1
-	fi
-	if [ -n "$LOCKD_UDPPORT" ]; then
-	    /sbin/sysctl -w fs.nfs.nlm_udpport=0 >/dev/null 2>&1
 	fi
 	# Do it the last so that clients can still access the server
 	# when the server is running.
gdm-2.16.0-31.0.1.el5.i386.rpm: /etc/gdm/PreSession/Default
---  
+++  
@@ -68,4 +68,17 @@
 	"$XSETROOT" -cursor_name left_ptr -solid "$BACKCOLOR"
 fi
 
+SESSREG=`gdmwhich sessreg`
+if [ "x$SESSREG" != "x" ] ; then
+	# some output for easy debugging
+	echo "$0: Registering your session with utmp"
+	echo "$0: running: $SESSREG -a -u /var/run/utmp -x \"$X_SERVERS\" -h \"$REMOTE_HOST\" -l \"$DISPLAY\" \"$USER\""
+
+	exec "$SESSREG" -a -u /var/run/utmp -x "$X_SERVERS" -h "$REMOTE_HOST" -l "$DISPLAY" "$USER"
+	# this is not reached
+fi
+
+# some output for easy debugging
+echo "$0: could not find the sessreg utility, cannot update wtmp and utmp"
+
 exit 0
kexec-tools-1.101-194.4.el5.i386.rpm: /etc/rc.d/init.d/kdump
---  
+++  
@@ -24,6 +24,7 @@
 BOOTDIR="/boot"
 
 KDUMP_KERNELVER=""
+KDUMP_INITRDEXT=""
 KDUMP_COMMANDLINE=""
 KEXEC_ARGS=""
 KDUMP_CONFIG_FILE="/etc/kdump.conf"
@@ -43,7 +44,7 @@
 	coredir="/var/crash/`date +"%Y-%m-%d-%H:%M"`"
 
 	mkdir -p $coredir
-	cp /proc/vmcore $coredir/vmcore-incomplete
+	cp --sparse=always /proc/vmcore $coredir/vmcore-incomplete
 	exitcode=$?
 	if [ $exitcode == 0 ]; then
 		mv $coredir/vmcore-incomplete $coredir/vmcore
@@ -83,7 +84,7 @@
 	fi
 
 	kdump_kernel="${KDUMP_BOOTDIR}/${KDUMP_IMG}-${kdump_kver}${KDUMP_IMG_EXT}"
-	kdump_initrd="${KDUMP_BOOTDIR}/initrd-${kdump_kver}kdump.img"
+	kdump_initrd="${KDUMP_BOOTDIR}/initrd-${kdump_kver}${KDUMP_INITRDEXT}kdump.img"
 
 	if [ ! -f $kdump_kernel ]; then
 		echo -n "No kdump kernel image found."; warning; echo
@@ -186,6 +187,7 @@
 		KDUMP_COMMANDLINE=`cat /proc/cmdline`
 	fi
 
+	ARCH=`uname -m`
 	if [ "$ARCH" == "ppc64" ]
 	then
 		MEM_RESERVED=`grep "crashkernel=[0-9]\+[MmKkGg]@[0-9]\+[MmGgKk]" /proc/cmdline`
initscripts-8.45.17.EL-1.i386.rpm: /etc/rc.d/init.d/network
---  
+++  
@@ -174,7 +174,7 @@
         rootfs=$(awk '{ if ($1 !~ /^[ \t]*#/ && $2 == "/") { print $3; }}' /etc/mtab)
         rootopts=$(awk '{ if ($1 !~ /^[ \t]*#/ && $2 == "/") { print $4; }}' /etc/mtab)
 	
-	if [[ "$rootfs" =~ "^nfs" ]] || [[ "$rootopts" =~ "_netdev" ]] ; then
+	if [[ "$rootfs" =~ "^nfs" ]] || [[ "$rootopts" =~ "_netdev|_rnetdev" ]] ; then
 		exit 1
 	fi
   
nfs-utils-1.0.9-24.el5.i386.rpm: /etc/rc.d/init.d/rpcidmapd
---  
+++  
@@ -12,15 +12,7 @@
 . /etc/init.d/functions
 
 # Source networking configuration.
-if [ ! -f /etc/sysconfig/network ]; then
-    exit 6
-fi
-. /etc/sysconfig/network
-
-# Check that networking is up.
-[ "${NETWORKING}" = "no" ] && exit 6
-
-[ ! -x /usr/sbin/rpc.idmapd ] && exit 5
+[ -f /etc/sysconfig/network ] && . /etc/sysconfig/network
 
 # Check for and source configuration file otherwise set defaults
 [ -f /etc/sysconfig/nfs ] && . /etc/sysconfig/nfs
@@ -31,6 +23,11 @@
 
 case "$1" in
   start|condstart)
+	# Check that networking is up.
+	[ "${NETWORKING}" = "no" ] && exit 6
+
+	[ ! -x /usr/sbin/rpc.idmapd ] && exit 5
+
 	# Make sure the daemon is not already running.
 	[ "$1" = "condstart" -a -n "`pidofproc $prog`" ] && {
 		killproc $prog "-SIGHUP" > /dev/null
NetworkManager-gnome-0.6.4-6.el5.i386.rpm: /etc/dbus-1/system.d/nm-applet.conf
---  
+++  
@@ -20,5 +20,7 @@
 		<deny send_destination="org.freedesktop.NetworkManagerInfo"/>
 		<deny send_interface="org.freedesktop.NetworkManagerInfo"/>
 	</policy>
+
+	<limit name="max_replies_per_connection">512</limit>
 </busconfig>
 
sysklogd-1.4.1-40.el5.i386.rpm: /etc/logrotate.d/syslog
---  
+++  
@@ -2,5 +2,6 @@
     sharedscripts
     postrotate
 	/bin/kill -HUP `cat /var/run/syslogd.pid 2> /dev/null` 2> /dev/null || true
+	/bin/kill -HUP `cat /var/run/rsyslogd.pid 2> /dev/null` 2> /dev/null || true
     endscript
 }
nfs-utils-1.0.9-24.el5.i386.rpm: /etc/rc.d/init.d/rpcgssd
---  
+++  
@@ -12,23 +12,13 @@
 . /etc/init.d/functions
 
 # Source networking configuration.
-if [ ! -f /etc/sysconfig/network ]; then
-    exit 6
-fi
-. /etc/sysconfig/network
-
-# Check that networking is up.
-[ "${NETWORKING}" = "no" ] && exit 6
-
-[ ! -x /usr/sbin/rpc.gssd ] && exit 5
+[ -f /etc/sysconfig/network ] && . /etc/sysconfig/network
 
 # Check for and source configuration file otherwise set defaults
 [ -f /etc/sysconfig/nfs ] && . /etc/sysconfig/nfs
+
+# See if we are configured to start 
 [ "${SECURE_NFS}" != "yes" ] && exit 6
-
-# List of kernel modules to load
-[ -z "${SECURE_NFS_MODS}" ] && SECURE_NFS_MODS="des rpcsec_gss_krb5"
-
 
 # Try to use machine credentials by default
 RETVAL=0
@@ -37,6 +27,13 @@
 
 case "$1" in
   start|condstart)
+	# Check that networking is up.
+	[ "${NETWORKING}" = "no" ] && exit 6
+	[ ! -x /usr/sbin/rpc.gssd ] && exit 5
+
+	# List of kernel modules to load
+	[ -z "${SECURE_NFS_MODS}" ] && SECURE_NFS_MODS="des rpcsec_gss_krb5"
+
 	# Make sure the daemon is not already running.
 	if status $prog > /dev/null ; then
 		exit 0
krb5-server-1.6.1-17.el5.i386.rpm: /etc/rc.d/init.d/krb5kdc
---  
+++  
@@ -13,9 +13,6 @@
 # Get config.
 . /etc/sysconfig/network
 
-# Check that networking is up.
-[ ${NETWORKING} = "no" ] && exit 0
-
 # Get config.
 [ -r /etc/sysconfig/krb5kdc ] && . /etc/sysconfig/krb5kdc
 
@@ -28,6 +25,7 @@
 
 # Sheel functions to cut down on useless shell instances.
 start() {
+	[ -x $krb5kdc ] || exit 5
 	echo -n $"Starting $prog: "
 	daemon ${krb5kdc} ${KRB5REALM:+-r ${KRB5REALM}} $KRB5KDC_ARGS
 	RETVAL=$?
@@ -75,7 +73,7 @@
 	;;
   *)
 	echo $"Usage: $0 {start|stop|status|reload|restart|condrestart}"
-	RETVAL=1
+	RETVAL=2
 	;;
 esac
 
nfs-utils-1.0.9-24.el5.i386.rpm: /etc/rc.d/init.d/rpcsvcgssd
---  
+++  
@@ -12,22 +12,13 @@
 . /etc/init.d/functions
 
 # Source networking configuration.
-if [ ! -f /etc/sysconfig/network ]; then
-    exit 6
-fi
-. /etc/sysconfig/network
-
-# Check that networking is up.
-[ "${NETWORKING}" = "no" ] && exit 6
-
-[ ! -x /usr/sbin/rpc.svcgssd ] && exit 5
+[ -f /etc/sysconfig/network ] && . /etc/sysconfig/network
 
 # Check for and source configuration file otherwise set defaults
 [ -f /etc/sysconfig/nfs ] && . /etc/sysconfig/nfs
+
+# See if we are configured to start 
 [ "${SECURE_NFS}" != "yes" ] && exit 6
-
-# List of kernel modules to load
-[ -z "${SECURE_NFS_MODS}" ] && SECURE_NFS_MODS="des rpcsec_gss_krb5"
 
 RETVAL=0
 LOCKFILE=/var/lock/subsys/rpcsvcgssd
@@ -35,6 +26,14 @@
 
 case "$1" in
   start|condstart)
+	# Check that networking is up.
+	[ "${NETWORKING}" = "no" ] && exit 6
+	[ "${SECURE_NFS}" != "yes" ] && exit 6
+	[ ! -x /usr/sbin/rpc.svcgssd ] && exit 5
+
+	# List of kernel modules to load
+	[ -z "${SECURE_NFS_MODS}" ] && SECURE_NFS_MODS="des rpcsec_gss_krb5"
+
 	# Make sure the daemon is not already running.
 	if status $prog > /dev/null ; then
 		exit 0
gdm-2.16.0-31.0.1.el5.i386.rpm: /etc/gdm/PostSession/Default
---  
+++  
@@ -21,6 +21,6 @@
 
 SESSREG=`gdmwhich sessreg`
 if [ "x$SESSREG" != "x" ] ; then
-	"$SESSREG" -d -w /var/log/wtmp -u /var/run/utmp -x "$X_SERVERS" -h "$REMOTE_HOST" -l "$DISPLAY" "$USER"
+	"$SESSREG" -d -u /var/run/utmp -x "$X_SERVERS" -h "$REMOTE_HOST" -l "$DISPLAY" "$USER"
 fi
 exit 0
fontconfig-2.4.1-6.el5.i386.rpm: /etc/fonts/conf.d/30-aliases-fedora.conf
---  
+++  
@@ -42,6 +42,7 @@
 	  <family>Helvetica</family>
 	  <accept>
 	  <family>Nimbus Sans L</family>
+          <family>Liberation Sans</family>
 	  <family>Arial</family>
 	  <family>Albany</family>
 	  <family>Albany AMT</family>
@@ -52,6 +53,7 @@
 	  <family>Times</family>
 	  <accept>
 	  <family>Nimbus Roman No9 L</family>
+          <family>Liberation Serif</family>
 	  <family>Times New Roman</family>
 	  <family>Thorndale</family>
 	  <family>Thorndale AMT</family>
@@ -62,6 +64,7 @@
 	  <family>Courier</family>
 	  <accept>
 	  <family>Nimbus Mono L</family>
+          <family>Liberation Mono</family>
 	  <family>Courier New</family>
 	  <family>Cumberland</family>
 	  <family>Cumberland AMT</family>
@@ -74,6 +77,7 @@
         <alias>
 	  <family>Arial</family>
 	  <accept>
+          <family>Liberation Sans</family>
 	  <family>Albany</family>
 	  <family>Albany AMT</family>
 	  <family>Helvetica</family>
@@ -84,6 +88,7 @@
         <alias>
 	  <family>Times New Roman</family>
 	  <accept>
+          <family>Liberation Serif</family>
 	  <family>Thorndale</family>
 	  <family>Thorndale AMT</family>
 	  <family>Times</family>
@@ -94,6 +99,7 @@
         <alias>
 	  <family>Courier New</family>
 	  <accept>
+          <family>Liberation Mono</family>
 	  <family>Cumberland</family>
 	  <family>Cumberland AMT</family>
 	  <family>Courier</family>
@@ -106,6 +112,7 @@
         <alias>
 	  <family>Albany</family>
 	  <accept>
+          <family>Liberation Sans</family>
 	  <family>Arial</family>
 	  <family>Albany AMT</family>
 	  <family>Helvetica</family>
@@ -116,6 +123,7 @@
         <alias>
 	  <family>Thorndale</family>
 	  <accept>
+          <family>Liberation Serif</family>
 	  <family>Times New Roman</family>
 	  <family>Thorndale AMT</family>
 	  <family>Times</family>
@@ -126,6 +134,7 @@
         <alias>
 	  <family>Cumberland</family>
 	  <accept>
+          <family>Liberation Mono</family>
 	  <family>Courier New</family>
 	  <family>Cumberland AMT</family>
 	  <family>Courier</family>
@@ -138,6 +147,7 @@
         <alias>
 	  <family>Albany AMT</family>
 	  <accept>
+          <family>Liberation Sans</family>
 	  <family>Arial</family>
 	  <family>Albany</family>
 	  <family>Helvetica</family>
@@ -148,6 +158,7 @@
         <alias>
 	  <family>Thorndale AMT</family>
 	  <accept>
+          <family>Liberation Serif</family>
 	  <family>Times New Roman</family>
 	  <family>Thorndale</family>
 	  <family>Times</family>
@@ -158,6 +169,7 @@
         <alias>
 	  <family>Cumberland AMT</family>
 	  <accept>
+          <family>Liberation Mono</family>
 	  <family>Courier New</family>
 	  <family>Cumberland</family>
 	  <family>Courier</family>
lam-devel-7.1.2-8.fc6.i386.rpm: /usr/lib/pkgconfig/lam.pc
---  
+++  
@@ -3,5 +3,5 @@
 Description:	The LAM (Local Area Multicomputer) programming environment.
 URL:		http://www.lam-mpi.org/
 Version:	7.1.2
-Libs:		-L/usr/lib/lam -lmpi
-Cflags: 	-I/usr/include/lam -I@INCLUDEDIR@/32
+Libs:		-L/usr/lib/lam/lib -lmpi
+Cflags: 	-I/usr/lib/lam/include
initscripts-8.45.17.EL-1.i386.rpm: /etc/rc.d/rc.sysinit
---  
+++  
@@ -119,10 +119,12 @@
 	fi
 	if [ -n "$key" -a "x$key" != "xnone" ]; then
 	    if test -e "$key" ; then
+		owner=$(ls -l $key | (read a b owner rest; echo $owner))
+		if ! key_is_random "$key"; then
 		mode=$(ls -l "$key" | cut -c 5-10)
-		owner=$(ls -l $key | awk '{ print $3 }')
-		if [ "$mode" != "------" ] && ! key_is_random "$key"; then
-		    echo $"INSECURE MODE FOR $key"
+		    if [ "$mode" != "------" ]; then
+		       echo $"INSECURE MODE FOR $key"
+		    fi
 		fi
 		if [ "$owner" != root ]; then
 		    echo $"INSECURE OWNER FOR $key"
@@ -139,6 +141,12 @@
 	makeswap=""
 	mke2fs=""
 	skip=""
+	# Parse the src field for UUID= and convert to real device names
+	if [ "${src%%=*}" == "UUID" ]; then
+		src=`/sbin/blkid -t "$src" -o device|(read oneline;echo $oneline)`
+	elif [ "${src/^\/dev\/disk\/by-uuid\/}" != "$src" ]; then
+		src=$(__readlink $src)
+	fi
 	# Parse the options field, convert to cryptsetup parameters
 	# and contruct the command line
 	while [ -n "$opt" ]; do
@@ -695,11 +703,27 @@
 	action $"Checking local filesystem quotas: " /sbin/quotacheck -aRnug
 fi
 
+remount_needed() {
+  local state oldifs
+  [ "$READONLY" = "yes" ] && return 1
+  state=`LC_ALL=C awk '/ \/ / && ($3 !~ /rootfs/) { print $4 }' /proc/mounts`
+  oldifs=$IFS
+  IFS=","
+  for opt in $state ; do
+  	if [ "$opt" = "rw" ]; then
+		IFS=$oldifs
+		return 1
+	fi
+  done
+  IFS=$oldifs
+  return 0
+}
+ 
 # Remount the root filesystem read-write.
 update_boot_stage RCmountfs
-state=`LC_ALL=C awk '/ \/ / && ($3 !~ /rootfs/) { print $4 }' /proc/mounts`
-[ "$state" != "rw" -a "$READONLY" != "yes" ] && \
+if remount_needed ; then
   action $"Remounting root filesystem in read-write mode: " mount -n -o remount,rw /
+fi
 
 # Clean up SELinux labels
 if [ -n "$SELINUX_STATE" ]; then
@@ -779,14 +803,14 @@
     if [ -x /usr/bin/passwd ]; then 
         /usr/bin/passwd root
     fi
-    if [ -x /usr/sbin/netconfig ]; then
-	/usr/sbin/netconfig
+    if [ -x /usr/sbin/system-config-network-tui ]; then
+	/usr/sbin/system-config-network-tui
     fi
     if [ -x /usr/sbin/timeconfig ]; then
 	/usr/sbin/timeconfig
     fi
-    if [ -x /usr/sbin/authconfig ]; then
-	/usr/sbin/authconfig --nostart
+    if [ -x /usr/sbin/authconfig-tui ]; then
+	/usr/sbin/authconfig-tui --nostart
     fi
     if [ -x /usr/sbin/ntsysv ]; then
 	/usr/sbin/ntsysv --level 35
nfs-utils-1.0.9-24.el5.i386.rpm: /etc/rc.d/init.d/nfslock
---  
+++  
@@ -13,17 +13,10 @@
 . /etc/rc.d/init.d/functions
 
 # Source networking configuration.
-if [ ! -f /etc/sysconfig/network ]; then
-    exit 6
-fi
+[ -f /etc/sysconfig/network ] && . /etc/sysconfig/network
 
 # Check for and source configuration file
 [ -f /etc/sysconfig/nfs ] && . /etc/sysconfig/nfs
-
-. /etc/sysconfig/network
-
-# Check that networking is up.
-[ "${NETWORKING}" = "no" ] && exit 6
 
 # Start lockd from userland only if kernel <= 2.2.18
 OS_RELEASE=`uname --release`
@@ -37,22 +30,25 @@
     USERLAND_LOCKD=
 fi
 
-if [ "$USERLAND_LOCKD" ] ; then
-    [ -x /sbin/rpc.lockd ] || exit 5
-fi
+RETVAL=0
+start() {
+	# Check that networking is up.
+	[ "${NETWORKING}" = "no" ] && exit 6
 
-[ -x /sbin/rpc.statd ] || exit 5 
+	if [ "$USERLAND_LOCKD" ] ; then
+    	[ -x /sbin/rpc.lockd ] || exit 5
+	fi
+	[ -x /sbin/rpc.statd ] || exit 5 
 
-RETVAL=0
-if [ -n "${STATD_HOSTNAME}" ]; then
-    STATDARG="-n ${STATD_HOSTNAME}"
-else
-    STATDARG=""
-fi
+	if [ -n "${STATD_HOSTNAME}" ]; then
+    	STATDARG="-n ${STATD_HOSTNAME}"
+	else
+    	STATDARG=""
+	fi
 
-
-start() {
-    if [ ! -f /var/lock/subsys/nfslock ]; then
+	if [ -f /var/lock/subsys/nfslock ]; then
+		return $RETVAL
+	fi
 	# Start daemons.
 	if [ "$USERLAND_LOCKD" ]; then
 	  echo -n $"Starting NFS locking: "
@@ -62,12 +58,10 @@
 	# See if the kernel lockd should start up 
 	# listening on a particular port
 	#
-		LOCKDARG=""
-		[ -n "$LOCKD_TCPPORT" ] && LOCKDARG="nlm_tcpport=$LOCKD_TCPPORT"
+		[ -n "$LOCKD_TCPPORT" ] && \
+			/sbin/sysctl -w fs.nfs.nlm_tcpport=$LOCKD_TCPPORT >/dev/null 2>&1
 		[ -n "$LOCKD_UDPPORT" ] && \
-			LOCKDARG="$LOCKDARG nlm_udpport=$LOCKD_UDPPORT"
-		[ -n "$LOCKDARG" ]  && \
-			modprobe lockd $LOCKDARG
+			/sbin/sysctl -w fs.nfs.nlm_udpport=$LOCKD_UDPPORT >/dev/null 2>&1
 	fi  
 	echo -n $"Starting NFS statd: "
 	# See if a statd's ports has been defined
@@ -81,7 +75,6 @@
 	RETVAL=$?
 	echo
 	[ $RETVAL -eq 0 ] && touch /var/lock/subsys/nfslock
-    fi
     return $RETVAL
 }
 
dhcpv6-0.10-33.el5.i386.rpm: /etc/rc.d/init.d/dhcp6s
---  
+++  
@@ -1,83 +1,107 @@
 #!/bin/sh
 #
-# dhcp6s        dhcp6s is an implementation of DHCPv6 server.
-#               This shell script takes care of starting and stopping
-#               dhcp6s.
+### BEGIN INIT INFO
+# Provides: dhcp6s
+# Default-Start:
+# Default-Stop:
+# Should-Start:
+# Required-Start: $network
+# Required-Stop:
+# Short-Description: Start and stop the DHCPv6 server agent
+# Description: dhcp6s provides IPv6 addresses and prefix assignment
+#              administrative policy and configuration information for
+#              DHCPv6 clients.  dhcp6s also manages those addresses and
+#              prefixes, such as IPv6 addresses, prefixes, DNS server
+#              addresses, or ntp server addresses.
+### END INIT INFO
+#
+# The fields below are left around for legacy tools (will remove later).
 #
 # chkconfig: - 66 36
-# description: dhcp6s supports server side of  Dynamic Host Configuration \
-#              Protocol for IPv6.
+# description: dhcp6s provides IPv6 addresses and prefix assignment \
+#              administrative policy and configuration information for \
+#              DHCPv6 clients.  dhcp6s also manages those addresses and \
+#              prefixes, such as IPv6 addresses, prefixes, DNS server \
+#              addresses, or ntp server addresses.
 # processname: dhcp6s
 # config: /etc/dhcp6s.conf
 # config: /etc/sysconfig/dhcp6s
 
-# Source function library.
-. /etc/rc.d/init.d/functions
+. /etc/init.d/functions
 
-# Source networking configuration.
-. /etc/sysconfig/network
-. /etc/sysconfig/dhcp6s
+RETVAL=0
+
+prog=dhcp6s
+dhcp6s=/usr/sbin/dhcp6s
+lockfile=/var/lock/subsys/dhcp6s
 
 # Check that networking is up.
-[ ${NETWORKING} = "no" ] && exit 0
-
-# Check that files exist
-[ -x /usr/sbin/dhcp6s ] || exit 0
-[ -f /etc/dhcp6s.conf ] || exit 0
-
-if [ "x$DHCP6SIF" =  "x" ]; then logger -s -t "dhcp6s" -p "daemon.info" "Warning: dhcp6s listening on ALL interfaces - set DHCP6SIF in /etc/sysconfig/dhcp6s"; fi
-
-RETVAL=0
-prog="dhcp6s"
+# networking is not up, return 1 for generic error
+. /etc/sysconfig/network
+[ $NETWORKING = "no" ] && exit 1
 
 start() {
-	# Start daemons.
-	echo -n $"Starting $prog: "
-	daemon /usr/sbin/dhcp6s -c /etc/dhcp6s.conf ${DHCP6SARGS} ${DHCP6SIF}
-	RETVAL=$?
-	echo
-	[ $RETVAL -eq 0 ] && touch /var/lock/subsys/dhcp6s
-	return $RETVAL
+    # return 5 if program is not installed
+    [ -x $dhcp6s ] || exit 5
+
+    # return 6 if program is not configured
+    [ -f /etc/dhcp6s.conf ] || exit 6
+    [ -f /etc/sysconfig/dhcp6s ] || exit 6
+    . /etc/sysconfig/dhcp6s
+
+    if [ -z "$DHCP6SIF" ]; then
+        logger -s -t "$prog" -p "daemon.info" "Warning: $prog listening on ALL interfaces"
+    fi
+
+    echo -n $"Starting $prog: "
+    daemon $dhcp6s -c /etc/dhcp6s.conf $DHCP6SARGS $DHCP6SIF
+    RETVAL=$?
+    echo
+    [ $RETVAL -eq 0 ] && touch $lockfile
+    return $RETVAL
 }
 
 stop() {
-	# Stop daemons.
-	echo -n $"Shutting down $prog: "
-	killproc dhcp6s
-	RETVAL=$?
-	echo
-	[ $RETVAL -eq 0 ] && rm -f /var/lock/subsys/dhcp6s
-	return $RETVAL
+    echo -n $"Shutting down $prog: "
+    killproc $prog -TERM
+    RETVAL=$?
+    echo
+    [ $RETVAL -eq 0 ] && success || failure
+    echo
+    rm -f $lockfile
+    return $RETVAL
 }
 
 # See how we were called.
 case "$1" in
-  start)
-	start
-	;;
-  stop)
-	stop
-	;;
-  restart|reload)
-	stop
-	start
-	RETVAL=$?
-	;;
-  condrestart)
-	if [ -f /var/lock/subsys/dhcp6s ]; then
-	    stop
-	    start
-	    RETVAL=$?
-	fi
-	;;
-  status)
-	status dhcp6s
-	RETVAL=$?
-	;;
-  *)
-	echo $"Usage: $0 {start|stop|restart|condrestart|status}"
-	exit 1
+    start)
+        start
+        RETVAL=$?
+        ;;
+    stop)
+        stop
+        RETVAL=$?
+        ;;
+    restart|force-reload)
+        stop && start
+        RETVAL=$?
+        ;;
+    try-restart|reload)
+        RETVAL=3
+        ;;
+    condrestart)
+        if [ -f $lockfile ]; then
+            stop && start
+        fi
+        ;;
+    status)
+        status $prog
+        RETVAL=$?
+        ;;
+    *)
+        echo $"Usage: $0 {start|stop|restart|try-restart|reload|force-reload|status}"
+        RETVAL=3
+        ;;
 esac
 
 exit $RETVAL
-
dhcpv6-0.10-33.el5.i386.rpm: /etc/rc.d/init.d/dhcp6r
---  
+++  
@@ -1,80 +1,95 @@
 #!/bin/sh
 #
-# dhcp6r        dhcp6r is an implementation of DHCPv6 relay agent.
-#               This shell script takes care of starting and stopping
-#               dhcp6r.
+### BEGIN INIT INFO
+# Provides: dhcp6r
+# Default-Start:
+# Default-Stop:
+# Should-Start:
+# Required-Start: $network
+# Required-Stop:
+# Short-Description: Start and stop the DHCPv6 relay agent
+# Description: dhcp6r acts as a DHCPv6 relay agent forwarding DHCPv6 messages
+#              from clients to servers and vice versa.
+### END INIT INFO
+#
+# The fields below are left around for legacy tools (will remove later).
 #
 # chkconfig: - 66 36
-# description: dhcp6r supports the DHCPv6 relay agent protocol. 
-#            
+# description: dhcp6r acts as a DHCPv6 relay agent forwarding DHCPv6 messages \
+#              from clients to servers and vice versa.
 # processname: dhcp6r
 # config: /etc/sysconfig/dhcp6r
 
-# Source function library.
-. /etc/rc.d/init.d/functions
+. /etc/init.d/functions
 
-# Source networking configuration.
-. /etc/sysconfig/network
-. /etc/sysconfig/dhcp6r
+RETVAL=0
+
+prog=dhcp6r
+dhcp6r=/usr/sbin/dhcp6r
+lockfile=/var/lock/subsys/dhcp6r
 
 # Check that networking is up.
-[ ${NETWORKING} = "no" ] && exit 0
-
-# Check that files exist
-[ -f /usr/sbin/dhcp6r ] || exit 0
-[ -f /etc/sysconfig/dhcp6r ] || exit 0
-
-RETVAL=0
-prog="dhcp6r"
+# networking is not up, return 1 for generic error
+. /etc/sysconfig/network
+[ $NETWORKING = "no" ] && exit 1
 
 start() {
-	# Start daemons.
-	echo -n $"Starting $prog: "
-	daemon /usr/sbin/dhcp6r ${DHCP6RARGS}
-	RETVAL=$?
-	echo
-	[ $RETVAL -eq 0 ] && touch /var/lock/subsys/dhcp6r
-	return $RETVAL
+    # return 5 if program is not installed
+    [ -x $dhcp6r ] || exit 5
+
+    # return 6 if program is not configured
+    [ -f /etc/sysconfig/dhcp6r ] || exit 6
+    . /etc/sysconfig/dhcp6r
+
+    echo -n $"Starting $prog: "
+    daemon $dhcp6r $DHCP6RARGS
+    RETVAL=$?
+    echo
+    [ $RETVAL -eq 0 ] && touch $lockfile
+    return $RETVAL
 }
 
 stop() {
-	# Stop daemons.
-	echo -n $"Shutting down $prog: "
-	killproc dhcp6r
-	RETVAL=$?
-	echo
-	[ $RETVAL -eq 0 ] && rm -f /var/lock/subsys/dhcp6r
-	return $RETVAL
+    echo -n $"Shutting down $prog: "
+    killproc $prog -TERM
+    RETVAL=$?
+    echo
+    [ $RETVAL -eq 0 ] && success || failure
+    echo
+    rm -f $lockfile
+    return $RETVAL
 }
 
 # See how we were called.
 case "$1" in
-  start)
-	start
-	;;
-  stop)
-	stop
-	;;
-  restart|reload)
-	stop
-	start
-	RETVAL=$?
-	;;
-  condrestart)
-	if [ -f /var/lock/subsys/dhcp6s ]; then
-	    stop
-	    start
-	    RETVAL=$?
-	fi
-	;;
-  status)
-	status dhcp6r
-	RETVAL=$?
-	;;
-  *)
-	echo $"Usage: $0 {start|stop|restart|condrestart|status}"
-	exit 1
+    start)
+        start
+        RETVAL=$?
+        ;;
+    stop)
+        stop
+        RETVAL=$?
+        ;;
+    restart|force-reload)
+        stop && start
+        RETVAL=$?
+        ;;
+    try-restart|reload)
+        RETVAL=3
+        ;;
+    condrestart)
+        if [ -f $lockfile ]; then
+            stop && start
+        fi
+        ;;
+    status)
+        status dhcp6r
+        RETVAL=$?
+        ;;
+    *)
+        echo $"Usage: $0 {start|stop|restart|try-restart|reload|force-reload|status}"
+        RETVAL=3
+        ;;
 esac
 
 exit $RETVAL
-
sysklogd-1.4.1-40.el5.i386.rpm: /etc/rc.d/init.d/syslog
---  
+++  
@@ -14,25 +14,25 @@
 # Source function library.
 . /etc/init.d/functions
 
-[ -f /sbin/syslogd ] || exit 0
-[ -f /sbin/klogd ] || exit 0
-
-# Source config
-if [ -f /etc/sysconfig/syslog ] ; then
-	. /etc/sysconfig/syslog
-else
-	SYSLOGD_OPTIONS="-m 0"
-	KLOGD_OPTIONS="-2"
-fi
-
 RETVAL=0
 
-if [ -z "$SYSLOG_UMASK" ] ; then
-      SYSLOG_UMASK=077;
-fi
-umask $SYSLOG_UMASK
+start() {
+	[ -x /sbin/syslogd ] || exit 5
+	[ -x /sbin/klogd ] || exit 5
 
-start() {
+	# Source config
+	if [ -f /etc/sysconfig/syslog ] ; then
+		. /etc/sysconfig/syslog
+	else
+		SYSLOGD_OPTIONS="-m 0"
+		KLOGD_OPTIONS="-2"
+	fi
+
+	if [ -z "$SYSLOG_UMASK" ] ; then
+	      SYSLOG_UMASK=077;
+	fi
+	umask $SYSLOG_UMASK
+
  	echo -n $"Starting system logger: "
 	daemon syslogd $SYSLOGD_OPTIONS
 	RETVAL=$?
@@ -66,12 +66,12 @@
     RETVAL=1
     syslog=`cat /var/run/syslogd.pid 2>/dev/null`
     echo -n "Reloading syslogd..."
-    if [ -n ${syslog} ] && [ -e /proc/${syslog} ]; then
-	kill -HUP $syslog;
+    if [ -n "${syslog}" ] && [ -e /proc/"${syslog}" ]; then
+	kill -HUP "$syslog";
 	RETVAL=$?
     fi
     if [ $RETVAL -ne 0 ]; then
-	fail
+	failure
     else
 	success
     fi
@@ -79,12 +79,12 @@
     RETVAL=1
     echo -n "Reloading klogd..."
     klog=`cat /var/run/klogd.pid 2>/dev/null`
-    if [ -n ${klog} ] && [ -e /proc/${klog} ]; then
-	kill -USR2 $klog;
+    if [ -n "${klog}" ] && [ -e /proc/"${klog}" ]; then
+	kill -USR2 "$klog";
         RETVAL=$?
     fi
     if [ $RETVAL -ne 0 ]; then
-	fail
+	failure
     else
 	success
     fi
@@ -112,7 +112,7 @@
 	;;
   *)
 	echo $"Usage: $0 {start|stop|status|restart|condrestart}"
-	exit 1
+	exit 2
 esac
 
 exit $?
NetworkManager-0.6.4-6.el5.i386.rpm: /etc/dbus-1/system.d/NetworkManager.conf
---  
+++  
@@ -17,5 +17,7 @@
                 <deny send_destination="org.freedesktop.NetworkManager"/>
                 <deny send_interface="org.freedesktop.NetworkManager"/>
         </policy>
+
+        <limit name="max_replies_per_connection">512</limit>
 </busconfig>
 
initscripts-8.45.17.EL-1.i386.rpm: /etc/sysconfig/network-scripts/ifup-eth
---  
+++  
@@ -125,7 +125,16 @@
     for arg in $BONDING_OPTS ; do   
         key=${arg%%=*};
         value=${arg##*=};
-        echo $value > /sys/class/net/${DEVICE}/bonding/$key
+        if [ "${key}" = "arp_ip_target" ]; then
+            OLDIFS=$IFS;
+            IFS=',';
+            for arp_ip in $value; do
+                echo +$arp_ip > /sys/class/net/${DEVICE}/bonding/$key
+            done
+            IFS=$OLDIFS;
+        else
+            echo $value > /sys/class/net/${DEVICE}/bonding/$key
+        fi
     done
 
     /sbin/ip link set dev ${DEVICE} up
system-config-lvm-1.0.22-1.0.el5.noarch.rpm: /etc/pam.d/system-config-lvm
---  
+++  
@@ -1,8 +1,4 @@
 #%PAM-1.0
-auth       sufficient	pam_rootok.so
-auth       sufficient   pam_timestamp.so
-auth       required	pam_stack.so service=system-auth
-session	   required	pam_permit.so
-session    optional	pam_xauth.so
-session    optional     pam_timestamp.so
-account    required	pam_permit.so
+auth			include			config-util
+account			include			config-util
+session			include			config-util
caching-nameserver-9.3.3-10.el5.i386.rpm: /var/named/named.ca
---  
+++  
@@ -1,80 +1,53 @@
-;       This file holds the information on root name servers needed to
-;       initialize cache of Internet domain name servers
-;       (e.g. reference this file in the "cache  .  <file>"
-;       configuration file of BIND domain name servers).
-;
-;       This file is made available by InterNIC 
-;       under anonymous FTP as
-;           file                /domain/named.cache
-;           on server           FTP.INTERNIC.NET
-;       -OR-                    RS.INTERNIC.NET
-;
-;       last update:    Jan 29, 2004
-;       related version of root zone:   2004012900
-;
-;
-; formerly NS.INTERNIC.NET
-;
-.                        3600000  IN  NS    A.ROOT-SERVERS.NET.
-A.ROOT-SERVERS.NET.      3600000      A     198.41.0.4
-;
-; formerly NS1.ISI.EDU
-;
-.                        3600000      NS    B.ROOT-SERVERS.NET.
-B.ROOT-SERVERS.NET.      3600000      A     192.228.79.201
-;
-; formerly C.PSI.NET
-;
-.                        3600000      NS    C.ROOT-SERVERS.NET.
-C.ROOT-SERVERS.NET.      3600000      A     192.33.4.12
-;
-; formerly TERP.UMD.EDU
-;
-.                        3600000      NS    D.ROOT-SERVERS.NET.
-D.ROOT-SERVERS.NET.      3600000      A     128.8.10.90
-;
-; formerly NS.NASA.GOV
-;
-.                        3600000      NS    E.ROOT-SERVERS.NET.
-E.ROOT-SERVERS.NET.      3600000      A     192.203.230.10
-;
-; formerly NS.ISC.ORG
-;
-.                        3600000      NS    F.ROOT-SERVERS.NET.
-F.ROOT-SERVERS.NET.      3600000      A     192.5.5.241
-;
-; formerly NS.NIC.DDN.MIL
-;
-.                        3600000      NS    G.ROOT-SERVERS.NET.
-G.ROOT-SERVERS.NET.      3600000      A     192.112.36.4
-;
-; formerly AOS.ARL.ARMY.MIL
-;
-.                        3600000      NS    H.ROOT-SERVERS.NET.
-H.ROOT-SERVERS.NET.      3600000      A     128.63.2.53
-;
-; formerly NIC.NORDU.NET
-;
-.                        3600000      NS    I.ROOT-SERVERS.NET.
-I.ROOT-SERVERS.NET.      3600000      A     192.36.148.17
-;
-; operated by VeriSign, Inc.
-;
-.                        3600000      NS    J.ROOT-SERVERS.NET.
-J.ROOT-SERVERS.NET.      3600000      A     192.58.128.30
-;
-; operated by RIPE NCC
-;
-.                        3600000      NS    K.ROOT-SERVERS.NET.
-K.ROOT-SERVERS.NET.      3600000      A     193.0.14.129 
-;
-; operated by ICANN
-;
-.                        3600000      NS    L.ROOT-SERVERS.NET.
-L.ROOT-SERVERS.NET.      3600000      A     198.32.64.12
-;
-; operated by WIDE
-;
-.                        3600000      NS    M.ROOT-SERVERS.NET.
-M.ROOT-SERVERS.NET.      3600000      A     202.12.27.33
-; End of File
+
+; <<>> DiG 9.5.0b2 <<>> +bufsize=1200 +norec NS . @a.root-servers.net
+;; global options:  printcmd
+;; Got answer:
+;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 7033
+;; flags: qr aa; QUERY: 1, ANSWER: 13, AUTHORITY: 0, ADDITIONAL: 20
+
+;; OPT PSEUDOSECTION:
+; EDNS: version: 0, flags:; udp: 4096
+;; QUESTION SECTION:
+;.				IN	NS
+
+;; ANSWER SECTION:
+.			518400	IN	NS	D.ROOT-SERVERS.NET.
+.			518400	IN	NS	E.ROOT-SERVERS.NET.
+.			518400	IN	NS	F.ROOT-SERVERS.NET.
+.			518400	IN	NS	G.ROOT-SERVERS.NET.
+.			518400	IN	NS	H.ROOT-SERVERS.NET.
+.			518400	IN	NS	I.ROOT-SERVERS.NET.
+.			518400	IN	NS	J.ROOT-SERVERS.NET.
+.			518400	IN	NS	K.ROOT-SERVERS.NET.
+.			518400	IN	NS	L.ROOT-SERVERS.NET.
+.			518400	IN	NS	M.ROOT-SERVERS.NET.
+.			518400	IN	NS	A.ROOT-SERVERS.NET.
+.			518400	IN	NS	B.ROOT-SERVERS.NET.
+.			518400	IN	NS	C.ROOT-SERVERS.NET.
+
+;; ADDITIONAL SECTION:
+A.ROOT-SERVERS.NET.	3600000	IN	A	198.41.0.4
+A.ROOT-SERVERS.NET.	3600000	IN	AAAA	2001:503:ba3e::2:30
+B.ROOT-SERVERS.NET.	3600000	IN	A	192.228.79.201
+C.ROOT-SERVERS.NET.	3600000	IN	A	192.33.4.12
+D.ROOT-SERVERS.NET.	3600000	IN	A	128.8.10.90
+E.ROOT-SERVERS.NET.	3600000	IN	A	192.203.230.10
+F.ROOT-SERVERS.NET.	3600000	IN	A	192.5.5.241
+F.ROOT-SERVERS.NET.	3600000	IN	AAAA	2001:500:2f::f
+G.ROOT-SERVERS.NET.	3600000	IN	A	192.112.36.4
+H.ROOT-SERVERS.NET.	3600000	IN	A	128.63.2.53
+H.ROOT-SERVERS.NET.	3600000	IN	AAAA	2001:500:1::803f:235
+I.ROOT-SERVERS.NET.	3600000	IN	A	192.36.148.17
+J.ROOT-SERVERS.NET.	3600000	IN	A	192.58.128.30
+J.ROOT-SERVERS.NET.	3600000	IN	AAAA	2001:503:c27::2:30
+K.ROOT-SERVERS.NET.	3600000	IN	A	193.0.14.129
+K.ROOT-SERVERS.NET.	3600000	IN	AAAA	2001:7fd::1
+L.ROOT-SERVERS.NET.	3600000	IN	A	199.7.83.42
+M.ROOT-SERVERS.NET.	3600000	IN	A	202.12.27.33
+M.ROOT-SERVERS.NET.	3600000	IN	AAAA	2001:dc3::35
+
+;; Query time: 110 msec
+;; SERVER: 198.41.0.4#53(198.41.0.4)
+;; WHEN: Tue Feb 26 15:05:57 2008
+;; MSG SIZE  rcvd: 615
+
initscripts-8.45.17.EL-1.i386.rpm: /etc/rc.d/init.d/functions
---  
+++  
@@ -67,6 +67,10 @@
 		[ -d "/proc/$i" ] && return 0
 	done
 	return 1
+}
+
+__readlink() {
+    ls -bl "$@" 2>/dev/null| awk '{ print $NF }'
 }
 
 # __umount_loop awk_program fstab_file first_msg retry_msg umount_args
totem-2.16.7-1.el5.i386.rpm: /etc/gconf/schemas/totem-handlers.schemas
---  
+++  
@@ -1,44 +1,5 @@
 <gconfschemafile>
     <schemalist>
-
-        <schema>
-            <key>/schemas/desktop/gnome/url-handlers/pnm/command</key>
-            <applyto>/desktop/gnome/url-handlers/pnm/command</applyto>
-            <owner>totem</owner>
-            <type>string</type>
-            <default>totem "%s"</default>
-            <locale name="C">
-                <short></short>
-                <long></long>
-            </locale>
-        </schema>
-
-
-        <schema>
-            <key>/schemas/desktop/gnome/url-handlers/pnm/needs_terminal</key>
-            <applyto>/desktop/gnome/url-handlers/pnm/needs_terminal</applyto>
-            <owner>totem</owner>
-            <type>bool</type>
-            <default>false</default>
-            <locale name="C">
-                <short></short>
-                <long></long>
-            </locale>
-        </schema>
-
-
-        <schema>
-            <key>/schemas/desktop/gnome/url-handlers/pnm/enabled</key>
-            <applyto>/desktop/gnome/url-handlers/pnm/enabled</applyto>
-            <owner>totem</owner>
-            <type>bool</type>
-            <default>true</default>
-            <locale name="C">
-                <short></short>
-                <long></long>
-            </locale>
-        </schema>
-
 
         <schema>
             <key>/schemas/desktop/gnome/url-handlers/mms/command</key>
@@ -158,45 +119,6 @@
 
 
         <schema>
-            <key>/schemas/desktop/gnome/url-handlers/rtsp/command</key>
-            <applyto>/desktop/gnome/url-handlers/rtsp/command</applyto>
-            <owner>totem</owner>
-            <type>string</type>
-            <default>totem "%s"</default>
-            <locale name="C">
-                <short></short>
-                <long></long>
-            </locale>
-        </schema>
-
-
-        <schema>
-            <key>/schemas/desktop/gnome/url-handlers/rtsp/needs_terminal</key>
-            <applyto>/desktop/gnome/url-handlers/rtsp/needs_terminal</applyto>
-            <owner>totem</owner>
-            <type>bool</type>
-            <default>false</default>
-            <locale name="C">
-                <short></short>
-                <long></long>
-            </locale>
-        </schema>
-
-
-        <schema>
-            <key>/schemas/desktop/gnome/url-handlers/rtsp/enabled</key>
-            <applyto>/desktop/gnome/url-handlers/rtsp/enabled</applyto>
-            <owner>totem</owner>
-            <type>bool</type>
-            <default>true</default>
-            <locale name="C">
-                <short></short>
-                <long></long>
-            </locale>
-        </schema>
-
-
-        <schema>
             <key>/schemas/desktop/gnome/url-handlers/mmsh/command</key>
             <applyto>/desktop/gnome/url-handlers/mmsh/command</applyto>
             <owner>totem</owner>
shadow-utils-4.0.17-12.el5.i386.rpm: /etc/default/useradd
---  
+++  
@@ -5,3 +5,5 @@
 EXPIRE=
 SHELL=/bin/bash
 SKEL=/etc/skel
+CREATE_MAIL_SPOOL=yes
+
udev-095-14.9.el5.i386.rpm: /etc/udev/rules.d/50-udev.rules
---  
+++  
@@ -162,8 +162,6 @@
 SUBSYSTEM=="dvb", PROGRAM="/bin/sh -c 'K=%k; K=$${K#dvb}; printf dvb/adapter%%i/%%s $${K%%%%.*} $${K#*.}'", \
 	NAME="%c", MODE="0660"
 
-KERNEL=="dm-[0-9]*", ACTION=="add", OPTIONS+="ignore_device"
-
 # alsa devices
 KERNEL=="controlC[0-9]*",	NAME="snd/%k"
 KERNEL=="hw[CD0-9]*",		NAME="snd/%k"
@@ -175,6 +173,9 @@
 # input devices
 KERNEL=="mice",			NAME="input/%k"
 KERNEL=="mouse*",		NAME="input/%k"
+
+KERNEL=="event*", SYSFS{idVendor}=="03f0", SYSFS{device/interface}=="Virtual Mouse", SYSFS{device/bInterfaceProtocol}=="02", NAME="input/%k", SYMLINK+="input/hp_ilo_mouse"
+
 KERNEL=="event*",		NAME="input/%k"
 KERNEL=="js*",			NAME="input/%k", SYMLINK+="%k"
 KERNEL=="ts*",			NAME="input/%k"
@@ -218,8 +219,6 @@
 KERNEL=="scd[0-9]*",		SYMLINK+="cdrom cdrom-%k"
 KERNEL=="pcd[0-9]*",		SYMLINK+="cdrom cdrom-%k"
 KERNEL=="fd[0-9]*",		SYMLINK+="floppy floppy-%k"
-KERNEL=="nst[0-9]", BUS=="scsi", 	SYMLINK+="tape tape-%k", MODE="0660"
-KERNEL=="nosst[0-9]", BUS=="scsi", 	SYMLINK+="tape tape-%k", MODE="0660"
 
 # Section for zaptel device
 KERNEL=="zapctl",     		NAME="zap/ctl"
@@ -259,16 +258,18 @@
 
 ACTION!="add", GOTO="persistent_end"
 
-KERNEL=="nst[0-9]", IMPORT{parent}=="ID_*"
-KERNEL=="nst[0-9]", SUBSYSTEM=="scsi", ENV{ID_SERIAL}=="", IMPORT{program}="scsi_id -g -x -s %p -d $tempnode"
-KERNEL=="nst[0-9]", SUBSYSTEM=="scsi", ENV{ID_SERIAL}=="", IMPORT{program}="scsi_id -g -x -a -s %p -d $tempnode"
-KERNEL=="nst[0-9]", SUBSYSTEM=="scsi", ENV{ID_SERIAL}=="?*", SYMLINK+="tape/by-id/$env{ID_BUS}-$env{ID_SERIAL}-nst"
+KERNEL=="dm-[0-9]*", GOTO="persistent_end"
+
+KERNEL=="nst[0-9]*", IMPORT{parent}=="ID_*"
+KERNEL=="nst[0-9]*", SUBSYSTEM=="scsi_tape", ENV{ID_SERIAL}=="", IMPORT{program}="scsi_id -u -g -x -s %p -d $tempnode"
+KERNEL=="nst[0-9]*", SUBSYSTEM=="scsi_tape", ENV{ID_SERIAL}=="", IMPORT{program}="scsi_id -u -g -x -a -s %p -d $tempnode"
+KERNEL=="nst[0-9]*", SUBSYSTEM=="scsi_tape", ENV{ID_SERIAL}=="?*", SYMLINK+="tape/by-id/$env{ID_BUS}-$env{ID_SERIAL}-nst"
 
 # type 8 devices are "Medium Changers"
 KERNEL=="sg*", IMPORT{parent}=="ID_*"
-KERNEL=="sg*", SUBSYSTEM=="scsi", SYSFS{type}=="8", ENV{ID_SERIAL}=="", IMPORT{program}="scsi_id -g -x -s %p -d $tempnode"
-KERNEL=="sg*", SUBSYSTEM=="scsi", SYSFS{type}=="8", ENV{ID_SERIAL}=="", IMPORT{program}="scsi_id -g -x -a -s %p -d $tempnode"
-KERNEL=="sg*", SUBSYSTEM=="scsi", SYSFS{type}=="8", ENV{ID_SERIAL}=="?*", SYMLINK+="tape/by-id/$env{ID_BUS}-$env{ID_SERIAL}"
+KERNEL=="sg*", SUBSYSTEM=="scsi_generic", SYSFS{type}=="8", ENV{ID_SERIAL}=="", IMPORT{program}="scsi_id -g -u -x -s %p -d $tempnode"
+KERNEL=="sg*", SUBSYSTEM=="scsi_generic", SYSFS{type}=="8", ENV{ID_SERIAL}=="", IMPORT{program}="scsi_id -g -u -x -a -s %p -d $tempnode"
+KERNEL=="sg*", SUBSYSTEM=="scsi_generic", SYSFS{type}=="8", ENV{ID_SERIAL}=="?*", SYMLINK+="tape/by-id/$env{ID_BUS}-$env{ID_SERIAL}"
 
 SUBSYSTEM!="block", GOTO="persistent_end"
 
@@ -289,11 +290,13 @@
 KERNEL=="sd*[!0-9]|sr*", ENV{ID_SERIAL}=="", IMPORT{program}="/lib/udev/scsi_id -g -x -s %p -d $tempnode"
 KERNEL=="sd*[!0-9]|sr*", ENV{ID_SERIAL}=="", IMPORT{program}="/lib/udev/scsi_id -g -x -a -s %p -d $tempnode"
 KERNEL=="dasd*[!0-9]", IMPORT{program}="/lib/udev/dasd_id --export $tempnode"
-KERNEL=="st*|sd*[!0-9]|sr*|dasd*[!0-9]", ENV{ID_SERIAL}=="?*", SYMLINK+="disk/by-id/$env{ID_BUS}-$env{ID_SERIAL}"
+KERNEL=="nst[0-9]*|st*|sd*[!0-9]|sr*|dasd*[!0-9]|cciss?c", ENV{ID_SERIAL}=="?*", SYMLINK+="disk/by-id/$env{ID_BUS}-$env{ID_SERIAL}"
 
 # for partitions import parent information
 KERNEL=="sd*[0-9]|dasd*[0-9]", IMPORT{parent}=="ID_*"
-KERNEL=="sd*[0-9]|dasd*[0-9]", ENV{ID_SERIAL}=="?*", SYMLINK+="disk/by-id/$env{ID_BUS}-$env{ID_SERIAL}-part%n"
+KERNEL=="cciss?c[0-9]d[0-9]", ENV{ID_SERIAL}!="?*", IMPORT{program}="scsi_id -g -x -s %p -d $tempnode", ENV{ID_BUS}="cciss"
+KERNEL=="cciss?c[0-9]d[0-9]", ENV{ID_SERIAL}!="?*", IMPORT{program}="scsi_id -g -x -a -s %p -d $tempnode", ENV{ID_BUS}="cciss"
+KERNEL=="sd*[0-9]|dasd*[0-9]|cciss*p[0-9]", ENV{ID_SERIAL}=="?*", SYMLINK+="disk/by-id/$env{ID_BUS}-$env{ID_SERIAL}-part%n"
 
 # by-path (shortest physical path)
 KERNEL=="*[!0-9]|sr*", ENV{ID_TYPE}=="?*", IMPORT{program}="/lib/udev/path_id %p", SYMLINK+="disk/by-path/$env{ID_PATH}"
dhcp-3.0.5-7.el5.i386.rpm: /etc/rc.d/init.d/dhcrelay
---  
+++  
@@ -1,82 +1,123 @@
 #!/bin/sh
 #
-# dhcrelay      This shell script takes care of starting and stopping
-#               dhcrelay.
+### BEGIN INIT INFO
+# Provides: dhcrelay
+# Default-Start:
+# Default-Stop:
+# Should-Start:
+# Required-Start: $network
+# Required-Stop:
+# Short-Description: Start and stop the DHCP relay server
+# Description: dhcrelay provides the Dynamic Host Configuration Protocol (DHCP)
+#              relay server.  This is required when your DHCP server is on
+#              another network segment from the clients.
+### END INIT INFO
 #
-# chkconfig: - 66 34
+# The fields below are left around for legacy tools (will remove later).
+#
+# chkconfig: - 65 35
 # description: dhcrelay provides a relay for Dynamic Host Control Protocol.
+# processname: dhcrelay
+# # pidfile: /var/run/dhcrelay.pid
 
-# Source function library.
-. /etc/rc.d/init.d/functions
-
-# Source networking configuration.
-. /etc/sysconfig/network
-
-# Source dhcrelay configuration. We can't default a DHCPSERVERS entry!
-if [ -f /etc/sysconfig/dhcrelay ] ; then
-	. /etc/sysconfig/dhcrelay
-	[ -n "$DHCPSERVERS" ] || exit 0
-else
-	exit 0
-fi
-
-# Check that networking is up.
-[ ${NETWORKING} = "no" ] && exit 0
-
-[ -f /usr/sbin/dhcrelay ] || exit 0
+. /etc/init.d/functions
 
 RETVAL=0
-prog="dhcrelay"
+
+prog=dhcrelay
+dhcrelay=/usr/sbin/dhcrelay
+lockfile=/var/lock/subsys/dhcrelay
+pidfile=/var/run/dhcrelay.pid
+conf=/etc/sysconfig/dhcrelay
+
+# The dhcrelay daemon uses the sysconfig file for configuration information.
+# There is no native configuration file for this program and you must specify
+# its settings on the command line.
+[ -f /etc/sysconfig/dhcrelay ] && . /etc/sysconfig/dhcrelay
+
+configtest() {
+    [ -x $dhcrelay ] || exit 5
+    [ -f $conf ] || exit 6
+    [ -z "$DHCPSERVERS" ] && exit 6
+    RETVAL=0
+    return $RETVAL
+}
 
 start() {
-	# Start daemons.
-	echo -n $"Starting $prog: "
-	daemon /usr/sbin/dhcrelay \
-		$([ -n "$INTERFACES" ] && for int in $INTERFACES ; do echo -n " -i $int" ; done) \
-		$DHCPSERVERS
-	RETVAL=$?
-	echo
-	[ $RETVAL -eq 0 ] && touch /var/lock/subsys/dhcrelay
-	return $RETVAL
+    [ -x $dhcrelay ] || exit 5
+    [ -f $conf ] || exit 6
+
+    pidofproc $prog >/dev/null 2>&1
+    RETVAL=$?
+    [ $RETVAL -eq 0 ] && return $RETVAL
+
+    echo -n $"Starting $prog: "
+    daemon $dhcrelay $([ -n "$INTERFACES" ] && for int in $INTERFACES ; do echo -n " -i $int" ; done) $DHCPSERVERS 2>/dev/null
+    RETVAL=$?
+    echo
+    [ $RETVAL -eq 0 ] && touch $lockfile
+    return $RETVAL
 }
 
 stop() {
-	# Stop daemons.
-	echo -n $"Shutting down $prog: "
-	killproc dhcrelay
-	RETVAL=$?
-	echo
-	[ $RETVAL -eq 0 ] && rm -f /var/lock/subsys/dhcrelay
-	return $RETVAL
+    pidofproc $prog >/dev/null 2>&1
+    if [ $? -ne 0 ]; then
+        RETVAL=7
+        return $RETVAL
+    fi
+
+    echo -n $"Shutting down $prog: "
+    killproc $prog -TERM
+    RETVAL=$?
+    [ $RETVAL = 0 ] && rm -f $lockfile
+    echo
+    return $RETVAL
 }
 
-# See how we were called.
+if [ ! -x $dhcrelay ]; then
+    RETVAL=5
+    exit $RETVAL
+fi
+
+if [ $# -gt 1 ]; then
+    RETVAL=2
+    exit $RETVAL
+fi
+
 case "$1" in
-  start)
-	start
-	;;
-  stop)
-	stop
-	;;
-  restart|reload)
-	stop
-	start
-	RETVAL=$?
-	;;
-  condrestart)
-	if [ -f /var/lock/subsys/dhcrelay ]; then
-	    stop
-	    start
-	    RETVAL=$?
-	fi
-	;;
-  status)
-	status dhcrelay
-	RETVAL=$?
-	;;
-  *)
-	echo $"Usage: $0 {start|stop|restart|condrestart|status}"
-	exit 1
+    start)
+        start
+        RETVAL=$?
+        ;;
+    stop)
+        stop
+        RETVAL=$?
+        ;;
+    restart|force-reload)
+        stop && start
+        RETVAL=$?
+        ;;
+    try-restart|reload)
+        RETVAL=3
+        ;;
+    condrestart)
+        if [ -f $lockfile ]; then
+            stop && start
+            RETVAL=$?
+        fi
+        ;;
+    configtest)
+        configtest
+        RETVAL=$?
+        ;;
+    status)
+        status $prog
+        RETVAL=$?
+        ;;
+    *)
+        echo $"Usage: $0 {start|stop|restart|condrestart|configtest|status}"
+        RETVAL=3
+        ;;
 esac
 
 exit $RETVAL