add ipv6 to xnet.StackAsync (#107)

* add ipv6 to xnet.StackAsync

* dns improvements

* improve DNS workings of StackAsync

* add tentative ICMPv6

* work on prefixes and fix some small bugs, plan UDP/TCP6

* fix bugs in StackAsync and ipv4.Prefix.Contains

* update arpsubtable

* completely remove legacy internet.StackIP for StackIPv4/v6

* ipv4/ipv6 tcp/udp

* add TCP6/UDP6 dialing APIs

* add xnet.Stack6 interface

* more ipv6 integration into StackAsync; various tweaks to lneto and documentation+TODOs

* add stack6 tests

* replace netip.Prefix with ipv4.Prefix where it makes sense
This commit is contained in:
Pat Whittingslow
2026-05-13 15:31:18 -03:00
committed by GitHub
parent 7d5830d7ab
commit a2970b923d
44 changed files with 1938 additions and 395 deletions
+6 -6
View File
@@ -54,7 +54,7 @@ func TestMDNS_QueryResponse(t *testing.T) {
if err != nil {
t.Fatal("responder reset:", err)
}
responderStack.SetGateway6(querierMAC)
responderStack.SetGatewayHardwareAddr(querierMAC)
var responderClient mdns.Client
err = responderClient.Configure(mdns.ClientConfig{
@@ -65,7 +65,7 @@ func TestMDNS_QueryResponse(t *testing.T) {
if err != nil {
t.Fatal("responder configure:", err)
}
err = responderStack.RegisterUDP(&responderClient, mcastAddr, mdns.Port)
err = responderStack.RegisterUDP4(&responderClient, mcastAddr, mdns.Port)
if err != nil {
t.Fatal("responder register:", err)
}
@@ -84,7 +84,7 @@ func TestMDNS_QueryResponse(t *testing.T) {
if err != nil {
t.Fatal("querier reset:", err)
}
querierStack.SetGateway6(responderMAC)
querierStack.SetGatewayHardwareAddr(responderMAC)
var querierClient mdns.Client
err = querierClient.Configure(mdns.ClientConfig{
@@ -105,7 +105,7 @@ func TestMDNS_QueryResponse(t *testing.T) {
if err != nil {
t.Fatal("start resolve:", err)
}
err = querierStack.RegisterUDP(&querierClient, mcastAddr, mdns.Port)
err = querierStack.RegisterUDP4(&querierClient, mcastAddr, mdns.Port)
if err != nil {
t.Fatal("querier register:", err)
}
@@ -289,7 +289,7 @@ func newMDNSStack(t *testing.T, hostname string, seed int64,
if err != nil {
t.Fatal(hostname, "reset:", err)
}
stack.SetGateway6(gatewayMAC)
stack.SetGatewayHardwareAddr(gatewayMAC)
var client mdns.Client
err = client.Configure(mdnsCfg)
@@ -297,7 +297,7 @@ func newMDNSStack(t *testing.T, hostname string, seed int64,
t.Fatal(hostname, "mdns configure:", err)
}
err = stack.RegisterUDP(&client, mdnsCfg.MulticastAddr, mdns.Port)
err = stack.RegisterUDP4(&client, mdnsCfg.MulticastAddr, mdns.Port)
if err != nil {
t.Fatal(hostname, "register udp:", err)
}