uutils/coreutils

Various problems in different id handling in `id` command

Open

#10.006 aperta il 3 gen 2026

Vedi su GitHub
 (2 commenti) (0 reazioni) (0 assegnatari)Rust (1852 fork)batch import
U - idgood first issuereported-canonical

Metriche repository

Star
 (23.246 star)
Metriche merge PR
 (Merge medio 9g 14h) (216 PR mergiate in 30 g)

Descrizione

Component

id

Description

Various problems in different id handling in id command

Test / Reproduction Steps

  1. id pretty print crash on malformed group id Issue: uutils id command crashes when given a malformed group id for pretty printing. Test:
sudo setpriv --regid 1337 --clear-groups target/release/id -p
login    root
uid    root

thread 'main' panicked at src/uu/id/src/id.rs:503:49:
called `Result::unwrap()` on an `Err` value: Custom { kind: NotFound, error: "No such id: 1337" }
note: run with `RUST_BACKTRACE=1` environment variable to display a backtrace
  1. inconsistency in uutil's id & C version Issue: uutils id command shows incorrect group information when the effective group ID is changed. Test: add two users first
useradd -u 2000 u2000 -M
useradd -u 3000 u3000 -M

then

sudo setpriv --reuid 3000 --egid 2000 --clear-groups target/release/id
uid=3000(u3000) gid=0(root) egid=2000(u2000) groups=0(root)
sudo setpriv --reuid 3000 --egid 2000 --clear-groups id
uid=3000(u3000) gid=0(root) egid=2000(u2000) groups=2000(u2000)
  1. Incorrect User ID Handling in uutils id Command Issue: The uutils id command incorrectly displays user information when the effective group ID is changed, leading to inconsistencies with the expected output (pretty print & compact print). Test: add two users first
useradd -u 2000 u2000 -M
useradd -u 3000 u3000 -M

then

sudo setpriv --euid 3000 --egid 2000 --clear-groups target/release/id
uid=0(root) gid=0(root) euid=3000(u3000) egid=2000(u2000) groups=0(root)
sudo setpriv --euid 3000 --egid 2000 --clear-groups target/release/id -p
login    root
uid    root
euid    root
groups    u2000

Guida contributor