{
  "verdict": "reproduced",
  "impact": "leak",
  "reproduce": {
    "build": "cc -O2 -o leak_srcnodes leak_srcnodes.c && cc -O2 -o conn2 conn2.c",
    "run": "kldload pf.ko; pfctl -f srcnodes.conf; pfctl -e; lo0 aliases 127.0.0.2-8; ./conn2 127.0.0.{2..8} &; ./leak_srcnodes (O_RDONLY fd)",
    "expected": "qwords 0xfffff8008bb64460 / 0xfffff8008bb645a0 / 0xfffff8011757d6e0 (rbe_left/right/parent) at +0x00/+0x08/+0x10 of struct pf_src_node, stable across dumps"
  },
  "kernel_refs": [
    "sys/net/pf/pf_ioctl.c:2884",
    "sys/net/pf/pf_ioctl.c:2886",
    "sys/net/pf/pf_ioctl.c:2902",
    "sys/net/pf/pf_ioctl.c:1069",
    "sys/net/pf/pf.c:582"
  ],
  "artifacts": [
    "leak_srcnodes.c", "conn2.c", "srcnodes.conf", "build.sh", "run.sh",
    "build.log", "run.log", "leak_sample.txt", "env.txt", "fix.diff",
    "README.md", "VERDICT.md", "manifest.json", "verdict.json"
  ]
}
