bug(head): when the filename is `/dev/drm_dp_aux2` it skips all other arguments
Open
Nobody has claimed this yet.
U - head
- Dominant language
- Rust
- Stars
- 24.1k
- Forks
- 2k
- Avg merge
- 1d 5h
- Merged PRs (30d)
- 365
Description
Hi, uutils mainteners
we confirmed a serious bug when using the filename /dev/drm_dp_aux2, as my test confirmed
relunsec@relunsec:~/software/coreutils/target/debug$ sudo ./head /dev/drm_dp_aux2 a
==> /dev/drm_dp_aux2 <==
head: error writing 'standard output': Connection timed out
relunsec@relunsec:~/software/coreutils/target/debug$ sudo gnuhead /dev/drm_dp_aux2 a
==> /dev/drm_dp_aux2 <==
gnuhead: error reading '/dev/drm_dp_aux2': Connection timed out
==> a <==
hellorelunsec@relunsec:~/software/coreutils/target/debug$
Contributor guide
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
Research direction
Start by reproducing the reported commands with the Rust head binary and compare them with GNU head, focusing on argument processing after /dev/drm_dp_aux2 reports a timeout. Trace the head command's file-handling and error paths; done means later arguments such as a are still processed and the behavior matches the demonstrated GNU result.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- rust
- Domain
- cli
- Issue type
- Bug
- Difficulty
- 3/5
- Estimated time
- 1-2 days
- Activity status
- Quiet
- Clarity
- Mostly clear
- Newbie friendliness
- 55/100