Updating link to change in openSUSE:Factory/coreutils revision 43.0
OBS-URL: https://build.opensuse.org/package/show/Base:System/coreutils?expand=0&rev=a7b4c6efd1592fb3aac750d37166b7e4
This commit is contained in:
committed by
Git OBS Bridge
parent
769e06bec7
commit
74bac430a8
26
coreutils-invalid-ids.patch
Normal file
26
coreutils-invalid-ids.patch
Normal file
@@ -0,0 +1,26 @@
|
||||
While uid_t and gid_t are both unsigned, the values (uid_t) -1 and
|
||||
(gid_t) -1 are reserved. A uid or gid argument of -1 to the chown(2)
|
||||
system call means to leave the uid/gid unchanged. Catch this case
|
||||
so that trying to set a uid or gid to -1 will result in an error.
|
||||
|
||||
Test cases:
|
||||
|
||||
chown 4294967295 file
|
||||
chown :4294967295 file
|
||||
chgrp 4294967295 file
|
||||
|
||||
Andreas Gruenbacher <agruen@suse.de>
|
||||
|
||||
Index: src/chgrp.c
|
||||
===================================================================
|
||||
--- src/chgrp.c.orig 2010-01-01 14:06:47.000000000 +0100
|
||||
+++ src/chgrp.c 2010-05-05 14:03:28.279359192 +0200
|
||||
@@ -89,7 +89,7 @@ parse_group (const char *name)
|
||||
{
|
||||
unsigned long int tmp;
|
||||
if (! (xstrtoul (name, NULL, 10, &tmp, "") == LONGINT_OK
|
||||
- && tmp <= GID_T_MAX))
|
||||
+ && tmp <= GID_T_MAX && (gid_t) tmp != (gid_t) -1))
|
||||
error (EXIT_FAILURE, 0, _("invalid group: %s"), quote (name));
|
||||
gid = tmp;
|
||||
}
|
Reference in New Issue
Block a user