On 04/09/2018 05:45 PM, Daniel P. Berrangé wrote: > Declare what URI schemes a driver supports in its virConnectDriver > struct. This allows us to skip trying to open the driver entirely > if the URI scheme doesn't match. > > Signed-off-by: Daniel P. Berrangé <berrange@xxxxxxxxxx> > --- > src/bhyve/bhyve_driver.c | 4 +--- > src/driver.h | 6 ++++++ > src/esx/esx_driver.c | 27 ++------------------------- > src/hyperv/hyperv_driver.c | 22 ++-------------------- > src/interface/interface_backend_netcf.c | 4 +--- > src/interface/interface_backend_udev.c | 4 +--- > src/libvirt.c | 24 ++++++++++++++++++++++++ > src/libxl/libxl_driver.c | 5 +---- > src/lxc/lxc_driver.c | 5 +---- > src/network/bridge_driver.c | 4 +--- > src/node_device/node_device_driver.c | 3 --- > src/node_device/node_device_hal.c | 1 + > src/node_device/node_device_udev.c | 1 + > src/nwfilter/nwfilter_driver.c | 4 +--- > src/openvz/openvz_driver.c | 6 +----- > src/phyp/phyp_driver.c | 4 +--- > src/qemu/qemu_driver.c | 8 +------- > src/secret/secret_driver.c | 4 +--- > src/storage/storage_driver.c | 4 +--- > src/test/test_driver.c | 4 +--- > src/uml/uml_driver.c | 5 +---- > src/vbox/vbox_common.c | 4 ---- > src/vbox/vbox_driver.c | 5 ++--- > src/vmware/vmware_driver.c | 7 +------ > src/vz/vz_driver.c | 15 ++------------- > src/xenapi/xenapi_driver.c | 5 ++--- > 26 files changed, 57 insertions(+), 128 deletions(-) > > diff --git a/src/bhyve/bhyve_driver.c b/src/bhyve/bhyve_driver.c > index cc1d4ba6fb..21754dfc10 100644 > --- a/src/bhyve/bhyve_driver.c > +++ b/src/bhyve/bhyve_driver.c > @@ -202,9 +202,6 @@ bhyveConnectOpen(virConnectPtr conn, > if (conn->uri == NULL) { > return VIR_DRV_OPEN_DECLINED; > } else { > - if (!conn->uri->scheme || STRNEQ(conn->uri->scheme, "bhyve")) > - return VIR_DRV_OPEN_DECLINED; > - > if (STRNEQ_NULLABLE(conn->uri->path, "/system")) { > virReportError(VIR_ERR_INTERNAL_ERROR, > _("Unexpected bhyve URI path '%s', try bhyve:///system"), > @@ -1752,6 +1749,7 @@ static virHypervisorDriver bhyveHypervisorDriver = { > > static virConnectDriver bhyveConnectDriver = { > .localOnly = true, > + .uriSchemes = (const char *[]){ "bhyve", NULL }, Frankly, I don't like this typecast. But at the same time, I'm unable to come up with something better. Apart from some VIR_URI_SCHEMES() macro that would hide typecast in its internals. Michal -- libvir-list mailing list libvir-list@xxxxxxxxxx https://www.redhat.com/mailman/listinfo/libvir-list