Description of problem: Following code returns error code 0 when function script does not exist irrespectively of status of the service. if [ -f /etc/init.d/functions ] ; then . /etc/init.d/functions elif [ -f /etc/rc.d/init.d/functions ] ; then . /etc/rc.d/init.d/functions else exit 0 fi There is also minor error in error code for unimplemented feature (1 instead of 3 at the end of the script). Version-Release number of selected component (if applicable): all How reproducible: always Steps to Reproduce: 1. rename functions script 2. service cups start/status 3. echo $? Actual results: 0 Expected results: non-zero error code Additional info: When fixing this bug, please obbey our init script guidelines and be sure that status command is run correctly. Our guidelines are on following two pages: http://intranet.corp.redhat.com/ic/intranet/InitscriptsSpec.html http://intranet.corp.redhat.com/ic/intranet/InitscriptGuidelines.html For an example of the script that returns the error codes correctly and always runs status see: http://devserv.devel.redhat.com/~mmarcini/amd This bug is tracked by 237789.
--- cups.init 1 Jun 2006 12:58:58 -0000 1.10 +++ cups.init 26 Apr 2007 12:50:08 -0000 1.11 @@ -32,13 +32,7 @@ # Linux # Source function library. -if [ -f /etc/init.d/functions ] ; then - . /etc/init.d/functions -elif [ -f /etc/rc.d/init.d/functions ] ; then - . /etc/rc.d/init.d/functions -else - exit 0 -fi +. /etc/init.d/functions DAEMON=cupsd @@ -90,6 +84,7 @@ ;; status) status $DAEMON + RETVAL=$? ;; restartlog) stop @@ -99,7 +94,7 @@ *) echo $"Usage: $prog {start|stop|restart|condrestart|reload|status}" - exit 1 + exit 3 esac exit $RETVAL
This request was evaluated by Red Hat Product Management for inclusion in a Red Hat Enterprise Linux maintenance release. Product Management has requested further review of this request by Red Hat Engineering, for potential inclusion in a Red Hat Enterprise Linux Update release for currently deployed products. This request is not yet committed for inclusion in an Update release.
An advisory has been issued which should help the problem described in this bug report. This report is therefore being closed with a resolution of ERRATA. For more information on the solution and/or where to find the updated files, please follow the link below. You may reopen this bug report if the solution does not work for you. http://rhn.redhat.com/errata/RHSA-2007-1020.html