⬢ DragonFlyBSD Kernel Audit
DF-3154 / build.log
← back to finding ↓ download raw
$ cc -O2 -o harness_df3154 harness.c
cc rc=$?
sizeof(struct ext2fs_dinode)=160  EXT2_INODE_SIZE(fs)=128  bsize=1024 ipb=8
slot idx 6: memcmp range [768,928) -> 32 bytes into NEXT slot
slot idx 7: memcmp range [896,1056) -> 32 bytes PAST buffer
case A (next slot = 0xAA..): memcmp=170 -> EIO path
case A (next slot zeroed):  memcmp=0 -> csum error suppressed
case B (last slot, guard page after buffer): fork+memcmp(slot 7, zero, 160) ...
case B: child SIGSEGV'd as predicted (signal 11) — the 32-byte over-read crossed the buffer end