# DF-3549 — sys/netgraph7/ng_device.c is non-compilable, unwired FreeBSD-port rot

Info-level finding documenting why DF-3547/DF-3548 (and any future bug in this file)
are latent only:

1. **Does not compile.** Guest-verified out-of-tree kmod build: 64 errors —
   `struct cdevsw` has no member `d_open/d_close/d_read/d_write/d_poll/d_name`,
   `unknown type name 'd_poll_t'`, `D_VERSION` undeclared, `MTX_DEF` undeclared,
   `struct ifqueue has no member 'ifq_mtx'`, `implicit declaration of IF_LOCK`,
   `_IF_QFULL`, `IFQ_SET_MAXLEN`, `IFQ_IS_EMPTY`, `msleep`, `unit2minor`,
   `m_uiotombuf` (full log: ../DF-3547/build.log). None of these FreeBSD
   primitives exist anywhere in DragonFly headers.
2. **Wired into no build.** `sys/netgraph7/Makefile` SUBDIR has no `device`
   entry; `sys/conf/files:1699` gates it behind `optional netgraph7_device`;
   no kernel config in the tree defines `NETGRAPH7_DEVICE`
   (`sys/conf/options:302` is the only reference).
3. The v1 twin `sys/netgraph/ng_device.c` is likewise absent from
   `sys/conf/files` and `sys/netgraph/Makefile` (both variants dead since
   their respective imports).

**Recommendation:** either complete the DragonFly port (struct dev_ops-based
cdevsw, DF sleep/queue primitives, plus the DF-3547 lifetime fix) and wire it
into the module Makefile, or delete the file. As it stands it silently rots and
gathers unverifiable CVE-able patterns.

Phase V: **skipped** (Info; the "verification" of this finding *is* the compile
log in ../DF-3547/build.log plus env.txt).
