⬢ DragonFlyBSD Kernel Audit
DF-3254 / manifest.json
← back to finding ↓ download raw
{
 "finding_id": "DF-3254",
 "verdict": "reproduced",
 "impact": "panic",
 "confidence": "certain",
 "reproduce": {
  "build": "guest: cc -O -o patch_doff patch_doff.c; cc -O -I/usr/src/sys/vfs/hammer -o dedup_trigger dedup_trigger.c; image: newfs_hammer + a data file + synctid, offline-patch a DATA leaf data_offset to 0x100000 with CRC fix",
  "run": "guest: mount_hammer /dev/vn0 /mnt/h1 && ./dedup_trigger /mnt/h1 --copy h1.img <element-offset>",
  "expected": "panic: assertion HAMMER_ZONE(buf_offset) != 0 failed in _hammer_bread (see panic.txt); with data_offset exactly 0 the ioctl instead returns INVALID_ZONE harmlessly"
 },
 "kernel_refs": [
  "sys/vfs/hammer/hammer_dedup.c:66",
  "sys/vfs/hammer/hammer_dedup.c:82",
  "sys/vfs/hammer/hammer_dedup.c:92-93",
  "sys/vfs/hammer/hammer_ondisk.c:1123",
  "sys/vfs/hammer/hammer_btree.c:730-731"
 ],
 "artifacts": [
  "patch_doff.c",
  "dedup_trigger.c",
  "panic.txt",
  "run.log",
  "README.md",
  "VERDICT.md",
  "build.sh",
  "run.sh",
  "manifest.json",
  "verdict.json",
  "fix.diff",
  "env.txt",
  "ab_fixed.log",
  "compile_validation.txt"
 ]
}