summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJim Meyering <meyering@redhat.com>2008-04-23 11:45:38 +0200
committerJim Meyering <meyering@redhat.com>2008-04-23 15:29:11 +0200
commit0a4a938b6bf60903475d85cad399f874f8afe51c (patch)
tree67f42c2a030114e44b7961c4c68bc9f277f4987f
parentd9c1b8fd30a36d7f05cfb8f830dc62765cf60792 (diff)
downloadcoreutils-0a4a938b6bf60903475d85cad399f874f8afe51c.tar.xz
id: do print the AFS-specific nameless group ID (called a PAG)
In 6.11, we mistakenly suppressed the printing of certain group IDs, thinking they were useless AFS-specific artifacts. This change reverts that, so now they are printed once again. http://thread.gmane.org/gmane.org.fsf.announce/867/focus=13345 This also reverts the bug-fix that applied solely to the new code used to avoid printing those IDs Revert "id bug fix: don't point to potentially clobbered static storage" This reverts commit f7d1c59c224f81a8bab5fa2afcaf815988f50467. Revert "Work around AFS bug: id and groups would print invalid group number." This reverts commit b7a836c0a3524cda8ef79c30c3fe7ea759ae4656. Revert "* src/c99-to-c89.diff: Accommodate a C99-ism in id.c." This reverts commit d44893c5dba4150b4ded9cf6aad316c1ef620c9f.
-rw-r--r--NEWS9
-rw-r--r--src/c99-to-c89.diff19
-rw-r--r--src/groups.c2
-rw-r--r--src/id.c11
4 files changed, 13 insertions, 28 deletions
diff --git a/NEWS b/NEWS
index 04893c622..5b4676d21 100644
--- a/NEWS
+++ b/NEWS
@@ -1,5 +1,14 @@
GNU coreutils NEWS -*- outline -*-
+* Noteworthy changes in release 6.12 (????-??-??) [stable]
+
+** Bug fixes
+
+ id and groups once again print the AFS-specific nameless group-ID (PAG).
+ Printing of such large-numbered, kernel-only (not in /etc/group) group-IDs
+ was suppressed in 6.11 due to ignorance that they are useful.
+
+
* Noteworthy changes in release 6.11 (2008-04-19) [stable]
** Bug fixes
diff --git a/src/c99-to-c89.diff b/src/c99-to-c89.diff
index 81580197c..b0594fd36 100644
--- a/src/c99-to-c89.diff
+++ b/src/c99-to-c89.diff
@@ -1,22 +1,3 @@
---- src/id.c 2008-03-04 18:50:55.000000000 +0100
-+++ src/id.c 2008-03-04 19:32:24.000000000 +0100
-@@ -196,6 +196,7 @@ of a different user"));
- error (EXIT_FAILURE, 0,
- _("cannot print only names or real IDs in default format"));
-
-+ {
- char const *user_name;
- if (argc - optind == 1)
- {
-@@ -239,6 +240,7 @@ of a different user"));
- {
- print_full_info (user_name);
- }
-+ }
- putchar ('\n');
-
- exit (ok ? EXIT_SUCCESS : EXIT_FAILURE);
-diff -upr src/remove.c src/remove.c
--- src/remove.c 2007-07-23 12:56:20.000000000 +0200
+++ src/remove.c 2007-07-23 13:03:12.000000000 +0200
@@ -264,9 +264,10 @@ pop_dir (Dirstack_state *ds)
diff --git a/src/groups.c b/src/groups.c
index c8e617b58..baac7b931 100644
--- a/src/groups.c
+++ b/src/groups.c
@@ -102,7 +102,7 @@ main (int argc, char **argv)
egid = getegid ();
rgid = getgid ();
- if (!print_group_list (getlogin (), ruid, rgid, egid, true))
+ if (!print_group_list (NULL, ruid, rgid, egid, true))
ok = false;
putchar ('\n');
}
diff --git a/src/id.c b/src/id.c
index a178714fd..e4eda4071 100644
--- a/src/id.c
+++ b/src/id.c
@@ -196,22 +196,17 @@ of a different user"));
error (EXIT_FAILURE, 0,
_("cannot print only names or real IDs in default format"));
- char const *user_name;
if (argc - optind == 1)
{
- struct passwd const *pwd = getpwnam (argv[optind]);
+ struct passwd *pwd = getpwnam (argv[optind]);
if (pwd == NULL)
error (EXIT_FAILURE, 0, _("%s: No such user"), argv[optind]);
- user_name = argv[optind];
ruid = euid = pwd->pw_uid;
rgid = egid = pwd->pw_gid;
}
else
{
- struct passwd const *pwd;
euid = geteuid ();
- pwd = getpwuid (euid);
- user_name = pwd ? xstrdup (pwd->pw_name) : NULL;
ruid = getuid ();
egid = getegid ();
rgid = getgid ();
@@ -228,7 +223,7 @@ of a different user"));
}
else if (just_group_list)
{
- if (!print_group_list (user_name, ruid, rgid, egid, use_name))
+ if (!print_group_list (argv[optind], ruid, rgid, egid, use_name))
ok = false;
}
else if (just_context)
@@ -237,7 +232,7 @@ of a different user"));
}
else
{
- print_full_info (user_name);
+ print_full_info (argv[optind]);
}
putchar ('\n');