[libvirt] [PATCH 02/48] Destroy virdomainlist.[ch]

Osier Yang jyang at redhat.com
Fri Aug 3 15:48:05 UTC 2012


As the consensus in:
https://www.redhat.com/archives/libvir-list/2012-July/msg01692.html,
this patch is to destroy conf/virdomainlist.[ch], foldering the
helpers into conf/domain_conf.[ch].

* src/Makefile.am:
  - Various indentions fixes incidentally
  - Add macro DATATYPES_SOURCES (datatypes.[ch])
  - Link datatypes.[ch] for libvirt_lxc

* src/conf/domain_conf.c:
  - Move all the stuffs from virdomainlist.c into it
  - Use virUnrefDomain and virUnrefDomainSnapshot instead of
    virDomainFree and virDomainSnapshotFree, which are defined
    in libvirt.c, and we don't want to link to it.

* src/conf/domain_conf.h:
  - Move all the stuffs from virdomainlist.h into it
  - s/LIST_FILTER/LIST_DOMAINS_FILTER/

* src/libxl/libxl_driver.c:
  - s/LIST_FILTER/LIST_DOMAINS_FILTER/
  - no (include "virdomainlist.h")

* src/libxl/libxl_driver.c: Likewise

* src/lxc/lxc_driver.c: Likewise

* src/openvz/openvz_driver.c: Likewise

* src/parallels/parallels_driver.c: Likewise

* src/qemu/qemu_driver.c: Likewise

* src/test/test_driver.c: Likewise

* src/uml/uml_driver.c: Likewise

* src/vbox/vbox_tmpl.c: Likewise

* src/vmware/vmware_driver.c: Likewise

* tools/virsh-domain-monitor.c: Likewise

* tools/virsh.c: Likewise
---
 src/Makefile.am                  |  125 ++++++++++-----------
 src/conf/domain_conf.c           |  189 ++++++++++++++++++++++++++++++++-
 src/conf/domain_conf.h           |   56 ++++++++++
 src/conf/virdomainlist.c         |  222 --------------------------------------
 src/conf/virdomainlist.h         |   84 --------------
 src/libxl/libxl_driver.c         |    3 +-
 src/lxc/lxc_driver.c             |    3 +-
 src/openvz/openvz_driver.c       |    3 +-
 src/parallels/parallels_driver.c |    3 +-
 src/qemu/qemu_driver.c           |    3 +-
 src/test/test_driver.c           |    3 +-
 src/uml/uml_driver.c             |    3 +-
 src/vbox/vbox_tmpl.c             |    9 +-
 src/vmware/vmware_driver.c       |    3 +-
 tools/virsh-domain-monitor.c     |   14 ++--
 tools/virsh.c                    |    1 -
 16 files changed, 323 insertions(+), 401 deletions(-)
 delete mode 100644 src/conf/virdomainlist.c
 delete mode 100644 src/conf/virdomainlist.h

diff --git a/src/Makefile.am b/src/Makefile.am
index d4c198e..251771e 100644
--- a/src/Makefile.am
+++ b/src/Makefile.am
@@ -123,16 +123,17 @@ EXTRA_DIST += util/threads-pthread.c util/threads-win32.c
 
 # Internal generic driver infrastructure
 NODE_INFO_SOURCES = nodeinfo.h nodeinfo.c
-DRIVER_SOURCES =						\
-		driver.c driver.h				\
-		internal.h					\
-		datatypes.c datatypes.h				\
-		fdstream.c fdstream.h                 \
-		$(NODE_INFO_SOURCES)				\
-		libvirt.c libvirt_internal.h			\
-		locking/lock_manager.c locking/lock_manager.h   \
-		locking/lock_driver.h 				\
-		locking/lock_driver_nop.h locking/lock_driver_nop.c \
+DATATYPES_SOURCES = datatypes.h datatypes.c
+DRIVER_SOURCES =							\
+		driver.c driver.h					\
+		internal.h						\
+		$(DATATYPES_SOURCES)					\
+		fdstream.c fdstream.h					\
+		$(NODE_INFO_SOURCES)					\
+		libvirt.c libvirt_internal.h				\
+		locking/lock_manager.c locking/lock_manager.h		\
+		locking/lock_driver.h					\
+		locking/lock_driver_nop.h locking/lock_driver_nop.c	\
 		locking/domain_lock.h locking/domain_lock.c
 
 LOCK_DRIVER_SANLOCK_SOURCES = \
@@ -195,10 +196,6 @@ CPU_CONF_SOURCES =						\
 CONSOLE_CONF_SOURCES =						\
 		conf/virconsole.c conf/virconsole.h
 
-# Domain listing helpers
-DOMAIN_LIST_SOURCES =						\
-		conf/virdomainlist.c conf/virdomainlist.h
-
 CONF_SOURCES =							\
 		$(NETDEV_CONF_SOURCES)				\
 		$(DOMAIN_CONF_SOURCES)				\
@@ -211,8 +208,7 @@ CONF_SOURCES =							\
 		$(INTERFACE_CONF_SOURCES)			\
 		$(SECRET_CONF_SOURCES)				\
 		$(CPU_CONF_SOURCES)				\
-		$(CONSOLE_CONF_SOURCES)				\
-		$(DOMAIN_LIST_SOURCES)
+		$(CONSOLE_CONF_SOURCES)
 
 # The remote RPC driver, covering domains, storage, networks, etc
 REMOTE_DRIVER_GENERATED = \
@@ -437,29 +433,29 @@ VBOX_DRIVER_EXTRA_DIST =					\
 		vbox/vbox_MSCOMGlue.c vbox/vbox_MSCOMGlue.h	\
 		vbox/vbox_XPCOMCGlue.c vbox/vbox_XPCOMCGlue.h
 
