#!/bin/bash
#
# kudzu        This scripts runs the kudzu hardware probe.
#
# chkconfig: 345 05 95
# description:     This runs the hardware probe, and optionally configures \
#        changed hardware.

# Source function library.
. /etc/init.d/functions

KUDZU_ARGS=

# Do we want to do a safe probe?
. /etc/sysconfig/kudzu

if [ "$SAFE" != "no" ]; then
    KUDZU_ARGS="-s"
fi

RETVAL=$?

case "$1" in
 start)
    echo -n $"Checking for hardware changes"
    rm -f /var/run/Xconfig
    rm -f /var/run/Xconfig-failed

        # Have a 30 second timeout.
     /sbin/kudzu $KUDZU_ARGS
    RETVAL=$?
    if [ "$RETVAL" -eq 0 ]; then
         action "" /bin/true
    else
       action "" /bin/false
    fi

    # We don't want to run this on random runlevel changes.
    touch /var/lock/subsys/kudzu
    # However, if they did configure X and want runlevel 5, let's
    # switch to it...
    if [ -f /var/run/Xconfig ]; then
        grep -q "^id:5:initdefault:" /etc/inittab && telinit 5
        rm -f /var/run/Xconfig
    fi
    # If X configuration failed, give them a sane default.
    if [ -f /var/run/Xconfig-failed ]; then
        telinit 3
        rm -f /var/run/Xconfig-failed
    fi
    ;;
 status)
     base=kudzu
     if [ -f /var/lock/subsys/kudzu ]; then
      echo $"${base} has run"
      exit 0
    fi
    echo $"${base} is stopped"
    exit 3
    ;;
 stop)
     # Do not re-run without user intervention
     # rm -f /var/lock/subsys/kudzu
     ;;
 *)
     echo $"Usage: $0 {start|stop}"
    exit 1
    ;;
esac

exit $RETVAL