forked from cerc-io/plugeth
p2p/enode: store local port number as uint16 (#23926)
This commit is contained in:
parent
347c37b362
commit
d15e423562
@ -63,7 +63,7 @@ type LocalNode struct {
|
|||||||
type lnEndpoint struct {
|
type lnEndpoint struct {
|
||||||
track *netutil.IPTracker
|
track *netutil.IPTracker
|
||||||
staticIP, fallbackIP net.IP
|
staticIP, fallbackIP net.IP
|
||||||
fallbackUDP int
|
fallbackUDP uint16 // port
|
||||||
}
|
}
|
||||||
|
|
||||||
// NewLocalNode creates a local node.
|
// NewLocalNode creates a local node.
|
||||||
@ -208,8 +208,8 @@ func (ln *LocalNode) SetFallbackUDP(port int) {
|
|||||||
ln.mu.Lock()
|
ln.mu.Lock()
|
||||||
defer ln.mu.Unlock()
|
defer ln.mu.Unlock()
|
||||||
|
|
||||||
ln.endpoint4.fallbackUDP = port
|
ln.endpoint4.fallbackUDP = uint16(port)
|
||||||
ln.endpoint6.fallbackUDP = port
|
ln.endpoint6.fallbackUDP = uint16(port)
|
||||||
ln.updateEndpoints()
|
ln.updateEndpoints()
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -261,7 +261,7 @@ func (ln *LocalNode) updateEndpoints() {
|
|||||||
}
|
}
|
||||||
|
|
||||||
// get returns the endpoint with highest precedence.
|
// get returns the endpoint with highest precedence.
|
||||||
func (e *lnEndpoint) get() (newIP net.IP, newPort int) {
|
func (e *lnEndpoint) get() (newIP net.IP, newPort uint16) {
|
||||||
newPort = e.fallbackUDP
|
newPort = e.fallbackUDP
|
||||||
if e.fallbackIP != nil {
|
if e.fallbackIP != nil {
|
||||||
newIP = e.fallbackIP
|
newIP = e.fallbackIP
|
||||||
@ -277,15 +277,18 @@ func (e *lnEndpoint) get() (newIP net.IP, newPort int) {
|
|||||||
|
|
||||||
// predictAddr wraps IPTracker.PredictEndpoint, converting from its string-based
|
// predictAddr wraps IPTracker.PredictEndpoint, converting from its string-based
|
||||||
// endpoint representation to IP and port types.
|
// endpoint representation to IP and port types.
|
||||||
func predictAddr(t *netutil.IPTracker) (net.IP, int) {
|
func predictAddr(t *netutil.IPTracker) (net.IP, uint16) {
|
||||||
ep := t.PredictEndpoint()
|
ep := t.PredictEndpoint()
|
||||||
if ep == "" {
|
if ep == "" {
|
||||||
return nil, 0
|
return nil, 0
|
||||||
}
|
}
|
||||||
ipString, portString, _ := net.SplitHostPort(ep)
|
ipString, portString, _ := net.SplitHostPort(ep)
|
||||||
ip := net.ParseIP(ipString)
|
ip := net.ParseIP(ipString)
|
||||||
port, _ := strconv.Atoi(portString)
|
port, err := strconv.ParseUint(portString, 10, 16)
|
||||||
return ip, port
|
if err != nil {
|
||||||
|
return nil, 0
|
||||||
|
}
|
||||||
|
return ip, uint16(port)
|
||||||
}
|
}
|
||||||
|
|
||||||
func (ln *LocalNode) invalidate() {
|
func (ln *LocalNode) invalidate() {
|
||||||
|
@ -242,7 +242,7 @@ func assignTCPPort() (uint16, error) {
|
|||||||
if err != nil {
|
if err != nil {
|
||||||
return 0, err
|
return 0, err
|
||||||
}
|
}
|
||||||
p, err := strconv.ParseInt(port, 10, 32)
|
p, err := strconv.ParseUint(port, 10, 16)
|
||||||
if err != nil {
|
if err != nil {
|
||||||
return 0, err
|
return 0, err
|
||||||
}
|
}
|
||||||
|
Loading…
Reference in New Issue
Block a user