-QEMU_DRIVER_SOURCES =						\
-		qemu/qemu_agent.c qemu/qemu_agent.h             \
-		qemu/qemu_capabilities.c qemu/qemu_capabilities.h\
-		qemu/qemu_command.c qemu/qemu_command.h		\
-		qemu/qemu_domain.c qemu/qemu_domain.h		\
-		qemu/qemu_cgroup.c qemu/qemu_cgroup.h		\
-		qemu/qemu_hostdev.c qemu/qemu_hostdev.h		\
-		qemu/qemu_hotplug.c qemu/qemu_hotplug.h		\
-		qemu/qemu_conf.c qemu/qemu_conf.h		\
-		qemu/qemu_process.c qemu/qemu_process.h		\
-		qemu/qemu_migration.c qemu/qemu_migration.h	\
-		qemu/qemu_monitor.c qemu/qemu_monitor.h		\
-		qemu/qemu_monitor_text.c			\
-		qemu/qemu_monitor_text.h			\
-		qemu/qemu_monitor_json.c			\
-		qemu/qemu_monitor_json.h			\
-		qemu/qemu_driver.c qemu/qemu_driver.h		\
-		qemu/qemu_bridge_filter.c			\
+QEMU_DRIVER_SOURCES =							\
+		qemu/qemu_agent.c qemu/qemu_agent.h			\
+		qemu/qemu_capabilities.c qemu/qemu_capabilities.h	\
+		qemu/qemu_command.c qemu/qemu_command.h			\
+		qemu/qemu_domain.c qemu/qemu_domain.h			\
+		qemu/qemu_cgroup.c qemu/qemu_cgroup.h			\
+		qemu/qemu_hostdev.c qemu/qemu_hostdev.h			\
+		qemu/qemu_hotplug.c qemu/qemu_hotplug.h			\
+		qemu/qemu_conf.c qemu/qemu_conf.h			\
+		qemu/qemu_process.c qemu/qemu_process.h			\
+		qemu/qemu_migration.c qemu/qemu_migration.h		\
+		qemu/qemu_monitor.c qemu/qemu_monitor.h			\
+		qemu/qemu_monitor_text.c				\
+		qemu/qemu_monitor_text.h				\
+		qemu/qemu_monitor_json.c				\
+		qemu/qemu_monitor_json.h				\
+		qemu/qemu_driver.c qemu/qemu_driver.h			\
+		qemu/qemu_bridge_filter.c				\
 		qemu/qemu_bridge_filter.h
 
-XENAPI_DRIVER_SOURCES =								\
+XENAPI_DRIVER_SOURCES =						\
 		xenapi/xenapi_driver.c xenapi/xenapi_driver.h	\
-		xenapi/xenapi_driver_private.h					\
+		xenapi/xenapi_driver_private.h			\
 		xenapi/xenapi_utils.c xenapi/xenapi_utils.h
 
 LIBXL_DRIVER_SOURCES =						\
@@ -470,18 +466,18 @@ UML_DRIVER_SOURCES =						\
 		uml/uml_conf.c uml/uml_conf.h			\
 		uml/uml_driver.c uml/uml_driver.h
 
-ESX_DRIVER_SOURCES =						\
-		esx/esx_private.h						\
-		esx/esx_driver.c esx/esx_driver.h		\
-		esx/esx_interface_driver.c esx/esx_interface_driver.h		\
-		esx/esx_network_driver.c esx/esx_network_driver.h		\
-		esx/esx_storage_driver.c esx/esx_storage_driver.h		\
-		esx/esx_device_monitor.c esx/esx_device_monitor.h		\
+ESX_DRIVER_SOURCES =							\
+		esx/esx_private.h					\
+		esx/esx_driver.c esx/esx_driver.h			\
+		esx/esx_interface_driver.c esx/esx_interface_driver.h	\
+		esx/esx_network_driver.c esx/esx_network_driver.h	\
+		esx/esx_storage_driver.c esx/esx_storage_driver.h	\
+		esx/esx_device_monitor.c esx/esx_device_monitor.h	\
 		esx/esx_secret_driver.c esx/esx_secret_driver.h		\
-		esx/esx_nwfilter_driver.c esx/esx_nwfilter_driver.h		\
-		esx/esx_util.c esx/esx_util.h			\
-		esx/esx_vi.c esx/esx_vi.h			\
-		esx/esx_vi_methods.c esx/esx_vi_methods.h	\
+		esx/esx_nwfilter_driver.c esx/esx_nwfilter_driver.h	\
+		esx/esx_util.c esx/esx_util.h				\
+		esx/esx_vi.c esx/esx_vi.h				\
+		esx/esx_vi_methods.c esx/esx_vi_methods.h		\
 		esx/esx_vi_types.c esx/esx_vi_types.h
 
 ESX_DRIVER_GENERATED =							\
@@ -497,13 +493,13 @@ ESX_DRIVER_GENERATED =							\
 		esx/esx_vi.generated.c					\
 		esx/esx_vi.generated.h
 
-ESX_DRIVER_EXTRA_DIST =						\
+ESX_DRIVER_EXTRA_DIST =							\
 		esx/README						\
 		esx/esx_vi_generator.input				\
 		esx/esx_vi_generator.py					\
 		$(ESX_DRIVER_GENERATED)
 
-HYPERV_DRIVER_SOURCES =								\
+HYPERV_DRIVER_SOURCES =									\
 		hyperv/hyperv_private.h							\
 		hyperv/hyperv_driver.c hyperv/hyperv_driver.h				\
 		hyperv/hyperv_interface_driver.c hyperv/hyperv_interface_driver.h	\
@@ -546,15 +542,15 @@ SECRET_DRIVER_SOURCES =						\
 		secret/secret_driver.h secret/secret_driver.c
 
 # Storage backend specific impls
-STORAGE_DRIVER_SOURCES =					\
-		storage/storage_driver.h storage/storage_driver.c		\
+STORAGE_DRIVER_SOURCES =						\
+		storage/storage_driver.h storage/storage_driver.c	\
 		storage/storage_backend.h storage/storage_backend.c
 
 STORAGE_DRIVER_FS_SOURCES =					\
 		storage/storage_backend_fs.h storage/storage_backend_fs.c
 
 STORAGE_DRIVER_LVM_SOURCES =					\
-		storage/storage_backend_logical.h			\
+		storage/storage_backend_logical.h		\
 		storage/storage_backend_logical.c
 
 STORAGE_DRIVER_ISCSI_SOURCES =					\
@@ -582,7 +578,7 @@ UTIL_IO_HELPER_SOURCES =					\
 		util/iohelper.c
 
 # Network filters
-NWFILTER_DRIVER_SOURCES =					\
+NWFILTER_DRIVER_SOURCES =						\
 		nwfilter/nwfilter_driver.h nwfilter/nwfilter_driver.c	\
 		nwfilter/nwfilter_gentech_driver.c			\
 		nwfilter/nwfilter_gentech_driver.h			\
@@ -595,11 +591,11 @@ NWFILTER_DRIVER_SOURCES =					\
 
 
 # Security framework and drivers for various models
-SECURITY_DRIVER_SOURCES =					\
-		security/security_driver.h security/security_driver.c \
-		security/security_nop.h security/security_nop.c \
-		security/security_stack.h security/security_stack.c \
-		security/security_dac.h security/security_dac.c \
+SECURITY_DRIVER_SOURCES =						\
+		security/security_driver.h security/security_driver.c	\
+		security/security_nop.h security/security_nop.c		\
+		security/security_stack.h security/security_stack.c	\
+		security/security_dac.h security/security_dac.c		\
 		security/security_manager.h security/security_manager.c
 
 SECURITY_DRIVER_SELINUX_SOURCES =				\
@@ -610,8 +606,8 @@ SECURITY_DRIVER_APPARMOR_SOURCES =				\
 
 
 NODE_DEVICE_DRIVER_SOURCES =					\
