⬢ DragonFlyBSD Kernel Audit
DF-4750 / run.log
← back to finding ↓ download raw
# DF-4750 baseline (PRE-FIX nmdm.ko) evidence — DragonFly 6.5-DEVELOPMENT x86_64 guest
# Unprivileged user maxx; /dev/nmdm0A at 0666 (make_dev in nmdminit(), nmdm.c:127-130)

== DF-4750: TIOCCDTR inverted mask ==
TIOCMSET(LE|DTR|RTS)         = 0
TIOCMGET after SET           = 0x0007 (LE=1 DTR=1 RTS=1)
TIOCCDTR                     = 0
TIOCMGET after TIOCCDTR      = 0x0002 -> DTR=SET   <-- BUG: must be cleared RTS=clear <-- BUG: must stay set
    => nmdm.c:565 `ourpart->modemsignals &= TIOCM_DTR;` (missing ~):
       TIOCCDTR KEEPS DTR and wipes LE/RTS instead of clearing DTR only.