{
  "finding_id": "DF-4750",
  "verdict": "reproduced",
  "impact": "none",
  "severity": "Info",
  "confidence": "certain",
  "summary": "nmdmioctl()'s TIOCCDTR handler (nmdm.c:565) ANDs modemsignals with TIOCM_DTR instead of ~TIOCM_DTR: clearing DTR keeps DTR set and wipes every other local modem bit (LE, RTS), and via nmdm_crossover() the peer's carrier never drops.",
  "reproduce": {
    "build": "cc -O -Wall -o /tmp/nmdm_probe nmdm_probe.c",
    "run": "./run.sh",
    "expected": "after TIOCMSET(LE|DTR|RTS)+TIOCCDTR, TIOCMGET returns 0x0002 (DTR stuck SET, RTS/LE wiped). After the fix: 0x0005 (DTR cleared, RTS/LE intact)."
  },
  "kernel_refs": ["sys/dev/misc/nmdm/nmdm.c:564", "sys/dev/misc/nmdm/nmdm.c:565", "sys/dev/misc/nmdm/nmdm.c:606"],
  "artifacts": [
    "README.md", "VERDICT.md", "nmdm_probe.c", "build.sh", "run.sh",
    "run.log", "env.txt", "fix.diff", "fix_build.log", "fix_run.log",
    "manifest.json", "verdict.json"
  ]
}
