rpc: update getversion RPC-call

closes #1035
This commit is contained in:
Anna Shaleva 2020-06-10 10:01:21 +03:00
parent 7ddcc35daf
commit 3418e4f7f4
4 changed files with 29 additions and 14 deletions

View file

@ -345,16 +345,9 @@ func (s *Server) HandshakedPeersCount() int {
// getVersionMsg returns current version message.
func (s *Server) getVersionMsg() (*Message, error) {
var port uint16
_, portStr, err := net.SplitHostPort(s.transport.Address())
port, err := s.Port()
if err != nil {
port = s.Port
} else {
p, err := strconv.ParseUint(portStr, 10, 16)
if err != nil {
return nil, err
}
port = uint16(p)
return nil, err
}
capabilities := []capability.Capability{
@ -942,3 +935,19 @@ func (s *Server) broadcastTxLoop() {
}
}
}
// Port returns actual server port. It may differs from that of server.Config.
func (s *Server) Port() (uint16, error) {
var port uint16
_, portStr, err := net.SplitHostPort(s.transport.Address())
if err != nil {
port = s.ServerConfig.Port
} else {
p, err := strconv.ParseUint(portStr, 10, 16)
if err != nil {
return 0, err
}
port = uint16(p)
}
return port, nil
}