Red Hat Bugzilla – Bug 180596
Chattr command doesn't provide expected exit code in case of failure
Last modified: 2015-01-07 19:11:33 EST
Description of problem:
Using chattr some kind of immutable chars can be added.
This feature work as expected, but effect is different in case of cheking its
Version-Release number of selected component (if applicable):
Steps to Reproduce:
[Intentionally did chattr from normal 'test' user]
1. $ ls -l /bin/df
-rwxr-xr-x 1 root root 28973 Oct 27 23:09 /bin/df
2. $ chattr +i /bin/df
chattr: Operation not permitted while setting flags on /bin/df
3. $ echo $?
Exit code is 0.
Exit code must be non-zero in case of failure.
Additional info: Hope to see the resolution in your further release.
Created attachment 201071 [details]
patch sent upstream
Sent this patch upstream for comment.
Sorry about the long delay...
This bug is filed against RHEL 3, which is in maintenance phase.
During the maintenance phase, only security errata and select mission
critical bug fixes will be released for enterprise products. Since
this bug does not meet that criteria, it is now being closed.
For more information of the RHEL errata support policy, please visit:
If you feel this bug is indeed mission critical, please contact your
support representative. You may be asked to provide detailed
information on how this bug is affecting you.
FWIW, fix did get merged upstream:
Author: Theodore Ts'o <firstname.lastname@example.org>
Date: Mon Oct 22 08:51:39 2007 -0400
chattr: provide an exit code in case of failure and add -f flag
Fix chattr so that if there are errors, it will report it via a
non-zero exit code. It will now explicitly give errors when
attempting to set files that are not files or directories (which are
currently not supported under Linux). The -f flag will suppress error
messages from being printed, although the exit status will still be
Signed-off-by: "Theodore Ts'o" <email@example.com>
Signed-off-by: Eric Sandeen <firstname.lastname@example.org>