Description of problem:
The mcstrans init script fails to invoke the status command in several
occasions, namely these commands prevent it in some cases:
test `id -u` = 0 || exit 4
test -x /usr/sbin/selinuxenabled && /usr/sbin/selinuxenabled || exit 0
test -x /sbin/mcstransd || exit 5
the exit 4 if the user is not root might be correct(i.e. for user with not
sufficient privilegues, the state is unknown), but the exit code 5 if the
mcstransd is not executable definitely is not. I'm not sure about line
containing exit 0.
Version-Release number of selected component (if applicable):
Steps to Reproduce:
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:
For an example of the script that returns the error codes correctly and always
runs status see:
This bug is tracked by 237789.
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
Created attachment 172418 [details]
proposed patch to fix issue
This patch should solve the problem. Please apply to 5.1, spin a new package,
and add to the errata. Thanks.
Exit 4 for nonroot is ok
Exit zero mimics success, so that's ok
Exit 5 is the correct return for "program not installed", which as far as we
care is the same as when we can't execute it.
The init script functions for this release don't support having non-root check
status anyway, so we can't do that.
So, there's really nothing to fix.
Here's where exit 5 is listed for 'program not installed"