DF-5842 / manifest.json
{ "finding_id": "DF-5842", "title": "select/pselect/ppoll pass unvalidated (negative / unnormalized) timeouts into kern_kevent: POSIX EINVAL missing, ~146-year sleeps collapse to immediate or arbitrary-short returns", "verdict": "reproduced", "impact": "dos", "confidence": "certain", "severity": "Low", "reproduce": { "build": "cc -O -o /tmp/timeout_rig /tmp/timeout_rig.c && cc -O -o /tmp/t8 /tmp/t8.c", "run": "/tmp/timeout_rig && /tmp/t8 && /tmp/t8", "expected": "T1 pselect{-1s} rc=0 in ~20-90us; T2 ppoll{0,2^62ns} rc=0 after ~1.7-2.0s; T8 select{0,2^62us} rc=0 in ~40-73us; T6 select(0fds,{-1s})=EINVAL (contrast); controls 2.000s/0.500s" }, "kernel_refs": [ "sys/kern/sys_generic.c:807", "sys/kern/sys_generic.c:842", "sys/kern/sys_generic.c:1271", "sys/kern/kern_event.c:872", "sys/kern/kern_event.c:975", "sys/kern/kern_clock.c:1196", "sys/kern/kern_time.c:467" ], "artifacts": [ "README.md", "VERDICT.md", "timeout_rig.c", "t8.c", "build.sh", "run.sh", "build.log", "run.log", "run.2.log", "env.txt", "fix.diff", "manifest.json", "verdict.json" ] } |