update logic for determing when to check for free port

This commit is contained in:
Matthew R. Kasun
2022-07-11 08:15:46 -04:00
parent daf2e364c7
commit 7bfbf06eb5
5 changed files with 18 additions and 10 deletions

View File

@@ -106,12 +106,17 @@ func NodeUpdate(client mqtt.Client, msg mqtt.Message) {
file := ncutils.GetNetclientPathSpecific() + nodeCfg.Node.Interface + ".conf"
if ifaceDelta { // if a change caused an ifacedelta we need to notify the server to update the peers
err = ncutils.ModPort(&newNode)
if err != nil {
logger.Log(0, "error modifying node port on", newNode.Name, "-", err.Error())
return
if newNode.ListenPort != nodeCfg.Node.LocalListenPort {
if err := wireguard.RemoveConf(newNode.Interface, false); err != nil {
logger.Log(0, "error remove interface", newNode.Interface, err.Error())
}
err = ncutils.ModPort(&newNode)
if err != nil {
logger.Log(0, "error modifying node port on", newNode.Name, "-", err.Error())
return
}
informPortChange(&newNode)
}
informPortChange(&newNode)
if err := wireguard.UpdateWgInterface(file, privateKey, nameserver, newNode); err != nil {
logger.Log(0, "error updating wireguard config "+err.Error())
return