-		node_device/node_device_driver.c \
-		node_device/node_device_driver.h \
+		node_device/node_device_driver.c		\
+		node_device/node_device_driver.h		\
 		node_device/node_device_linux_sysfs.c
 
 NODE_DEVICE_DRIVER_HAL_SOURCES =				\
@@ -1004,8 +1000,6 @@ endif
 EXTRA_DIST += network/default.xml
 
 
-
-
 if WITH_NETCF
 if WITH_DRIVER_MODULES
 mod_LTLIBRARIES += libvirt_driver_interface.la
@@ -1189,12 +1183,12 @@ EXTRA_DIST +=							\
 		$(PHYP_DRIVER_SOURCES)				\
 		$(VBOX_DRIVER_SOURCES)				\
 		$(XENAPI_DRIVER_SOURCES)			\
-		$(LIBXL_DRIVER_SOURCES)			\
+		$(LIBXL_DRIVER_SOURCES)				\
 		$(ESX_DRIVER_SOURCES)				\
 		$(ESX_DRIVER_EXTRA_DIST)			\
 		$(HYPERV_DRIVER_SOURCES)			\
 		$(HYPERV_DRIVER_EXTRA_DIST)			\
-		$(PARALLELS_DRIVER_SOURCES)				\
+		$(PARALLELS_DRIVER_SOURCES)			\
 		$(NETWORK_DRIVER_SOURCES)			\
 		$(INTERFACE_DRIVER_SOURCES)			\
 		$(STORAGE_DRIVER_SOURCES)			\
@@ -1599,7 +1593,8 @@ libexec_PROGRAMS += libvirt_lxc
 
 libvirt_lxc_SOURCES =						\
 		$(LXC_CONTROLLER_SOURCES)			\
-		$(NODE_INFO_SOURCES)
+		$(NODE_INFO_SOURCES)				\
+		$(DATATYPES_SOURCES)
 libvirt_lxc_LDFLAGS = $(WARN_CFLAGS) $(AM_LDFLAGS)
 libvirt_lxc_LDADD =			\
 		$(NUMACTL_LIBS) \
diff --git a/src/conf/domain_conf.c b/src/conf/domain_conf.c
index 58603a3..e107da8 100644
--- a/src/conf/domain_conf.c
+++ b/src/conf/domain_conf.c
@@ -51,7 +51,6 @@
 #include "secret_conf.h"
 #include "netdev_vport_profile_conf.h"
 #include "netdev_bandwidth_conf.h"
-#include "virdomainlist.h"
 
 #define VIR_FROM_THIS VIR_FROM_DOMAIN
 
@@ -15402,3 +15401,191 @@ cleanup:
     VIR_FREE(xmlStr);
     return ret;
 }
+
+struct virDomainListData {
+    virConnectPtr conn;
+    virDomainPtr *domains;
+    unsigned int flags;
+    int ndomains;
+    bool error;
+};
+
+#define MATCH(FLAG) (data->flags & (FLAG))
+static void
+virDomainListPopulate(void *payload,
+                      const void *name ATTRIBUTE_UNUSED,
+                      void *opaque)
+{
+    struct virDomainListData *data = opaque;
+    virDomainObjPtr vm = payload;
+    virDomainPtr dom;
+
+    if (data->error)
+        return;
+
+    virDomainObjLock(vm);
+    /* check if the domain matches the filter */
+
+    /* filter by active state */
+    if (MATCH(VIR_CONNECT_LIST_DOMAINS_FILTERS_ACTIVE) &&
+        !((MATCH(VIR_CONNECT_LIST_DOMAINS_ACTIVE) &&
+           virDomainObjIsActive(vm)) ||
+          (MATCH(VIR_CONNECT_LIST_DOMAINS_INACTIVE) &&
+           !virDomainObjIsActive(vm))))
+        goto cleanup;
+
+    /* filter by persistence */
+    if (MATCH(VIR_CONNECT_LIST_DOMAINS_FILTERS_PERSISTENT) &&
+        !((MATCH(VIR_CONNECT_LIST_DOMAINS_PERSISTENT) &&
+           vm->persistent) ||
+          (MATCH(VIR_CONNECT_LIST_DOMAINS_TRANSIENT) &&
+           !vm->persistent)))
+        goto cleanup;
+
+    /* filter by domain state */
+    if (MATCH(VIR_CONNECT_LIST_DOMAINS_FILTERS_STATE)) {
+        int st = virDomainObjGetState(vm, NULL);
+        if (!((MATCH(VIR_CONNECT_LIST_DOMAINS_RUNNING) &&
+               st == VIR_DOMAIN_RUNNING) ||
+              (MATCH(VIR_CONNECT_LIST_DOMAINS_PAUSED) &&
+               st == VIR_DOMAIN_PAUSED) ||
+              (MATCH(VIR_CONNECT_LIST_DOMAINS_SHUTOFF) &&
+               st == VIR_DOMAIN_SHUTOFF) ||
+              (MATCH(VIR_CONNECT_LIST_DOMAINS_OTHER) &&
+               (st != VIR_DOMAIN_RUNNING &&
+                st != VIR_DOMAIN_PAUSED &&
+                st != VIR_DOMAIN_SHUTOFF))))
+            goto cleanup;
+    }
+
+    /* filter by existence of managed save state */
+    if (MATCH(VIR_CONNECT_LIST_DOMAINS_FILTERS_MANAGEDSAVE) &&
+        !((MATCH(VIR_CONNECT_LIST_DOMAINS_MANAGEDSAVE) &&
+           vm->hasManagedSave) ||
+          (MATCH(VIR_CONNECT_LIST_DOMAINS_NO_MANAGEDSAVE) &&
+           !vm->hasManagedSave)))
+            goto cleanup;
+
+    /* filter by autostart option */
+    if (MATCH(VIR_CONNECT_LIST_DOMAINS_FILTERS_AUTOSTART) &&
+        !((MATCH(VIR_CONNECT_LIST_DOMAINS_AUTOSTART) && vm->autostart) ||
+          (MATCH(VIR_CONNECT_LIST_DOMAINS_NO_AUTOSTART) && !vm->autostart)))
+        goto cleanup;
+
+    /* filter by snapshot existence */
+    if (MATCH(VIR_CONNECT_LIST_DOMAINS_FILTERS_SNAPSHOT)) {
+        int nsnap = virDomainSnapshotObjListNum(&vm->snapshots, NULL, 0);
+        if (!((MATCH(VIR_CONNECT_LIST_DOMAINS_HAS_SNAPSHOT) && nsnap > 0) ||
+              (MATCH(VIR_CONNECT_LIST_DOMAINS_NO_SNAPSHOT) && nsnap <= 0)))
+            goto cleanup;
+    }
+
+    /* just count the machines */
+    if (!data->domains) {
+        data->ndomains++;
+        return;
+    }
+
+    if (!(dom = virGetDomain(data->conn, vm->def->name, vm->def->uuid))) {
+        data->error = true;
+        goto cleanup;
+    }
+
+    dom->id = vm->def->id;
+
+    data->domains[data->ndomains++] = dom;
+
+cleanup:
+    virDomainObjUnlock(vm);
+    return;
+}
+#undef MATCH
+
+int
+virDomainList(virConnectPtr conn,
+              virHashTablePtr domobjs,
+              virDomainPtr **domains,
+              unsigned int flags)
+{
+    int ret = -1;
+    int i;
+
+    struct virDomainListData data = { conn, NULL, flags, 0, false };
+
+    if (domains) {
+        if (VIR_ALLOC_N(data.domains, virHashSize(domobjs) + 1) < 0) {
+            virReportOOMError();
+            goto cleanup;
+        }
+    }
+
+    virHashForEach(domobjs, virDomainListPopulate, &data);
+
+    if (data.error)
+        goto cleanup;
+
+    if (data.domains) {
+        /* trim the array to the final size */
+        ignore_value(VIR_REALLOC_N(data.domains, data.ndomains + 1));
+        *domains = data.domains;
+        data.domains = NULL;
+    }
+
+    ret = data.ndomains;
+
+cleanup:
+    if (data.domains) {
+        int count = virHashSize(domobjs);
+        for (i = 0; i < count; i++) {
+            if (data.domains[i])
+                virUnrefDomain(data.domains[i]);
+        }
+    }
+
+    VIR_FREE(data.domains);
+    return ret;
+}
+
+int
+virDomainListSnapshots(virDomainSnapshotObjListPtr snapshots,
+                       virDomainSnapshotObjPtr from,
+                       virDomainPtr dom,
+                       virDomainSnapshotPtr **snaps,
+                       unsigned int flags)
+{
+    int count = virDomainSnapshotObjListNum(snapshots, from, flags);
+    virDomainSnapshotPtr *list;
+    char **names;
+    int ret = -1;
+    int i;
+
+    if (!snaps)
+        return count;
+    if (VIR_ALLOC_N(names, count) < 0 ||
+        VIR_ALLOC_N(list, count + 1) < 0) {
+        virReportOOMError();
+        goto cleanup;
+    }
+
+    if (virDomainSnapshotObjListGetNames(snapshots, from, names, count,
+                                         flags) < 0)
+        goto cleanup;
+    for (i = 0; i < count; i++)
+        if ((list[i] = virGetDomainSnapshot(dom, names[i])) == NULL)
+            goto cleanup;
+
+    ret = count;
+    *snaps = list;
+
+cleanup:
+    for (i = 0; i < count; i++)
+        VIR_FREE(names[i]);
+    VIR_FREE(names);
+    if (ret < 0 && list) {
+        for (i = 0; i < count; i++)
+            if (list[i])
+                virUnrefDomainSnapshot(list[i]);
+        VIR_FREE(list);
+    }
+    return ret;
+}
diff --git a/src/conf/domain_conf.h b/src/conf/domain_conf.h
index f4c43c6..3fc77d8 100644
--- a/src/conf/domain_conf.h
+++ b/src/conf/domain_conf.h
@@ -2256,4 +2256,60 @@ VIR_ENUM_DECL(virDomainStartupPolicy)
 
 virDomainNetDefPtr virDomainNetFind(virDomainDefPtr def,
                                     const char *device);
+
+# define VIR_CONNECT_LIST_DOMAINS_FILTERS_ACTIVE   \
+                (VIR_CONNECT_LIST_DOMAINS_ACTIVE | \
+                 VIR_CONNECT_LIST_DOMAINS_INACTIVE)
+
+# define VIR_CONNECT_LIST_DOMAINS_FILTERS_PERSISTENT   \
+                (VIR_CONNECT_LIST_DOMAINS_PERSISTENT | \
+                 VIR_CONNECT_LIST_DOMAINS_TRANSIENT)
+
+# define VIR_CONNECT_LIST_DOMAINS_FILTERS_STATE     \
+                (VIR_CONNECT_LIST_DOMAINS_RUNNING | \
+                 VIR_CONNECT_LIST_DOMAINS_PAUSED  | \
+                 VIR_CONNECT_LIST_DOMAINS_SHUTOFF | \
+                 VIR_CONNECT_LIST_DOMAINS_OTHER)
+
+# define VIR_CONNECT_LIST_DOMAINS_FILTERS_MANAGEDSAVE   \
+                (VIR_CONNECT_LIST_DOMAINS_MANAGEDSAVE | \
+                 VIR_CONNECT_LIST_DOMAINS_NO_MANAGEDSAVE)
+
+# define VIR_CONNECT_LIST_DOMAINS_FILTERS_AUTOSTART   \
+                (VIR_CONNECT_LIST_DOMAINS_AUTOSTART | \
+                 VIR_CONNECT_LIST_DOMAINS_NO_AUTOSTART)
+
+# define VIR_CONNECT_LIST_DOMAINS_FILTERS_SNAPSHOT       \
+                (VIR_CONNECT_LIST_DOMAINS_HAS_SNAPSHOT | \
+                 VIR_CONNECT_LIST_DOMAINS_NO_SNAPSHOT)
+
+# define VIR_CONNECT_LIST_DOMAINS_FILTERS_ALL                   \
+                (VIR_CONNECT_LIST_DOMAINS_FILTERS_ACTIVE      | \
+                 VIR_CONNECT_LIST_DOMAINS_FILTERS_PERSISTENT  | \
+                 VIR_CONNECT_LIST_DOMAINS_FILTERS_STATE       | \
+                 VIR_CONNECT_LIST_DOMAINS_FILTERS_MANAGEDSAVE | \
+                 VIR_CONNECT_LIST_DOMAINS_FILTERS_AUTOSTART   | \
+                 VIR_CONNECT_LIST_DOMAINS_FILTERS_SNAPSHOT)
+
+# define VIR_DOMAIN_SNAPSHOT_FILTERS_METADATA           \
+               (VIR_DOMAIN_SNAPSHOT_LIST_METADATA     | \
+                VIR_DOMAIN_SNAPSHOT_LIST_NO_METADATA)
+
+# define VIR_DOMAIN_SNAPSHOT_FILTERS_LEAVES             \
+               (VIR_DOMAIN_SNAPSHOT_LIST_LEAVES       | \
+                VIR_DOMAIN_SNAPSHOT_LIST_NO_LEAVES)
+
+# define VIR_DOMAIN_SNAPSHOT_FILTERS_ALL                \
+               (VIR_DOMAIN_SNAPSHOT_FILTERS_METADATA  | \
+                VIR_DOMAIN_SNAPSHOT_FILTERS_LEAVES)
+
+int virDomainList(virConnectPtr conn, virHashTablePtr domobjs,
+                  virDomainPtr **domains, unsigned int flags);
+
+int virDomainListSnapshots(virDomainSnapshotObjListPtr snapshots,
+                           virDomainSnapshotObjPtr from,
+                           virDomainPtr dom,
+                           virDomainSnapshotPtr **snaps,
+                           unsigned int flags);
+
 #endif /* __DOMAIN_CONF_H */
diff --git a/src/conf/virdomainlist.c b/src/conf/virdomainlist.c
deleted file mode 100644
index c882bc2..0000000
--- a/src/conf/virdomainlist.c
+++ /dev/null
@@ -1,222 +0,0 @@
-/**
- * virdomainlist.c: Helpers for listing and filtering domains.
- *
- * Copyright (C) 2012 Red Hat, Inc.
- *
- * This library is free software; you can redistribute it and/or
- * modify it under the terms of the GNU Lesser General Public
- * License as published by the Free Software Foundation; either
- * version 2.1 of the License, or (at your option) any later version.
- *
- * This library is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
- * Lesser General Public License for more details.
- *
- * You should have received a copy of the GNU Lesser General Public
- * License along with this library;  If not, see
- * <http://www.gnu.org/licenses/>.
- *
- * Author: Peter Krempa <pkrempa at redhat.com>
- */
-
-#include <config.h>
-
-#include "virdomainlist.h"
-
-#include "internal.h"
-#include "virhash.h"
-#include "domain_conf.h"
-#include "memory.h"
-#include "datatypes.h"
-#include "virterror_internal.h"
-
-#define VIR_FROM_THIS VIR_FROM_DOMAIN
-
-struct virDomainListData {
-    virConnectPtr conn;
-    virDomainPtr *domains;
-    unsigned int flags;
-    int ndomains;
-    bool error;
-};
-
-#define MATCH(FLAG) (data->flags & (FLAG))
-static void
-virDomainListPopulate(void *payload,
-                      const void *name ATTRIBUTE_UNUSED,
-                      void *opaque)
-{
-    struct virDomainListData *data = opaque;
-    virDomainObjPtr vm = payload;
-    virDomainPtr dom;
-
-    if (data->error)
-        return;
-
-    virDomainObjLock(vm);
-    /* check if the domain matches the filter */
-
-    /* filter by active state */
-    if (MATCH(VIR_CONNECT_LIST_FILTERS_ACTIVE) &&
-        !((MATCH(VIR_CONNECT_LIST_DOMAINS_ACTIVE) &&
-           virDomainObjIsActive(vm)) ||
-          (MATCH(VIR_CONNECT_LIST_DOMAINS_INACTIVE) &&
-           !virDomainObjIsActive(vm))))
-        goto cleanup;
-
-    /* filter by persistence */
-    if (MATCH(VIR_CONNECT_LIST_FILTERS_PERSISTENT) &&
-        !((MATCH(VIR_CONNECT_LIST_DOMAINS_PERSISTENT) &&
-           vm->persistent) ||
-          (MATCH(VIR_CONNECT_LIST_DOMAINS_TRANSIENT) &&
-           !vm->persistent)))
-        goto cleanup;
-
-    /* filter by domain state */
-    if (MATCH(VIR_CONNECT_LIST_FILTERS_STATE)) {
-        int st = virDomainObjGetState(vm, NULL);
-        if (!((MATCH(VIR_CONNECT_LIST_DOMAINS_RUNNING) &&
-               st == VIR_DOMAIN_RUNNING) ||
-              (MATCH(VIR_CONNECT_LIST_DOMAINS_PAUSED) &&
-               st == VIR_DOMAIN_PAUSED) ||
-              (MATCH(VIR_CONNECT_LIST_DOMAINS_SHUTOFF) &&
-               st == VIR_DOMAIN_SHUTOFF) ||
-              (MATCH(VIR_CONNECT_LIST_DOMAINS_OTHER) &&
-               (st != VIR_DOMAIN_RUNNING &&
-                st != VIR_DOMAIN_PAUSED &&
-                st != VIR_DOMAIN_SHUTOFF))))
-            goto cleanup;
-    }
-
-    /* filter by existence of managed save state */
-    if (MATCH(VIR_CONNECT_LIST_FILTERS_MANAGEDSAVE) &&
-        !((MATCH(VIR_CONNECT_LIST_DOMAINS_MANAGEDSAVE) &&
-           vm->hasManagedSave) ||
-          (MATCH(VIR_CONNECT_LIST_DOMAINS_NO_MANAGEDSAVE) &&
-           !vm->hasManagedSave)))
-            goto cleanup;
-
-    /* filter by autostart option */
-    if (MATCH(VIR_CONNECT_LIST_FILTERS_AUTOSTART) &&
-        !((MATCH(VIR_CONNECT_LIST_DOMAINS_AUTOSTART) && vm->autostart) ||
-          (MATCH(VIR_CONNECT_LIST_DOMAINS_NO_AUTOSTART) && !vm->autostart)))
-        goto cleanup;
-
-    /* filter by snapshot existence */
-    if (MATCH(VIR_CONNECT_LIST_FILTERS_SNAPSHOT)) {
-        int nsnap = virDomainSnapshotObjListNum(&vm->snapshots, NULL, 0);
-        if (!((MATCH(VIR_CONNECT_LIST_DOMAINS_HAS_SNAPSHOT) && nsnap > 0) ||
-              (MATCH(VIR_CONNECT_LIST_DOMAINS_NO_SNAPSHOT) && nsnap <= 0)))
-            goto cleanup;
-    }
-
-    /* just count the machines */
-    if (!data->domains) {
-        data->ndomains++;
-        return;
-    }
-
-    if (!(dom = virGetDomain(data->conn, vm->def->name, vm->def->uuid))) {
-        data->error = true;
-        goto cleanup;
-    }
-
-    dom->id = vm->def->id;
-
-    data->domains[data->ndomains++] = dom;
-
-cleanup:
-    virDomainObjUnlock(vm);
-    return;
-}
-#undef MATCH
-
-int
-virDomainList(virConnectPtr conn,
-              virHashTablePtr domobjs,
-              virDomainPtr **domains,
-              unsigned int flags)
-{
-    int ret = -1;
-    int i;
-
-    struct virDomainListData data = { conn, NULL, flags, 0, false };
-
-    if (domains) {
-        if (VIR_ALLOC_N(data.domains, virHashSize(domobjs) + 1) < 0) {
-            virReportOOMError();
-            goto cleanup;
-        }
-    }
-
-    virHashForEach(domobjs, virDomainListPopulate, &data);
-
-    if (data.error)
-        goto cleanup;
-
-    if (data.domains) {
-        /* trim the array to the final size */
-        ignore_value(VIR_REALLOC_N(data.domains, data.ndomains + 1));
-        *domains = data.domains;
-        data.domains = NULL;
-    }
-
-    ret = data.ndomains;
-
-cleanup:
-    if (data.domains) {
-        int count = virHashSize(domobjs);
-        for (i = 0; i < count; i++) {
-            if (data.domains[i])
-                virDomainFree(data.domains[i]);
-        }
-    }
-
-    VIR_FREE(data.domains);
-    return ret;
-}
-
-int
-virDomainListSnapshots(virDomainSnapshotObjListPtr snapshots,
-                       virDomainSnapshotObjPtr from,
-                       virDomainPtr dom,
-                       virDomainSnapshotPtr **snaps,
-                       unsigned int flags)
-{
-    int count = virDomainSnapshotObjListNum(snapshots, from, flags);
-    virDomainSnapshotPtr *list;
-    char **names;
-    int ret = -1;
-    int i;
-
-    if (!snaps)
-        return count;
-    if (VIR_ALLOC_N(names, count) < 0 ||
-        VIR_ALLOC_N(list, count + 1) < 0) {
-        virReportOOMError();
-        goto cleanup;
-    }
-
-    if (virDomainSnapshotObjListGetNames(snapshots, from, names, count,
-                                         flags) < 0)
-        goto cleanup;
-    for (i = 0; i < count; i++)
-        if ((list[i] = virGetDomainSnapshot(dom, names[i])) == NULL)
-            goto cleanup;
-
-    ret = count;
-    *snaps = list;
-
-cleanup:
-    for (i = 0; i < count; i++)
-        VIR_FREE(names[i]);
-    VIR_FREE(names);
-    if (ret < 0 && list) {
-        for (i = 0; i < count; i++)
-            if (list[i])
-                virDomainSnapshotFree(list[i]);
-        VIR_FREE(list);
-    }
-    return ret;
-}
diff --git a/src/conf/virdomainlist.h b/src/conf/virdomainlist.h
deleted file mode 100644
index 322e5b8..0000000
--- a/src/conf/virdomainlist.h
+++ /dev/null
@@ -1,84 +0,0 @@
-/**
- * virdomainlist.h: Helpers for listing and filtering domains.
- *
- * Copyright (C) 2012 Red Hat, Inc.
- *
- * This library is free software; you can redistribute it and/or
- * modify it under the terms of the GNU Lesser General Public
- * License as published by the Free Software Foundation; either
- * version 2.1 of the License, or (at your option) any later version.
- *
- * This library is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
- * Lesser General Public License for more details.
- *
- * You should have received a copy of the GNU Lesser General Public
- * License along with this library;  If not, see
- * <http://www.gnu.org/licenses/>.
- *
- * Author: Peter Krempa <pkrempa at redhat.com>
- */
-#ifndef __VIR_DOMAIN_LIST_H__
-# define __VIR_DOMAIN_LIST_H__
-
-# include "internal.h"
-# include "virhash.h"
-# include "domain_conf.h"
-
-# define VIR_CONNECT_LIST_FILTERS_ACTIVE           \
-                (VIR_CONNECT_LIST_DOMAINS_ACTIVE | \
-                 VIR_CONNECT_LIST_DOMAINS_INACTIVE)
-
-# define VIR_CONNECT_LIST_FILTERS_PERSISTENT           \
-                (VIR_CONNECT_LIST_DOMAINS_PERSISTENT | \
-                 VIR_CONNECT_LIST_DOMAINS_TRANSIENT)
-
-# define VIR_CONNECT_LIST_FILTERS_STATE             \
-                (VIR_CONNECT_LIST_DOMAINS_RUNNING | \
-                 VIR_CONNECT_LIST_DOMAINS_PAUSED  | \
-                 VIR_CONNECT_LIST_DOMAINS_SHUTOFF | \
-                 VIR_CONNECT_LIST_DOMAINS_OTHER)
-
-# define VIR_CONNECT_LIST_FILTERS_MANAGEDSAVE           \
-                (VIR_CONNECT_LIST_DOMAINS_MANAGEDSAVE | \
-                 VIR_CONNECT_LIST_DOMAINS_NO_MANAGEDSAVE)
-
-# define VIR_CONNECT_LIST_FILTERS_AUTOSTART            \
-                (VIR_CONNECT_LIST_DOMAINS_AUTOSTART | \
-                 VIR_CONNECT_LIST_DOMAINS_NO_AUTOSTART)
-
-# define VIR_CONNECT_LIST_FILTERS_SNAPSHOT               \
-                (VIR_CONNECT_LIST_DOMAINS_HAS_SNAPSHOT | \
-                 VIR_CONNECT_LIST_DOMAINS_NO_SNAPSHOT)
-
-# define VIR_CONNECT_LIST_FILTERS_ALL                   \
-                (VIR_CONNECT_LIST_FILTERS_ACTIVE      | \
-                 VIR_CONNECT_LIST_FILTERS_PERSISTENT  | \
-                 VIR_CONNECT_LIST_FILTERS_STATE       | \
-                 VIR_CONNECT_LIST_FILTERS_MANAGEDSAVE | \
-                 VIR_CONNECT_LIST_FILTERS_AUTOSTART   | \
-                 VIR_CONNECT_LIST_FILTERS_SNAPSHOT)
-
-# define VIR_DOMAIN_SNAPSHOT_FILTERS_METADATA           \
-               (VIR_DOMAIN_SNAPSHOT_LIST_METADATA     | \
-                VIR_DOMAIN_SNAPSHOT_LIST_NO_METADATA)
-
-# define VIR_DOMAIN_SNAPSHOT_FILTERS_LEAVES             \
-               (VIR_DOMAIN_SNAPSHOT_LIST_LEAVES       | \
-                VIR_DOMAIN_SNAPSHOT_LIST_NO_LEAVES)
-
-# define VIR_DOMAIN_SNAPSHOT_FILTERS_ALL                \
-               (VIR_DOMAIN_SNAPSHOT_FILTERS_METADATA  | \
-                VIR_DOMAIN_SNAPSHOT_FILTERS_LEAVES)
-
-int virDomainList(virConnectPtr conn, virHashTablePtr domobjs,
-                  virDomainPtr **domains, unsigned int flags);
-
-int virDomainListSnapshots(virDomainSnapshotObjListPtr snapshots,
-                           virDomainSnapshotObjPtr from,
-                           virDomainPtr dom,
-                           virDomainSnapshotPtr **snaps,
-                           unsigned int flags);
-
-#endif /* __VIR_DOMAIN_LIST_H__ */
diff --git a/src/libxl/libxl_driver.c b/src/libxl/libxl_driver.c
index 873f973..c2d264b 100644
--- a/src/libxl/libxl_driver.c
+++ b/src/libxl/libxl_driver.c
@@ -45,7 +45,6 @@
 #include "xen_xm.h"
 #include "virtypedparam.h"
 #include "viruri.h"
