summaryrefslogtreecommitdiff
path: root/src/Erebos/Discovery.hs
diff options
context:
space:
mode:
authorRoman Smrž <roman.smrz@seznam.cz>2025-06-13 22:49:29 +0200
committerRoman Smrž <roman.smrz@seznam.cz>2025-06-14 15:45:27 +0200
commit5b3c52c50b5301d009fb9a0d44b4cf91d50f6de4 (patch)
tree4814de0d56b7fe84da2ce507d24cfdf8e100f61e /src/Erebos/Discovery.hs
parent7fa7cdeb5a8c0c784145df852da8ec4c18cb6e6b (diff)
Terminate ICE thread when server is stoppedrelease-0.1
Changelog: Improved handling of ICE connections
Diffstat (limited to 'src/Erebos/Discovery.hs')
-rw-r--r--src/Erebos/Discovery.hs6
1 files changed, 6 insertions, 0 deletions
diff --git a/src/Erebos/Discovery.hs b/src/Erebos/Discovery.hs
index d203866..d098f98 100644
--- a/src/Erebos/Discovery.hs
+++ b/src/Erebos/Discovery.hs
@@ -384,6 +384,12 @@ instance Service DiscoveryService where
Just ref -> sendToPeer peer $ DiscoverySearch ref
Nothing -> return ()
+#ifdef ENABLE_ICE_SUPPORT
+ serviceStopServer _ _ _ pstates = do
+ forM_ pstates $ \( _, DiscoveryPeerState {..} ) -> do
+ mapM_ iceStopThread dpsIceConfig
+#endif
+
identityDigests :: Foldable f => Identity f -> [ RefDigest ]
identityDigests pid = map (refDigest . storedRef) $ idDataF =<< unfoldOwners pid