Cleanup, hub updates

This commit is contained in:
jdl
2024-12-23 09:34:11 +01:00
parent a6e022e570
commit 6a6e30feb9
17 changed files with 108 additions and 147 deletions

View File

@@ -106,7 +106,7 @@ func main(listenIP string, port uint16) {
// Intialize globals.
localIP = config.PeerIP
localPub = addrIsValid(config.PublicIP)
privateKey = config.EncPrivKey
privateKey = config.PrivKey
_iface = newIFWriter(iface)
_conn = newConnWriter(conn)

View File

@@ -14,8 +14,6 @@ const (
packetTypeSyn = iota + 1
packetTypeSynAck
packetTypeAck
packetTypeAddrReq
packetTypeAddrResp
)
// ----------------------------------------------------------------------------
@@ -34,10 +32,6 @@ func (p *controlPacket) ParsePayload(buf []byte) (err error) {
p.Payload, err = parseSynAckPacket(buf)
case packetTypeAck:
p.Payload, err = parseAckPacket(buf)
case packetTypeAddrReq:
p.Payload, err = parseAddrReqPacket(buf)
case packetTypeAddrResp:
p.Payload, err = parseAddrRespPacket(buf)
default:
return errUnknownPacketType
}
@@ -118,46 +112,3 @@ func parseAckPacket(buf []byte) (p ackPacket, err error) {
Error()
return
}
// ----------------------------------------------------------------------------
type addrReqPacket struct {
TraceID uint64
}
func (p addrReqPacket) Marshal(buf []byte) []byte {
return newBinWriter(buf).
Byte(packetTypeAddrReq).
Uint64(p.TraceID).
Build()
}
func parseAddrReqPacket(buf []byte) (p addrReqPacket, err error) {
err = newBinReader(buf[1:]).
Uint64(&p.TraceID).
Error()
return
}
// ----------------------------------------------------------------------------
type addrRespPacket struct {
TraceID uint64
Addr netip.AddrPort
}
func (p addrRespPacket) Marshal(buf []byte) []byte {
return newBinWriter(buf).
Byte(packetTypeAddrResp).
Uint64(p.TraceID).
AddrPort(p.Addr).
Build()
}
func parseAddrRespPacket(buf []byte) (p addrRespPacket, err error) {
err = newBinReader(buf[1:]).
Uint64(&p.TraceID).
AddrPort(&p.Addr).
Error()
return
}

View File

@@ -2,6 +2,7 @@ package node
import (
"crypto/rand"
"net/netip"
"reflect"
"testing"
)
@@ -24,7 +25,8 @@ func TestPacketSyn(t *testing.T) {
func TestPacketSynAck(t *testing.T) {
in := synAckPacket{
TraceID: newTraceID(),
TraceID: newTraceID(),
RecvAddr: netip.AddrPort{},
}
out, err := parseSynAckPacket(in.Marshal(make([]byte, bufferSize)))

View File

@@ -102,12 +102,12 @@ func (s *peerSupervisor) _peerUpdate(peer *m.Peer) stateFunc {
}
s.staged.IP = s.remoteIP
s.staged.ControlCipher = newControlCipher(privateKey, peer.EncPubKey)
s.staged.ControlCipher = newControlCipher(privateKey, peer.PubKey)
s.staged.DataCipher = newDataCipher()
if ip, isValid := netip.AddrFromSlice(peer.PublicIP); isValid {
s.remotePub = true
s.staged.Relay = peer.Mediator
s.staged.Relay = peer.Relay
s.staged.RemoteAddr = netip.AddrPortFrom(ip, peer.Port)
}