diff options
| author | Calvin Morrison <calvin@pobox.com> | 2026-08-19 13:00:43 -0400 |
|---|---|---|
| committer | Calvin Morrison <calvin@pobox.com> | 2026-08-19 13:00:43 -0400 |
| commit | 5ef4699d05bc919255449a9af780f216a0589a72 (patch) | |
| tree | da490e5e3278a9832c0e224657272b59369cc0c7 /fw/doc/todo.md | |
| parent | e8d83b79247f25095346041d4af65c3e0dc3da16 (diff) | |
doc: 91 checks, and a wire
Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
Diffstat (limited to 'fw/doc/todo.md')
| -rw-r--r-- | fw/doc/todo.md | 14 |
1 files changed, 10 insertions, 4 deletions
diff --git a/fw/doc/todo.md b/fw/doc/todo.md index e83167d..fbb645a 100644 --- a/fw/doc/todo.md +++ b/fw/doc/todo.md @@ -5,8 +5,10 @@ says so; where it has not, it says what is actually true. An item never appears in both halves. `test/fwtest.rc` is a check for every bug that has shipped here, and -for the properties that must not quietly stop being true — 87 of them -now. Run it twice in a row after touching anything. +for the properties that must not quietly stop being true — 91 of them +now. Run it twice in a row after touching anything, and boot with +`run.sh -gw` or fourteen of them skip. `test/wire.md` is the part that +needs a second machine. ## Fixed, first round @@ -85,7 +87,11 @@ now. Run it twice in a row after touching anything. 10. **Promiscuous mode had no filter behind it.** The card must be promiscuous for multicast, but every neighbour's unicast was then judged, counted and flow-tracked as if it were ours. -11. **"A dead fw takes the network with it" was the requirement, not +11. **`/mnt/fw/ether0` was a name nothing made.** mntgen invents names + one level deep, so the mntgen over `/mnt` gives `/mnt/fw` and stops. + `fwstart` did it right by accident of being imperative; the service + file needed a second mntgen of its own, and now has one. +12. **"A dead fw takes the network with it" was the requirement, not the bug.** It had been item 1 since the beginning, on the grounds that a dead `fw` leaves the machine with no network. That is the only defensible thing for a firewall to do: the alternative is @@ -100,7 +106,7 @@ now. Run it twice in a row after touching anything. need the address it just lost, and `fw` clears the dead mount its own corpse left on the control mountpoint, which was refusing the restart by way of the check meant to protect the card. -12. **"fw daemonizes, so svc cannot supervise it" was wrong.** `svc` +13. **"fw daemonizes, so svc cannot supervise it" was wrong.** `svc` has had the detaching shape from the start: `ready=srv:` watches the `/srv` name, and for those services the process exiting "is normal and never causes a restart". Nothing needed a foreground |
