relay functionality working

This commit is contained in:
afeiszli
2021-09-16 20:00:40 -04:00
parent 0457769308
commit 61c2c5f0a0
5 changed files with 125 additions and 16 deletions

View File

@@ -754,11 +754,23 @@ func updateNode(w http.ResponseWriter, r *http.Request) {
return
}
newNode.PullChanges = "yes"
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 {
returnErrorResponse(w, r, formatError(err, "internal"))
return
}
if relayupdate {
UpdateRelay(node.Network, oldRelayAddrs, node.RelayAddrs)
}
if servercfg.IsDNSMode() {
err = SetDNS()