Compare commits
2
Commits
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
aaccabad50 | ||
|
|
6b580a5a0f |
@@ -10,17 +10,19 @@
|
|||||||
|
|
||||||
# Status
|
# Status
|
||||||
|
|
||||||
pre-1.0. No git tags. Work lands on `next` by PR. Open work for 1.0 is tracked
|
pre-1.0. Work lands on `next` by PR. Open work for 1.0 is tracked on the 1.0
|
||||||
on the 1.0 milestone: https://git.eeqj.de/sneak/dnswatcher/milestone/7
|
milestone: https://git.eeqj.de/sneak/dnswatcher/milestone/7
|
||||||
|
|
||||||
# Next Step
|
# Next Step
|
||||||
|
|
||||||
trial run of the finished image: https://git.eeqj.de/sneak/dnswatcher/issues/149
|
1.0 tracking issue: https://git.eeqj.de/sneak/dnswatcher/issues/66
|
||||||
|
|
||||||
# Completed Steps
|
# Completed Steps
|
||||||
|
|
||||||
- 2026-10-13: an IPv6 address is written in brackets before its port, as in
|
- 2026-10-13: an IPv6 address is written in brackets before its port, as in
|
||||||
`[2001:db8::1]:443`, in keys and Port Change notifications (closes #270).
|
`[2001:db8::1]:443`, in keys and Port Change notifications (closes #270).
|
||||||
|
- 2026-10-13: `TODO.md` names only open issues as next and future steps, and its
|
||||||
|
Status says nothing about git tags (closes #281).
|
||||||
- 2026-10-13: a port check that finds port 443 closed removes that address's
|
- 2026-10-13: a port check that finds port 443 closed removes that address's
|
||||||
certificate entries, so none is left shown as `ok` (closes #265).
|
certificate entries, so none is left shown as `ok` (closes #265).
|
||||||
- 2026-10-13: a state file holding `{}`, or leaving out a section, loads with
|
- 2026-10-13: a state file holding `{}`, or leaving out a section, loads with
|
||||||
@@ -203,6 +205,4 @@ trial run of the finished image: https://git.eeqj.de/sneak/dnswatcher/issues/149
|
|||||||
|
|
||||||
# Future Steps
|
# Future Steps
|
||||||
|
|
||||||
- 1.0 readiness: run it with a real config and read the logs:
|
- DNSSEC validation, after 1.0: https://git.eeqj.de/sneak/dnswatcher/issues/59
|
||||||
https://git.eeqj.de/sneak/dnswatcher/issues/66
|
|
||||||
- review toward 1.0: https://git.eeqj.de/sneak/dnswatcher/issues/144
|
|
||||||
|
|||||||
@@ -16,7 +16,8 @@ import (
|
|||||||
// certificate keys and the Port Change notification write the address
|
// certificate keys and the Port Change notification write the address
|
||||||
// in brackets, so its last group cannot be read as the port, and the
|
// in brackets, so its last group cannot be read as the port, and the
|
||||||
// second port checks keep the certificate entry, whose address they read
|
// second port checks keep the certificate entry, whose address they read
|
||||||
// back from its key. Nothing is looked up.
|
// back from its key. When a last port check finds port 443 closed, the
|
||||||
|
// certificate entry is removed. Nothing is looked up.
|
||||||
func TestIPv6AddressInBrackets(t *testing.T) {
|
func TestIPv6AddressInBrackets(t *testing.T) {
|
||||||
t.Parallel()
|
t.Parallel()
|
||||||
|
|
||||||
@@ -70,4 +71,13 @@ Port now open`
|
|||||||
if len(got) != 1 || got[0].Title != title || got[0].Message != want {
|
if len(got) != 1 || got[0].Title != title || got[0].Message != want {
|
||||||
t.Errorf("sent %v, want one %q with message:\n%s", got, title, want)
|
t.Errorf("sent %v, want one %q with message:\n%s", got, title, want)
|
||||||
}
|
}
|
||||||
|
|
||||||
|
deps.portChecker.closed = true
|
||||||
|
|
||||||
|
w.CheckAllPorts(t.Context())
|
||||||
|
|
||||||
|
gotCerts = slices.Sorted(maps.Keys(deps.state.GetSnapshot().Certificates))
|
||||||
|
if len(gotCerts) != 0 {
|
||||||
|
t.Errorf("certificate entries %v with port 443 closed, want none", gotCerts)
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user