Skip to content

feat: support IPv4/IPv6 web listener availability - #306

Draft
mark-e-deyoung wants to merge 2 commits into
agent/https-read-onlyfrom
agent/ip-family-listeners
Draft

feat: support IPv4/IPv6 web listener availability#306
mark-e-deyoung wants to merge 2 commits into
agent/https-read-onlyfrom
agent/ip-family-listeners

Conversation

@mark-e-deyoung

Copy link
Copy Markdown
Contributor

Summary

  • replace HTTP/HTTPS IPv4 INADDR_ANY listeners with one shared multi-address resolver/binder
  • translate stable config families to native AF values, bind IPv4/IPv6 independently, preserve partial success, apply scope IDs, set IPV6_V6ONLY explicitly, and use exclusive address binding on Windows
  • return accepted sockets to blocking mode, fixing the existing TLS WANT_READ handshake failure
  • add --no-update-check so transport tests are hermetic
  • add a required Windows HTTP/HTTPS × IPv4/IPv6 live health matrix
  • model all requested/available family combinations in TLA+ and replay a versioned trace
  • document current gaps and RFC 8305/6724/3986/9844/9872 guidance

Validation

  • MSVC Release wininspectd and est_core: build pass
  • full core CTest: pass (9.04s)
  • live matrix: HTTP IPv4, HTTP IPv6, HTTPS IPv4, HTTPS IPv6 all pass
  • Linux GCC strict object compile: -Wall -Wextra -Wpedantic -Werror pass
  • clang-format --Werror: pass
  • TLC address availability: 12 initial states, 34 generated / 33 distinct, no violations
  • git diff --check`n

Scope

Advances #304 and #300. This slice covers HTTP/HTTPS listeners. TCP helper migration, TLS-TCP, clients/Happy Eyeballs, rendezvous, discovery/mDNS, link-local UI, NAT64, Windows/Wine scheduled matrices, and effective-endpoint reporting remain follow-ups.

Stacked on #305.

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