Now that the remote driver itself can probe for listening sockets / running daemons, virtproxyd doesn't need to probe URIs itself. Instead it can just delegate to the remote driver. Signed-off-by: Daniel P. Berrangé <berrange@xxxxxxxxxx> --- src/remote/remote_daemon_dispatch.c | 74 ----------------------------- 1 file changed, 74 deletions(-) diff --git a/src/remote/remote_daemon_dispatch.c b/src/remote/remote_daemon_dispatch.c index 36d4d00b79..8cec0a2a01 100644 --- a/src/remote/remote_daemon_dispatch.c +++ b/src/remote/remote_daemon_dispatch.c @@ -1948,73 +1948,6 @@ void *remoteClientNew(virNetServerClient *client, /*----- Functions. -----*/ -#ifdef VIRTPROXYD -/* - * When running in virtproxyd regular auto-probing of drivers - * does not work as we don't have any drivers present (except - * stateless ones inside libvirt.so). All the interesting - * drivers are in separate daemons. Thus when we get a NULL - * URI we need to simulate probing that virConnectOpen would - * previously do. We use the existence of the UNIX domain - * socket as our hook for probing. - * - * This assumes no stale sockets left over from a now dead - * daemon, but that's reasonable since libvirtd unlinks - * sockets it creates on shutdown, or uses systemd activation - * - * We only try to probe for primary hypervisor drivers, - * not the secondary drivers. - */ -static int -remoteDispatchProbeURI(bool readonly, - char **probeduri) -{ - g_autofree char *driver = NULL; - const char *suffix; - *probeduri = NULL; - VIR_DEBUG("Probing for driver daemon sockets"); - - /* - * If running root, either the daemon is running and the socket - * exists, or we're using socket activation so the socket exists - * too. - * - * If running non-root, the daemon may or may not already be - * running, and socket activation probably isn't relevant. - * So if no viable socket exists, we need to check which daemons - * are actually installed. This is not a big deal as only QEMU & - * VBox run as non-root, anyway. - */ - if (geteuid() != 0) { - if (remoteProbeSessionDriverFromSocket(false, &driver) < 0) - return -1; - - if (driver == NULL && - remoteProbeSessionDriverFromBinary(&driver) < 0) - return -1; - - suffix = "session"; - } else { - if (remoteProbeSystemDriverFromSocket(readonly, &driver) < 0) - return -1; - - suffix = "system"; - } - - /* Even if we didn't probe any socket, we won't - * return error. Just let virConnectOpen's normal - * logic run which will likely return an error anyway - */ - if (!driver) - return 0; - - *probeduri = g_strdup_printf("%s:///%s", driver, suffix); - VIR_DEBUG("Probed URI %s for driver %s", *probeduri, driver); - return 0; -} -#endif /* VIRTPROXYD */ - - static int remoteDispatchConnectOpen(virNetServer *server G_GNUC_UNUSED, virNetServerClient *client, @@ -2054,13 +1987,6 @@ remoteDispatchConnectOpen(virNetServer *server G_GNUC_UNUSED, priv->readonly = flags & VIR_CONNECT_RO; #ifdef VIRTPROXYD - if (!name || STREQ(name, "")) { - if (remoteDispatchProbeURI(priv->readonly, &probeduri) < 0) - goto cleanup; - - name = probeduri; - } - preserveIdentity = true; #endif /* VIRTPROXYD */ -- 2.31.1