Skip to content

Show the nothing-bound page for a sharing machine's stopped contexts - #44

Merged
chris-allen merged 1 commit into
mainfrom
zone-wildcard
Nov 1, 2026
Merged

chris-allen merged 1 commit into
mainfrom
zone-wildcard

Conversation

@chris-allen

Copy link
Copy Markdown
Contributor

On a machine that shares (#41), a context that isn't running showed a certificate error where grove means to show its "nothing bound" page.

Why

An unrouted name gets a shared wildcard instead of a leaf of its own, so made-up names can't make the daemon sign one apiece (#40). That wildcard was always *.grov.site, which covers exactly one label. Sharing puts every hostname two labels deep, <context>.<host>.grov.site, so the wildcard covered none of them. After a reboot ended a stack's leases, a phone opening its URL saw a certificate for the wrong name and called it untrusted.

Change

  • The issuer knows the machine's zone. An unrouted name one label under it gets the zone's own wildcard, *.<host>.grov.site. One-label names still get *.grov.site.
  • Minting stays bounded at those two wildcards, whatever names a client offers.
  • The HTTPS concept page describes both.

Testing

  • go test -race -count=1 ./..., go vet ./..., gofmt -l ., and the docs link check.
  • A new issuer test offers 50 made-up names under the zone, checks each is covered, and checks only two leaves are signed.
  • On a sharing machine, an unrouted nothing-here.regulus.grov.site now serves *.regulus.grov.site and the 503 page, verified against the machine's root, while a routed name still gets its own leaf.

- Unrouted names under the zone get the zone's own wildcard, since the
  domain's covers only one label and every shared name sits two deep
@chris-allen
chris-allen merged commit b148746 into main Nov 1, 2026
15 checks passed
@chris-allen
chris-allen deleted the zone-wildcard branch November 1, 2026 19:15
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant