DragonFlyBSD Kernel Audit
DF-0670 / fix_build.log
← back to finding ↓ download raw
== DF-0669 fix-validation: single-fix module build log ==

Build command:
  cd /usr/src/sys/net/ipfw3_basic && make obj && make

Combined fix applied to /usr/src/sys/net/ipfw3_basic/ip_fw3_table.c
before building (DF-0669 NULL guards at 3 sites + DF-0670 sopt_valsize
check; both target the same file so were applied together).

patch -p1 --forward < /root/combined_fix.diff output:
  Patching file sys/net/ipfw3_basic/ip_fw3_table.c using Plan A...
  Hunk #1 succeeded at 127.
  Hunk #2 succeeded at 247.
  Hunk #3 succeeded at 527.
  Hunk #4 succeeded at 598.
  done
  APPLIED

Module build (excerpt):
  cc -O2 -pipe -D_KERNEL -Wall ... -c ip_fw3_basic.c
  cc -O2 -pipe -D_KERNEL -Wall ... -c ip_fw3_log.c
  cc -O2 -pipe -D_KERNEL -Wall ... -c ip_fw3_state.c
  cc -O2 -pipe -D_KERNEL -Wall ... -c ip_fw3_table.c
  cc -O2 -pipe -D_KERNEL -Wall ... -c ip_fw3_sync.c
  cc -Wl,--build-id=sha1 -nostdlib -Wl,--hash-style=sysv -r -Wl,-d -o ipfw3_basic.ko ip_fw3_basic.o ip_fw3_log.o ip_fw3_state.o ip_fw3_table.o ip_fw3_sync.o
  === MODULE_BUILD_DONE rc=0 ===

Result:
  /usr/obj/usr/src/sys/net/ipfw3_basic/ipfw3_basic.ko (57304 bytes)
  Installed as /boot/kernel/ipfw3_basic.ko
  sha256 = 5eac256bf52a1f11b2214e08f5fe8faef1feaaf8b40c4857a55ff8ec13b1517e
  (baseline unpatched module was 3c3af7cf53174a43b09a4d8cd4d921fbc32838b4e2524ab21e043a93b39cf6ef)

Kernel #0 master DEV baseline was NOT rebuilt — only the ipfw3_basic
loadable module was rebuilt and swapped. After clean reboot
(`shutdown -r now` + sync), the patched module is loaded automatically
by `kldload ipfw3_basic`.

The full module-build output is preserved in the guest at
/root/module_build.log (serial console capture; not copied here because
the build is fully reproducible from fix.diff + the Makefile).