-#include "virdomainlist.h"
 
 #define VIR_FROM_THIS VIR_FROM_LIBXL
 
@@ -3869,7 +3868,7 @@ libxlListAllDomains(virConnectPtr conn,
     libxlDriverPrivatePtr driver = conn->privateData;
     int ret = -1;
 
-    virCheckFlags(VIR_CONNECT_LIST_FILTERS_ALL, -1);
+    virCheckFlags(VIR_CONNECT_LIST_DOMAINS_FILTERS_ALL, -1);
 
     libxlDriverLock(driver);
     ret = virDomainList(conn, driver->domains.objs, domains, flags);
diff --git a/src/lxc/lxc_driver.c b/src/lxc/lxc_driver.c
index d118dd2..13a2759 100644
--- a/src/lxc/lxc_driver.c
+++ b/src/lxc/lxc_driver.c
@@ -63,7 +63,6 @@
 #include "virtime.h"
 #include "virtypedparam.h"
 #include "viruri.h"
-#include "virdomainlist.h"
 
 #define VIR_FROM_THIS VIR_FROM_LXC
 
@@ -2645,7 +2644,7 @@ lxcListAllDomains(virConnectPtr conn,
     virLXCDriverPtr driver = conn->privateData;
     int ret = -1;
 
-    virCheckFlags(VIR_CONNECT_LIST_FILTERS_ALL, -1);
+    virCheckFlags(VIR_CONNECT_LIST_DOMAINS_FILTERS_ALL, -1);
 
     lxcDriverLock(driver);
     ret = virDomainList(conn, driver->domains.objs, domains, flags);
diff --git a/src/openvz/openvz_driver.c b/src/openvz/openvz_driver.c
index 48b5219..8257ed5 100644
--- a/src/openvz/openvz_driver.c
+++ b/src/openvz/openvz_driver.c
@@ -60,7 +60,6 @@
 #include "command.h"
 #include "viruri.h"
 #include "stats_linux.h"
-#include "virdomainlist.h"
 
 #define VIR_FROM_THIS VIR_FROM_OPENVZ
 
@@ -2104,7 +2103,7 @@ openvzListAllDomains(virConnectPtr conn,
     struct openvz_driver *driver = conn->privateData;
     int ret = -1;
 
-    virCheckFlags(VIR_CONNECT_LIST_FILTERS_ALL, -1);
+    virCheckFlags(VIR_CONNECT_LIST_DOMAINS_FILTERS_ALL, -1);
 
     openvzDriverLock(driver);
     ret = virDomainList(conn, driver->domains.objs, domains, flags);
diff --git a/src/parallels/parallels_driver.c b/src/parallels/parallels_driver.c
index b57ac96..7d8869a 100644
--- a/src/parallels/parallels_driver.c
+++ b/src/parallels/parallels_driver.c
@@ -50,7 +50,6 @@
 #include "configmake.h"
 #include "storage_file.h"
 #include "nodeinfo.h"
-#include "virdomainlist.h"
 
 #include "parallels_driver.h"
 #include "parallels_utils.h"
@@ -810,7 +809,7 @@ parallelsListAllDomains(virConnectPtr conn,
     parallelsConnPtr privconn = conn->privateData;
     int ret = -1;
 
-    virCheckFlags(VIR_CONNECT_LIST_FILTERS_ALL, -1);
+    virCheckFlags(VIR_CONNECT_LIST_DOMAINS_FILTERS_ALL, -1);
     parallelsDriverLock(privconn);
     ret = virDomainList(conn, privconn->domains.objs, domains, flags);
     parallelsDriverUnlock(privconn);
diff --git a/src/qemu/qemu_driver.c b/src/qemu/qemu_driver.c
index 369e8ed..e53d801 100644
--- a/src/qemu/qemu_driver.c
+++ b/src/qemu/qemu_driver.c
@@ -92,7 +92,6 @@
 #include "virnodesuspend.h"
 #include "virtime.h"
 #include "virtypedparam.h"
-#include "virdomainlist.h"
 
 #define VIR_FROM_THIS VIR_FROM_QEMU
 
@@ -13195,7 +13194,7 @@ qemuListAllDomains(virConnectPtr conn,
     struct qemud_driver *driver = conn->privateData;
     int ret = -1;
 
-    virCheckFlags(VIR_CONNECT_LIST_FILTERS_ALL, -1);
+    virCheckFlags(VIR_CONNECT_LIST_DOMAINS_FILTERS_ALL, -1);
 
     qemuDriverLock(driver);
     ret = virDomainList(conn, driver->domains.objs, domains, flags);
diff --git a/src/test/test_driver.c b/src/test/test_driver.c
index 01e515a..a767e21 100644
--- a/src/test/test_driver.c
+++ b/src/test/test_driver.c
@@ -52,7 +52,6 @@
 #include "virfile.h"
 #include "virtypedparam.h"
 #include "virrandom.h"
-#include "virdomainlist.h"
 
 #define VIR_FROM_THIS VIR_FROM_TEST
 
@@ -5526,7 +5525,7 @@ static int testListAllDomains(virConnectPtr conn,
     testConnPtr privconn = conn->privateData;
     int ret;
 
-    virCheckFlags(VIR_CONNECT_LIST_FILTERS_ALL, -1);
+    virCheckFlags(VIR_CONNECT_LIST_DOMAINS_FILTERS_ALL, -1);
 
     testDriverLock(privconn);
     ret = virDomainList(conn, privconn->domains.objs, domains, flags);
diff --git a/src/uml/uml_driver.c b/src/uml/uml_driver.c
index a4a9258..c493bf7 100644
--- a/src/uml/uml_driver.c
+++ b/src/uml/uml_driver.c
@@ -64,7 +64,6 @@
 #include "virnetdevtap.h"
 #include "virnodesuspend.h"
 #include "viruri.h"
-#include "virdomainlist.h"
 
 #define VIR_FROM_THIS VIR_FROM_UML
 
@@ -2525,7 +2524,7 @@ static int umlListAllDomains(virConnectPtr conn,
     struct uml_driver *driver = conn->privateData;
     int ret = -1;
 
-    virCheckFlags(VIR_CONNECT_LIST_FILTERS_ALL, -1);
+    virCheckFlags(VIR_CONNECT_LIST_DOMAINS_FILTERS_ALL, -1);
 
     umlDriverLock(driver);
     ret = virDomainList(conn, driver->domains.objs, domains, flags);
diff --git a/src/vbox/vbox_tmpl.c b/src/vbox/vbox_tmpl.c
index b672b24..dd1e376 100644
--- a/src/vbox/vbox_tmpl.c
+++ b/src/vbox/vbox_tmpl.c
@@ -57,7 +57,6 @@
 #include "virfile.h"
 #include "fdstream.h"
 #include "viruri.h"
-#include "virdomainlist.h"
 
 /* This one changes from version to version. */
 #if VBOX_API_VERSION == 2002
@@ -9254,7 +9253,7 @@ vboxListAllDomains(virConnectPtr conn,
     bool active;
     PRUint32 snapshotCount;
 
-    virCheckFlags(VIR_CONNECT_LIST_FILTERS_ALL, -1);
+    virCheckFlags(VIR_CONNECT_LIST_DOMAINS_FILTERS_ALL, -1);
 
     /* filter out flag options that will produce 0 results in vbox driver:
      * - managed save: vbox guests don't have managed save images
@@ -9302,13 +9301,13 @@ vboxListAllDomains(virConnectPtr conn,
                     active = false;
 
                 /* filter by active state */
-                if (MATCH(VIR_CONNECT_LIST_FILTERS_ACTIVE) &&
+                if (MATCH(VIR_CONNECT_LIST_DOMAINS_FILTERS_ACTIVE) &&
                     !((MATCH(VIR_CONNECT_LIST_DOMAINS_ACTIVE) && active) ||
                       (MATCH(VIR_CONNECT_LIST_DOMAINS_INACTIVE) && !active)))
                     continue;
 
                 /* filter by snapshot existence */
-                if (MATCH(VIR_CONNECT_LIST_FILTERS_SNAPSHOT)) {
+                if (MATCH(VIR_CONNECT_LIST_DOMAINS_FILTERS_SNAPSHOT)) {
                     rc = machine->vtbl->GetSnapshotCount(machine, &snapshotCount);
                     if (NS_FAILED(rc)) {
                         virReportError(VIR_ERR_INTERNAL_ERROR, "%s",
@@ -9323,7 +9322,7 @@ vboxListAllDomains(virConnectPtr conn,
                 }
 
                 /* filter by machine state */
-                if (MATCH(VIR_CONNECT_LIST_FILTERS_STATE) &&
+                if (MATCH(VIR_CONNECT_LIST_DOMAINS_FILTERS_STATE) &&
                     !((MATCH(VIR_CONNECT_LIST_DOMAINS_RUNNING) &&
                        state == MachineState_Running) ||
                       (MATCH(VIR_CONNECT_LIST_DOMAINS_PAUSED) &&
diff --git a/src/vmware/vmware_driver.c b/src/vmware/vmware_driver.c
index 6c6347a..1607018 100644
--- a/src/vmware/vmware_driver.c
+++ b/src/vmware/vmware_driver.c
@@ -34,7 +34,6 @@
 #include "vmx.h"
 #include "vmware_conf.h"
 #include "vmware_driver.h"
-#include "virdomainlist.h"
 
 static const char *vmw_types[] = { "player", "ws" };
 
@@ -1098,7 +1097,7 @@ vmwareListAllDomains(virConnectPtr conn,
     struct vmware_driver *driver = conn->privateData;
     int ret = -1;
 
-    virCheckFlags(VIR_CONNECT_LIST_FILTERS_ALL, -1);
+    virCheckFlags(VIR_CONNECT_LIST_DOMAINS_FILTERS_ALL, -1);
 
     vmwareDriverLock(driver);
     vmwareDomainObjListUpdateAll(&driver->domains, driver);
diff --git a/tools/virsh-domain-monitor.c b/tools/virsh-domain-monitor.c
index 151a8d0..b57c390 100644
--- a/tools/virsh-domain-monitor.c
+++ b/tools/virsh-domain-monitor.c
@@ -1365,7 +1365,7 @@ fallback:
     vshResetLibvirtError();
 
     /* list active domains, if necessary */
-    if (!MATCH(VIR_CONNECT_LIST_FILTERS_ACTIVE) ||
+    if (!MATCH(VIR_CONNECT_LIST_DOMAINS_FILTERS_ACTIVE) ||
         MATCH(VIR_CONNECT_LIST_DOMAINS_ACTIVE)) {
         if ((nids = virConnectNumOfDomains(ctl->conn)) < 0) {
             vshError(ctl, "%s", _("Failed to list active domains"));
@@ -1382,7 +1382,7 @@ fallback:
         }
     }
 
-    if (!MATCH(VIR_CONNECT_LIST_FILTERS_ACTIVE) ||
+    if (!MATCH(VIR_CONNECT_LIST_DOMAINS_FILTERS_ACTIVE) ||
         MATCH(VIR_CONNECT_LIST_DOMAINS_INACTIVE)) {
         if ((nnames = virConnectNumOfDefinedDomains(ctl->conn)) < 0) {
             vshError(ctl, "%s", _("Failed to list inactive domains"));
@@ -1426,7 +1426,7 @@ filter:
         dom = list->domains[i];
 
         /* persistence filter */
-        if (MATCH(VIR_CONNECT_LIST_FILTERS_PERSISTENT)) {
+        if (MATCH(VIR_CONNECT_LIST_DOMAINS_FILTERS_PERSISTENT)) {
             if ((persistent = virDomainIsPersistent(dom)) < 0) {
                 vshError(ctl, "%s", _("Failed to get domain persistence info"));
                 goto cleanup;
@@ -1438,7 +1438,7 @@ filter:
         }
 
         /* domain state filter */
-        if (MATCH(VIR_CONNECT_LIST_FILTERS_STATE)) {
+        if (MATCH(VIR_CONNECT_LIST_DOMAINS_FILTERS_STATE)) {
             if (virDomainGetState(dom, &state, NULL, 0) < 0) {
                 vshError(ctl, "%s", _("Failed to get domain state"));
                 goto cleanup;
@@ -1458,7 +1458,7 @@ filter:
         }
 
         /* autostart filter */
-        if (MATCH(VIR_CONNECT_LIST_FILTERS_AUTOSTART)) {
+        if (MATCH(VIR_CONNECT_LIST_DOMAINS_FILTERS_AUTOSTART)) {
             if (virDomainGetAutostart(dom, &autostart) < 0) {
                 vshError(ctl, "%s", _("Failed to get domain autostart state"));
                 goto cleanup;
@@ -1470,7 +1470,7 @@ filter:
         }
 
         /* managed save filter */
-        if (MATCH(VIR_CONNECT_LIST_FILTERS_MANAGEDSAVE)) {
+        if (MATCH(VIR_CONNECT_LIST_DOMAINS_FILTERS_MANAGEDSAVE)) {
             if ((mansave = virDomainHasManagedSaveImage(dom, 0)) < 0) {
                 vshError(ctl, "%s",
                          _("Failed to check for managed save image"));
@@ -1483,7 +1483,7 @@ filter:
         }
 
         /* snapshot filter */
-        if (MATCH(VIR_CONNECT_LIST_FILTERS_SNAPSHOT)) {
+        if (MATCH(VIR_CONNECT_LIST_DOMAINS_FILTERS_SNAPSHOT)) {
             if ((nsnap = virDomainSnapshotNum(dom, 0)) < 0) {
                 vshError(ctl, "%s", _("Failed to get snapshot count"));
                 goto cleanup;
diff --git a/tools/virsh.c b/tools/virsh.c
index b95a008..c57b229 100644
--- a/tools/virsh.c
+++ b/tools/virsh.c
@@ -76,7 +76,6 @@
 #include "util/bitmap.h"
 #include "conf/domain_conf.h"
 #include "virtypedparam.h"
-#include "conf/virdomainlist.h"
 
 static char *progname;
 
-- 
1.7.7.3




More information about the libvir-list mailing list