summaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorEric Blake <ebb9@byu.net>2009-10-23 06:59:02 -0600
committerEric Blake <ebb9@byu.net>2009-10-23 16:24:05 -0600
commitb6540b96ba6510af7b2acc6e81bd9d9583f7c96b (patch)
treee67b0b04c62f2318ab15e7628832eba1648dc34b /src
parent97777f559a80a0de11429402f7dba186eabf5bcd (diff)
downloadcoreutils-b6540b96ba6510af7b2acc6e81bd9d9583f7c96b.tar.xz
chroot, env, nice, su: use EXIT_CANCELED for internal failure
* src/chroot.c (main): Use EXIT_CANCELED, not EXIT_FAILURE. * src/env.c (main): Likewise. * src/nice.c (main): Likewise. * src/su.c (change_identity, main): Likewise. * doc/coreutils.texi (chroot invocation, env invocation) (nice invocation, su invocation): Document this. * NEWS: Likewise. * tests/misc/invalid-opt (exit_status): Adjust expected results. * tests/misc/help-version (expected_failure_status): Likewise.
Diffstat (limited to 'src')
-rw-r--r--src/chroot.c14
-rw-r--r--src/env.c4
-rw-r--r--src/nice.c14
-rw-r--r--src/su.c14
4 files changed, 23 insertions, 23 deletions
diff --git a/src/chroot.c b/src/chroot.c
index 9269f1b0e..e4765babb 100644
--- a/src/chroot.c
+++ b/src/chroot.c
@@ -160,7 +160,7 @@ main (int argc, char **argv)
bindtextdomain (PACKAGE, LOCALEDIR);
textdomain (PACKAGE);
- initialize_exit_failure (EXIT_FAILURE);
+ initialize_exit_failure (EXIT_CANCELED);
atexit (close_stdout);
parse_long_options (argc, argv, PROGRAM_NAME, PACKAGE_NAME, Version,
@@ -177,22 +177,22 @@ main (int argc, char **argv)
groups = optarg;
break;
default:
- usage (EXIT_FAILURE);
+ usage (EXIT_CANCELED);
}
}
if (argc <= optind)
{
error (0, 0, _("missing operand"));
- usage (EXIT_FAILURE);
+ usage (EXIT_CANCELED);
}
if (chroot (argv[optind]) != 0)
- error (EXIT_FAILURE, errno, _("cannot change root directory to %s"),
+ error (EXIT_CANCELED, errno, _("cannot change root directory to %s"),
argv[optind]);
if (chdir ("/"))
- error (EXIT_FAILURE, errno, _("cannot chdir to root directory"));
+ error (EXIT_CANCELED, errno, _("cannot chdir to root directory"));
if (argc == optind + 1)
{
@@ -223,7 +223,7 @@ main (int argc, char **argv)
char const *err = parse_user_spec (userspec, &uid, &gid, &user, &group);
if (err)
- error (EXIT_FAILURE, errno, "%s", err);
+ error (EXIT_CANCELED, errno, "%s", err);
free (user);
free (group);
@@ -254,7 +254,7 @@ main (int argc, char **argv)
}
if (fail)
- exit (EXIT_FAILURE);
+ exit (EXIT_CANCELED);
/* Execute the given command. */
execvp (argv[0], argv);
diff --git a/src/env.c b/src/env.c
index 90edc5a33..b69a29a1b 100644
--- a/src/env.c
+++ b/src/env.c
@@ -142,7 +142,7 @@ main (int argc, char **argv)
bindtextdomain (PACKAGE, LOCALEDIR);
textdomain (PACKAGE);
- initialize_exit_failure (EXIT_FAILURE);
+ initialize_exit_failure (EXIT_CANCELED);
atexit (close_stdout);
while ((optc = getopt_long (argc, argv, "+iu:", longopts, NULL)) != -1)
@@ -157,7 +157,7 @@ main (int argc, char **argv)
case_GETOPT_HELP_CHAR;
case_GETOPT_VERSION_CHAR (PROGRAM_NAME, AUTHORS);
default:
- usage (EXIT_FAILURE);
+ usage (EXIT_CANCELED);
}
}
diff --git a/src/nice.c b/src/nice.c
index 6cd5f3133..b04f675fb 100644
--- a/src/nice.c
+++ b/src/nice.c
@@ -101,7 +101,7 @@ main (int argc, char **argv)
bindtextdomain (PACKAGE, LOCALEDIR);
textdomain (PACKAGE);
- initialize_exit_failure (EXIT_FAILURE);
+ initialize_exit_failure (EXIT_CANCELED);
atexit (close_stdout);
parse_long_options (argc, argv, PROGRAM_NAME, PACKAGE_NAME, Version,
@@ -132,7 +132,7 @@ main (int argc, char **argv)
i += optind - 1;
if (optc == '?')
- usage (EXIT_FAILURE);
+ usage (EXIT_CANCELED);
else if (optc == 'n')
adjustment_given = optarg;
else /* optc == -1 */
@@ -148,7 +148,7 @@ main (int argc, char **argv)
enum { MIN_ADJUSTMENT = 1 - 2 * NZERO, MAX_ADJUSTMENT = 2 * NZERO - 1 };
long int tmp;
if (LONGINT_OVERFLOW < xstrtol (adjustment_given, NULL, 10, &tmp, ""))
- error (EXIT_FAILURE, 0, _("invalid adjustment %s"),
+ error (EXIT_CANCELED, 0, _("invalid adjustment %s"),
quote (adjustment_given));
adjustment = MAX (MIN_ADJUSTMENT, MIN (tmp, MAX_ADJUSTMENT));
}
@@ -158,13 +158,13 @@ main (int argc, char **argv)
if (adjustment_given)
{
error (0, 0, _("a command must be given with an adjustment"));
- usage (EXIT_FAILURE);
+ usage (EXIT_CANCELED);
}
/* No command given; print the niceness. */
errno = 0;
current_niceness = GET_NICENESS ();
if (current_niceness == -1 && errno != 0)
- error (EXIT_FAILURE, errno, _("cannot get niceness"));
+ error (EXIT_CANCELED, errno, _("cannot get niceness"));
printf ("%d\n", current_niceness);
exit (EXIT_SUCCESS);
}
@@ -175,11 +175,11 @@ main (int argc, char **argv)
#else
current_niceness = GET_NICENESS ();
if (current_niceness == -1 && errno != 0)
- error (EXIT_FAILURE, errno, _("cannot get niceness"));
+ error (EXIT_CANCELED, errno, _("cannot get niceness"));
ok = (setpriority (PRIO_PROCESS, 0, current_niceness + adjustment) == 0);
#endif
if (!ok)
- error (errno == EPERM ? 0 : EXIT_FAILURE, errno, _("cannot set niceness"));
+ error (errno == EPERM ? 0 : EXIT_CANCELED, errno, _("cannot set niceness"));
execvp (argv[i], &argv[i]);
diff --git a/src/su.c b/src/su.c
index 25b883814..0de67c95a 100644
--- a/src/su.c
+++ b/src/su.c
@@ -286,13 +286,13 @@ change_identity (const struct passwd *pw)
#ifdef HAVE_INITGROUPS
errno = 0;
if (initgroups (pw->pw_name, pw->pw_gid) == -1)
- error (EXIT_FAILURE, errno, _("cannot set groups"));
+ error (EXIT_CANCELED, errno, _("cannot set groups"));
endgrent ();
#endif
if (setgid (pw->pw_gid))
- error (EXIT_FAILURE, errno, _("cannot set group id"));
+ error (EXIT_CANCELED, errno, _("cannot set group id"));
if (setuid (pw->pw_uid))
- error (EXIT_FAILURE, errno, _("cannot set user id"));
+ error (EXIT_CANCELED, errno, _("cannot set user id"));
}
/* Run SHELL, or DEFAULT_SHELL if SHELL is empty.
@@ -406,7 +406,7 @@ main (int argc, char **argv)
bindtextdomain (PACKAGE, LOCALEDIR);
textdomain (PACKAGE);
- initialize_exit_failure (EXIT_FAILURE);
+ initialize_exit_failure (EXIT_CANCELED);
atexit (close_stdout);
fast_startup = false;
@@ -443,7 +443,7 @@ main (int argc, char **argv)
case_GETOPT_VERSION_CHAR (PROGRAM_NAME, AUTHORS);
default:
- usage (EXIT_FAILURE);
+ usage (EXIT_CANCELED);
}
}
@@ -458,7 +458,7 @@ main (int argc, char **argv)
pw = getpwnam (new_user);
if (! (pw && pw->pw_name && pw->pw_name[0] && pw->pw_dir && pw->pw_dir[0]
&& pw->pw_passwd))
- error (EXIT_FAILURE, 0, _("user %s does not exist"), new_user);
+ error (EXIT_CANCELED, 0, _("user %s does not exist"), new_user);
/* Make a copy of the password information and point pw at the local
copy instead. Otherwise, some systems (e.g. GNU/Linux) would clobber
@@ -481,7 +481,7 @@ main (int argc, char **argv)
#ifdef SYSLOG_FAILURE
log_su (pw, false);
#endif
- error (EXIT_FAILURE, 0, _("incorrect password"));
+ error (EXIT_CANCELED, 0, _("incorrect password"));
}
#ifdef SYSLOG_SUCCESS
else