From cae0e19d03f8b4dc8c2e43dd36aa067c0d02a6e4 Mon Sep 17 00:00:00 2001 From: Joey Hess Date: Tue, 2 Jun 2015 14:38:24 -0400 Subject: Revert "When listing DBus services, also list activatable services." MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit This reverts commit 334954d8bf9113b679f8af29ad481b0daece86f7. Sebastian thinks best to revert this: It seems to me the reason I needed to look at activatable sockets might actually be a networkd bug, and I was in error about patch 0001. On my machines (without DHCP), networkd quits after configuring the links. I thought this had to do with network activation, but that was probably mistaken. This was obscured by my testing the change by doing systemctl stop/start on networkd; now that I actually unplugged the network cable, I noticed no DBus messages are triggered by this on this machine. Your test case might have had a similar problem (networkd quitting on idle). Might be related to [1]. On another machine (with DHCP) networkd remains active all the time, and patch 0002 works there. You might want to revert 0001, though: Suppose someone’s running no manager at all, so that polling would be required. Because networkd is still listed as activable, we would refrain from polling – by mistake, because networkd doesn’t seem to actually go active if we listen on its bus, and it’s listed as activable even when it’s not configured. Connectivity-related messages will come in when stopping/starting the service, but not when unplugging the cable. --- Utility/DBus.hs | 10 ++-------- 1 file changed, 2 insertions(+), 8 deletions(-) (limited to 'Utility') diff --git a/Utility/DBus.hs b/Utility/DBus.hs index 108ef735b..5b0470301 100644 --- a/Utility/DBus.hs +++ b/Utility/DBus.hs @@ -22,14 +22,8 @@ type ServiceName = String listServiceNames :: Client -> IO [ServiceName] listServiceNames client = do - active <- do - reply <- callDBus client "ListNames" [] - return $ fromVariant =<< headMaybe (methodReturnBody reply) - activatable <- do - reply <- callDBus client "ListActivatableNames" [] - return $ fromVariant =<< headMaybe (methodReturnBody reply) - let service_names = fromMaybe [] active ++ fromMaybe [] activatable - return service_names + reply <- callDBus client "ListNames" [] + return $ fromMaybe [] $ fromVariant =<< headMaybe (methodReturnBody reply) callDBus :: Client -> MemberName -> [Variant] -> IO MethodReturn callDBus client name params = call_ client $ -- cgit v1.2.3