]> xenbits.xensource.com Git - people/liuw/libxenctrl-split/libvirt.git/commitdiff
list: Implement listAllNetworks for network driver
authorOsier Yang <jyang@redhat.com>
Tue, 4 Sep 2012 15:55:18 +0000 (23:55 +0800)
committerOsier Yang <jyang@redhat.com>
Tue, 11 Sep 2012 09:00:46 +0000 (17:00 +0800)
src/network/bridge_driver.c: Implement listAllNetworks.

src/network/bridge_driver.c

index 808c843354fb38e6b44e271bf3ff37468b85c1be..4faad5d87ebf5ba0b3685e1f7517b80e40f81020 100644 (file)
@@ -2263,6 +2263,22 @@ static int networkListDefinedNetworks(virConnectPtr conn, char **const names, in
     return -1;
 }
 
+static int
+networkListAllNetworks(virConnectPtr conn,
+                       virNetworkPtr **nets,
+                       unsigned int flags)
+{
+    struct network_driver *driver = conn->networkPrivateData;
+    int ret = -1;
+
+    virCheckFlags(VIR_CONNECT_LIST_NETWORKS_FILTERS_ALL, -1);
+
+    networkDriverLock(driver);
+    ret = virNetworkList(conn, driver->networks, nets, flags);
+    networkDriverUnlock(driver);
+
+    return ret;
+}
 
 static int networkIsActive(virNetworkPtr net)
 {
@@ -2793,6 +2809,7 @@ static virNetworkDriver networkDriver = {
     .listNetworks = networkListNetworks, /* 0.2.0 */
     .numOfDefinedNetworks = networkNumDefinedNetworks, /* 0.2.0 */
     .listDefinedNetworks = networkListDefinedNetworks, /* 0.2.0 */
+    .listAllNetworks = networkListAllNetworks, /* 0.10.2 */
     .networkLookupByUUID = networkLookupByUUID, /* 0.2.0 */
     .networkLookupByName = networkLookupByName, /* 0.2.0 */
     .networkCreateXML = networkCreate, /* 0.2.0 */