mirror of
git://git.sv.gnu.org/coreutils.git
synced 2026-04-20 18:56:39 +02:00
(main): Adjust to new modechange API.
Also, free the mode_change object when done.
This commit is contained in:
@@ -353,12 +353,11 @@ main (int argc, char **argv)
|
||||
|
||||
if (specified_mode)
|
||||
{
|
||||
struct mode_change *change = mode_compile (specified_mode, 0);
|
||||
if (change == MODE_INVALID)
|
||||
struct mode_change *change = mode_compile (specified_mode);
|
||||
if (!change)
|
||||
error (EXIT_FAILURE, 0, _("invalid mode %s"), quote (specified_mode));
|
||||
else if (change == MODE_MEMORY_EXHAUSTED)
|
||||
xalloc_die ();
|
||||
mode = mode_adjust (0, change);
|
||||
mode = mode_adjust (0, change, 0);
|
||||
mode_free (change);
|
||||
}
|
||||
|
||||
get_ids ();
|
||||
|
||||
24
src/mkdir.c
24
src/mkdir.c
@@ -125,22 +125,24 @@ main (int argc, char **argv)
|
||||
}
|
||||
|
||||
newmode = S_IRWXUGO;
|
||||
if (specified_mode)
|
||||
{
|
||||
struct mode_change *change = mode_compile (specified_mode, MODE_MASK_ALL);
|
||||
if (change == MODE_INVALID)
|
||||
error (EXIT_FAILURE, 0, _("invalid mode %s"), quote (specified_mode));
|
||||
else if (change == MODE_MEMORY_EXHAUSTED)
|
||||
xalloc_die ();
|
||||
newmode = mode_adjust (newmode, change);
|
||||
}
|
||||
|
||||
if (specified_mode || create_parents)
|
||||
{
|
||||
mode_t umask_value = umask (0);
|
||||
if (! specified_mode)
|
||||
umask (umask_value);
|
||||
|
||||
parent_mode = (S_IRWXUGO & ~umask_value) | (S_IWUSR | S_IXUSR);
|
||||
|
||||
if (specified_mode)
|
||||
{
|
||||
struct mode_change *change = mode_compile (specified_mode);
|
||||
if (!change)
|
||||
error (EXIT_FAILURE, 0, _("invalid mode %s"),
|
||||
quote (specified_mode));
|
||||
newmode = mode_adjust (S_IRWXUGO, change, umask_value);
|
||||
mode_free (change);
|
||||
}
|
||||
else
|
||||
umask (umask_value);
|
||||
}
|
||||
|
||||
for (; optind < argc; ++optind)
|
||||
|
||||
11
src/mkfifo.c
11
src/mkfifo.c
@@ -75,7 +75,6 @@ int
|
||||
main (int argc, char **argv)
|
||||
{
|
||||
mode_t newmode;
|
||||
struct mode_change *change;
|
||||
const char *specified_mode;
|
||||
int exit_status = EXIT_SUCCESS;
|
||||
int optc;
|
||||
@@ -116,13 +115,11 @@ main (int argc, char **argv)
|
||||
newmode = (S_IRUSR | S_IWUSR | S_IRGRP | S_IWGRP | S_IROTH | S_IWOTH);
|
||||
if (specified_mode)
|
||||
{
|
||||
change = mode_compile (specified_mode, MODE_MASK_ALL);
|
||||
if (change == MODE_INVALID)
|
||||
struct mode_change *change = mode_compile (specified_mode);
|
||||
if (!change)
|
||||
error (EXIT_FAILURE, 0, _("invalid mode"));
|
||||
else if (change == MODE_MEMORY_EXHAUSTED)
|
||||
xalloc_die ();
|
||||
newmode = mode_adjust (newmode, change);
|
||||
umask (0);
|
||||
newmode = mode_adjust (newmode, change, umask (0));
|
||||
mode_free (change);
|
||||
}
|
||||
|
||||
for (; optind < argc; ++optind)
|
||||
|
||||
11
src/mknod.c
11
src/mknod.c
@@ -88,7 +88,6 @@ int
|
||||
main (int argc, char **argv)
|
||||
{
|
||||
mode_t newmode;
|
||||
struct mode_change *change;
|
||||
const char *specified_mode;
|
||||
int optc;
|
||||
int expected_operands;
|
||||
@@ -121,13 +120,11 @@ main (int argc, char **argv)
|
||||
newmode = (S_IRUSR | S_IWUSR | S_IRGRP | S_IWGRP | S_IROTH | S_IWOTH);
|
||||
if (specified_mode)
|
||||
{
|
||||
change = mode_compile (specified_mode, MODE_MASK_ALL);
|
||||
if (change == MODE_INVALID)
|
||||
struct mode_change *change = mode_compile (specified_mode);
|
||||
if (!change)
|
||||
error (EXIT_FAILURE, 0, _("invalid mode"));
|
||||
else if (change == MODE_MEMORY_EXHAUSTED)
|
||||
xalloc_die ();
|
||||
newmode = mode_adjust (newmode, change);
|
||||
umask (0);
|
||||
newmode = mode_adjust (newmode, change, umask (0));
|
||||
mode_free (change);
|
||||
}
|
||||
|
||||
/* If the number of arguments is 0 or 1,
|
||||
|
||||
Reference in New Issue
Block a user