mirror of
https://github.com/gravitl/netmaker.git
synced 2025-10-14 13:04:26 +08:00
relay functionality working
This commit is contained in:
@@ -97,11 +97,22 @@ func (s *NodeServiceServer) UpdateNode(ctx context.Context, req *nodepb.Object)
|
||||
if err != nil {
|
||||
return nil, err
|
||||
}
|
||||
|
||||
relayupdate := false
|
||||
oldRelayAddrs := node.RelayAddrs
|
||||
if node.IsRelay == "yes" && len(newnode.RelayAddrs) > 0 {
|
||||
for i, addr := range newnode.RelayAddrs {
|
||||
if addr != node.RelayAddrs[i] {
|
||||
relayupdate = true
|
||||
}
|
||||
}
|
||||
}
|
||||
err = node.Update(&newnode)
|
||||
if err != nil {
|
||||
return nil, err
|
||||
}
|
||||
if relayupdate {
|
||||
UpdateRelay(node.Network, oldRelayAddrs, node.RelayAddrs)
|
||||
}
|
||||
nodeData, err := json.Marshal(&newnode)
|
||||
if err != nil {
|
||||
return nil, err
|
||||
@@ -138,7 +149,11 @@ func (s *NodeServiceServer) GetPeers(ctx context.Context, req *nodepb.Object) (*
|
||||
SetNetworkServerPeers(macAndNetwork[1])
|
||||
}
|
||||
excludeDoNotPropagate := node.IsRelay != "yes"
|
||||
peers, err := GetPeersList(macAndNetwork[1], excludeDoNotPropagate)
|
||||
var relayedNode string
|
||||
if node.DoNotPropagate == "yes" {
|
||||
relayedNode = node.Address
|
||||
}
|
||||
peers, err := GetPeersList(macAndNetwork[1], excludeDoNotPropagate, relayedNode)
|
||||
if err != nil {
|
||||
return nil, err
|
||||
}
|
||||
|
Reference in New Issue
Block a user