changes to TCP stack to enable xnet functionality

This commit is contained in:
soypat
2025-08-16 15:17:46 -03:00
parent c2995383da
commit 9cf4e35d2e
10 changed files with 124 additions and 19 deletions
+9
View File
@@ -93,15 +93,24 @@ func (ps *StackPorts) Demux(b []byte, offset int) (err error) {
func (ps *StackPorts) Register(h StackNode) error {
port := h.LocalPort()
proto := h.Protocol()
if port <= 0 {
return errZeroPort
} else if proto != uint64(ps.protocol) {
return errInvalidProto
}
var cid uint64
cidPtr := h.ConnectionID()
if cidPtr != nil {
cid = *cidPtr
}
return registerNode(&ps.handlers, node{
demux: h.Demux,
encapsulate: h.Encapsulate,
port: port,
currConnID: cid,
connID: cidPtr,
proto: uint16(proto),
})
}
+2 -2
View File
@@ -94,7 +94,7 @@ func setupClientServer(t *testing.T, rng *rand.Rand, client, server *StackIP, co
server.Reset(svip.Addr(), maxNodes)
client.Reset(clip.Addr(), maxNodes)
err := connServer.Configure(&tcp.ConnConfig{
err := connServer.Configure(tcp.ConnConfig{
RxBuf: make([]byte, bufsize),
TxBuf: make([]byte, bufsize),
TxPacketQueueSize: 3,
@@ -103,7 +103,7 @@ func setupClientServer(t *testing.T, rng *rand.Rand, client, server *StackIP, co
if err != nil {
t.Fatal(err)
}
err = connClient.Configure(&tcp.ConnConfig{
err = connClient.Configure(tcp.ConnConfig{
RxBuf: make([]byte, bufsize),
TxBuf: make([]byte, bufsize),
TxPacketQueueSize: 3,