mirror of
https://github.com/yggdrasil-network/yggdrasil-go.git
synced 2025-04-28 22:25:07 +03:00
Centralise call/listen functions in link.go
This commit is contained in:
parent
61774aed3b
commit
88925d3e06
4 changed files with 45 additions and 41 deletions
|
@ -573,18 +573,9 @@ func (a *admin) printInfos(infos []admin_nodeInfo) string {
|
|||
|
||||
// addPeer triggers a connection attempt to a node.
|
||||
func (a *admin) addPeer(addr string, sintf string) error {
|
||||
u, err := url.Parse(addr)
|
||||
if err == nil {
|
||||
switch strings.ToLower(u.Scheme) {
|
||||
case "tcp":
|
||||
a.core.link.tcp.connect(u.Host, sintf)
|
||||
case "socks":
|
||||
a.core.link.tcp.connectSOCKS(u.Host, u.Path[1:])
|
||||
default:
|
||||
return errors.New("invalid peer: " + addr)
|
||||
}
|
||||
} else {
|
||||
return errors.New("invalid peer: " + addr)
|
||||
err := a.core.link.call(addr, sintf)
|
||||
if err != nil {
|
||||
return err
|
||||
}
|
||||
return nil
|
||||
}
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue