]> xenbits.xensource.com Git - libvirt.git/commitdiff
admin: Generate ConnectListServers dispatch helpers
authorMartin Kletzander <mkletzan@redhat.com>
Wed, 2 Mar 2016 14:32:55 +0000 (15:32 +0100)
committerMartin Kletzander <mkletzan@redhat.com>
Fri, 11 Mar 2016 11:58:41 +0000 (12:58 +0100)
Since we have the opportunity now, let's save some precious code lines.

Signed-off-by: Martin Kletzander <mkletzan@redhat.com>
daemon/admin.c
daemon/admin_server.c
daemon/admin_server.h
po/POTFILES.in
src/admin/admin_protocol.x
src/admin/admin_remote.c

index cae2a84d84b8470168b84c79370d34878df9eba9..3169cddb5807989cdf64637056430ad131d7fe9d 100644 (file)
@@ -133,49 +133,4 @@ adminConnectGetLibVersion(virNetDaemonPtr dmn ATTRIBUTE_UNUSED,
     return 0;
 }
 
-static int
-adminDispatchConnectListServers(virNetServerPtr server ATTRIBUTE_UNUSED,
-                                virNetServerClientPtr client,
-                                virNetMessagePtr msg ATTRIBUTE_UNUSED,
-                                virNetMessageErrorPtr rerr ATTRIBUTE_UNUSED,
-                                admin_connect_list_servers_args *args,
-                                admin_connect_list_servers_ret *ret)
-{
-    virNetServerPtr *servers = NULL;
-    int nservers = 0;
-    int rv = -1;
-    size_t i;
-    struct daemonAdmClientPrivate *priv =
-        virNetServerClientGetPrivateData(client);
-
-    if ((nservers =
-            adminDaemonListServers(priv->dmn,
-                                   args->need_results ? &servers : NULL,
-                                   args->flags)) < 0)
-        goto cleanup;
-
-    if (servers && nservers) {
-        if (VIR_ALLOC_N(ret->servers.servers_val, nservers) < 0)
-            goto cleanup;
-
-        ret->servers.servers_len = nservers;
-        for (i = 0; i < nservers; i++)
-            make_nonnull_server(ret->servers.servers_val + i, servers[i]);
-    } else {
-        ret->servers.servers_len = 0;
-        ret->servers.servers_val = NULL;
-    }
-
-    ret->ret = nservers;
-    rv = 0;
-
- cleanup:
-    if (rv < 0)
-        virNetMessageSaveError(rerr);
-    if (servers && nservers > 0)
-        for (i = 0; i < nservers; i++)
-            virObjectUnref(servers[i]);
-    VIR_FREE(servers);
-    return rv;
-}
 #include "admin_dispatch.h"
index a35f3313060712eb333fa93582adbf055af6ed20..6eabbe4ae6d50704704b5aa789d3beb96e04cb19 100644 (file)
@@ -37,9 +37,9 @@
 VIR_LOG_INIT("daemon.admin_server");
 
 int
-adminDaemonListServers(virNetDaemonPtr dmn,
-                       virNetServerPtr **servers,
-                       unsigned int flags)
+adminConnectListServers(virNetDaemonPtr dmn,
+                        virNetServerPtr **servers,
+                        unsigned int flags)
 {
     int ret = -1;
     virNetServerPtr *srvs = NULL;
index 606442c19f5f729258a59a121b51b744a1ea8ba3..b77653f6c384150fea5ba2a655ec68df890b4dc2 100644 (file)
@@ -26,8 +26,8 @@
 
 # include "rpc/virnetdaemon.h"
 
-int adminDaemonListServers(virNetDaemonPtr dmn,
-                           virNetServerPtr **servers,
-                           unsigned int flags);
+int adminConnectListServers(virNetDaemonPtr dmn,
+                            virNetServerPtr **servers,
+                            unsigned int flags);
 
 #endif /* __LIBVIRTD_ADMIN_SERVER_H__ */
index ff207cbb03e775c25a350b5f018b045b0a2b6275..171d2b1e1534900b00f248465bbd9d72911cfa45 100644 (file)
@@ -10,7 +10,6 @@ gnulib/lib/gai_strerror.c
 gnulib/lib/regcomp.c
 src/access/viraccessdriverpolkit.c
 src/access/viraccessmanager.c
-src/admin/admin_remote.c
 src/bhyve/bhyve_command.c
 src/bhyve/bhyve_device.c
 src/bhyve/bhyve_driver.c
index 742ed2a89cd19a758801d38760cb6b69e4e0aa9d..205bfe8f7a5249c40e254a1fad02c01296780f88 100644 (file)
@@ -60,7 +60,7 @@ struct admin_connect_list_servers_args {
     unsigned int flags;
 };
 
-struct admin_connect_list_servers_ret {
+struct admin_connect_list_servers_ret { /* insert@1 */
     admin_nonnull_server servers<ADMIN_SERVER_LIST_MAX>;
     unsigned int ret;
 };
@@ -103,7 +103,7 @@ enum admin_procedure {
     ADMIN_PROC_CONNECT_GET_LIB_VERSION = 3,
 
     /**
-      * @generate: none
+      * @generate: both
       */
     ADMIN_PROC_CONNECT_LIST_SERVERS = 4
 };
index 3745b9e7017a92c643ebefb4e93c146298340a10..21e0dd30c4bfe6a63bf6244c3b78516f4740133f 100644 (file)
@@ -224,66 +224,3 @@ remoteAdminPrivNew(const char *sock_path)
     virObjectUnref(priv);
     return NULL;
 }
-
-static int
-remoteAdminConnectListServers(virAdmConnectPtr conn,
-                              virAdmServerPtr **servers,
-                              unsigned int flags)
-{
-    int rv = -1;
-    size_t i;
-    virAdmServerPtr *tmp_srvs = NULL;
-    remoteAdminPrivPtr priv = conn->privateData;
-    admin_connect_list_servers_args args;
-    admin_connect_list_servers_ret ret;
-
-    args.need_results = !!servers;
-    args.flags = flags;
-
-    memset(&ret, 0, sizeof(ret));
-    virObjectLock(priv);
-
-    if (call(conn,
-             0,
-             ADMIN_PROC_CONNECT_LIST_SERVERS,
-             (xdrproc_t) xdr_admin_connect_list_servers_args,
-             (char *) &args,
-             (xdrproc_t) xdr_admin_connect_list_servers_ret,
-             (char *) &ret) == -1)
-        goto done;
-
-    if (ret.servers.servers_len > ADMIN_SERVER_LIST_MAX) {
-        virReportError(VIR_ERR_RPC,
-                       _("Too many servers '%d' for limit '%d'"),
-                       ret.servers.servers_len, ADMIN_SERVER_LIST_MAX);
-        goto cleanup;
-    }
-
-    if (servers) {
-        if (VIR_ALLOC_N(tmp_srvs, ret.servers.servers_len + 1) < 0)
-            goto cleanup;
-
-        for (i = 0; i < ret.servers.servers_len; i++) {
-            tmp_srvs[i] = get_nonnull_server(conn, ret.servers.servers_val[i]);
-            if (!tmp_srvs[i])
-                goto cleanup;
-        }
-        *servers = tmp_srvs;
-        tmp_srvs = NULL;
-    }
-
-    rv = ret.ret;
-
- cleanup:
-    if (tmp_srvs) {
-        for (i = 0; i < ret.servers.servers_len; i++)
-            virObjectUnref(tmp_srvs[i]);
-        VIR_FREE(tmp_srvs);
-    }
-
-    xdr_free((xdrproc_t) xdr_admin_connect_list_servers_ret, (char *) &ret);
-
- done:
-    virObjectUnlock(priv);
-    return rv;
-}