mirror of
https://github.com/fosrl/olm.git
synced 2026-03-07 03:06:44 +00:00
Make chainId in relay message bckwd compat
This commit is contained in:
@@ -51,7 +51,6 @@ func (o *Olm) handleWgPeerAdd(msg websocket.WSMessage) {
|
|||||||
return
|
return
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
logger.Info("Successfully added peer for site %d", siteConfigMsg.SiteId)
|
logger.Info("Successfully added peer for site %d", siteConfigMsg.SiteId)
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -181,11 +180,9 @@ func (o *Olm) handleWgPeerRelay(msg websocket.WSMessage) {
|
|||||||
return
|
return
|
||||||
}
|
}
|
||||||
|
|
||||||
if relayData.ChainId != "" {
|
|
||||||
if monitor := o.peerManager.GetPeerMonitor(); monitor != nil {
|
if monitor := o.peerManager.GetPeerMonitor(); monitor != nil {
|
||||||
monitor.CancelRelaySend(relayData.ChainId)
|
monitor.CancelRelaySend(relayData.ChainId)
|
||||||
}
|
}
|
||||||
}
|
|
||||||
|
|
||||||
primaryRelay, err := util.ResolveDomain(relayData.RelayEndpoint)
|
primaryRelay, err := util.ResolveDomain(relayData.RelayEndpoint)
|
||||||
if err != nil {
|
if err != nil {
|
||||||
@@ -223,11 +220,9 @@ func (o *Olm) handleWgPeerUnrelay(msg websocket.WSMessage) {
|
|||||||
return
|
return
|
||||||
}
|
}
|
||||||
|
|
||||||
if relayData.ChainId != "" {
|
|
||||||
if monitor := o.peerManager.GetPeerMonitor(); monitor != nil {
|
if monitor := o.peerManager.GetPeerMonitor(); monitor != nil {
|
||||||
monitor.CancelRelaySend(relayData.ChainId)
|
monitor.CancelRelaySend(relayData.ChainId)
|
||||||
}
|
}
|
||||||
}
|
|
||||||
|
|
||||||
primaryRelay, err := util.ResolveDomain(relayData.Endpoint)
|
primaryRelay, err := util.ResolveDomain(relayData.Endpoint)
|
||||||
if err != nil {
|
if err != nil {
|
||||||
|
|||||||
@@ -456,10 +456,22 @@ func (pm *PeerMonitor) sendUnRelay(siteID int) error {
|
|||||||
}
|
}
|
||||||
|
|
||||||
// CancelRelaySend stops the interval sender for the given chainId, if one exists.
|
// CancelRelaySend stops the interval sender for the given chainId, if one exists.
|
||||||
|
// If chainId is empty, all active relay senders are stopped.
|
||||||
func (pm *PeerMonitor) CancelRelaySend(chainId string) {
|
func (pm *PeerMonitor) CancelRelaySend(chainId string) {
|
||||||
pm.relaySendMu.Lock()
|
pm.relaySendMu.Lock()
|
||||||
defer pm.relaySendMu.Unlock()
|
defer pm.relaySendMu.Unlock()
|
||||||
|
|
||||||
|
if chainId == "" {
|
||||||
|
for id, stop := range pm.relaySends {
|
||||||
|
if stop != nil {
|
||||||
|
stop()
|
||||||
|
}
|
||||||
|
delete(pm.relaySends, id)
|
||||||
|
}
|
||||||
|
logger.Info("Cancelled all relay senders")
|
||||||
|
return
|
||||||
|
}
|
||||||
|
|
||||||
if stop, ok := pm.relaySends[chainId]; ok {
|
if stop, ok := pm.relaySends[chainId]; ok {
|
||||||
stop()
|
stop()
|
||||||
delete(pm.relaySends, chainId)
|
delete(pm.relaySends, chainId)
|
||||||
|
|||||||
Reference in New Issue
Block a user