#include <config.h>
/*
 * Please do not edit this file.
 * It was generated using rpcgen.
 */

#include "admin_protocol.h"
#include <libvirt/libvirt-admin.h>
#include "virxdrdefs.h"

bool_t
xdr_admin_nonnull_string (XDR *xdrs, admin_nonnull_string *objp)
{

         if (!xdr_string (xdrs, objp, ADMIN_STRING_MAX))
                 return FALSE;
        return TRUE;
}

bool_t
xdr_admin_string (XDR *xdrs, admin_string *objp)
{

         if (!xdr_pointer (xdrs, (char **)objp, sizeof (admin_nonnull_string), (xdrproc_t) xdr_admin_nonnull_string))
                 return FALSE;
        return TRUE;
}

bool_t
xdr_admin_typed_param_value (XDR *xdrs, admin_typed_param_value *objp)
{

         if (!xdr_int (xdrs, &objp->type))
                 return FALSE;
        switch (objp->type) {
        case VIR_TYPED_PARAM_INT:
                 if (!xdr_int (xdrs, &objp->admin_typed_param_value_u.i))
                         return FALSE;
                break;
        case VIR_TYPED_PARAM_UINT:
                 if (!xdr_u_int (xdrs, &objp->admin_typed_param_value_u.ui))
                         return FALSE;
                break;
        case VIR_TYPED_PARAM_LLONG:
                 if (!xdr_int64_t (xdrs, &objp->admin_typed_param_value_u.l))
                         return FALSE;
                break;
        case VIR_TYPED_PARAM_ULLONG:
                 if (!xdr_uint64_t (xdrs, &objp->admin_typed_param_value_u.ul))
                         return FALSE;
                break;
        case VIR_TYPED_PARAM_DOUBLE:
                 if (!xdr_double (xdrs, &objp->admin_typed_param_value_u.d))
                         return FALSE;
                break;
        case VIR_TYPED_PARAM_BOOLEAN:
                 if (!xdr_int (xdrs, &objp->admin_typed_param_value_u.b))
                         return FALSE;
                break;
        case VIR_TYPED_PARAM_STRING:
                 if (!xdr_admin_nonnull_string (xdrs, &objp->admin_typed_param_value_u.s))
                         return FALSE;
                break;
        default:
                return FALSE;
        }
        return TRUE;
}

bool_t
xdr_admin_typed_param (XDR *xdrs, admin_typed_param *objp)
{

         if (!xdr_admin_nonnull_string (xdrs, &objp->field))
                 return FALSE;
         if (!xdr_admin_typed_param_value (xdrs, &objp->value))
                 return FALSE;
        return TRUE;
}

bool_t
xdr_admin_nonnull_server (XDR *xdrs, admin_nonnull_server *objp)
{

         if (!xdr_admin_nonnull_string (xdrs, &objp->name))
                 return FALSE;
        return TRUE;
}

bool_t
xdr_admin_nonnull_client (XDR *xdrs, admin_nonnull_client *objp)
{

         if (!xdr_admin_nonnull_server (xdrs, &objp->srv))
                 return FALSE;
         if (!xdr_uint64_t (xdrs, &objp->id))
                 return FALSE;
         if (!xdr_int64_t (xdrs, &objp->timestamp))
                 return FALSE;
         if (!xdr_u_int (xdrs, &objp->transport))
                 return FALSE;
        return TRUE;
}

bool_t
xdr_admin_connect_open_args (XDR *xdrs, admin_connect_open_args *objp)
{

         if (!xdr_u_int (xdrs, &objp->flags))
                 return FALSE;
        return TRUE;
}

bool_t
xdr_admin_connect_get_lib_version_ret (XDR *xdrs, admin_connect_get_lib_version_ret *objp)
{

         if (!xdr_uint64_t (xdrs, &objp->libVer))
                 return FALSE;
        return TRUE;
}

bool_t
xdr_admin_connect_list_servers_args (XDR *xdrs, admin_connect_list_servers_args *objp)
{

         if (!xdr_u_int (xdrs, &objp->need_results))
                 return FALSE;
         if (!xdr_u_int (xdrs, &objp->flags))
                 return FALSE;
        return TRUE;
}

bool_t
xdr_admin_connect_list_servers_ret (XDR *xdrs, admin_connect_list_servers_ret *objp)
{
        char **objp_cpp0 = (char **) (void *) &objp->servers.servers_val;

         if (!xdr_array (xdrs, objp_cpp0, (u_int *) &objp->servers.servers_len, ADMIN_SERVER_LIST_MAX,
                sizeof (admin_nonnull_server), (xdrproc_t) xdr_admin_nonnull_server))
                 return FALSE;
         if (!xdr_u_int (xdrs, &objp->ret))
                 return FALSE;
        return TRUE;
}

bool_t
xdr_admin_connect_lookup_server_args (XDR *xdrs, admin_connect_lookup_server_args *objp)
{

         if (!xdr_admin_nonnull_string (xdrs, &objp->name))
                 return FALSE;
         if (!xdr_u_int (xdrs, &objp->flags))
                 return FALSE;
        return TRUE;
}

bool_t
xdr_admin_connect_lookup_server_ret (XDR *xdrs, admin_connect_lookup_server_ret *objp)
{

         if (!xdr_admin_nonnull_server (xdrs, &objp->srv))
                 return FALSE;
        return TRUE;
}

bool_t
xdr_admin_server_get_threadpool_parameters_args (XDR *xdrs, admin_server_get_threadpool_parameters_args *objp)
{

         if (!xdr_admin_nonnull_server (xdrs, &objp->srv))
                 return FALSE;
         if (!xdr_u_int (xdrs, &objp->flags))
                 return FALSE;
        return TRUE;
}

bool_t
xdr_admin_server_get_threadpool_parameters_ret (XDR *xdrs, admin_server_get_threadpool_parameters_ret *objp)
{
        char **objp_cpp0 = (char **) (void *) &objp->params.params_val;

         if (!xdr_array (xdrs, objp_cpp0, (u_int *) &objp->params.params_len, ADMIN_SERVER_THREADPOOL_PARAMETERS_MAX,
                sizeof (admin_typed_param), (xdrproc_t) xdr_admin_typed_param))
                 return FALSE;
        return TRUE;
}

bool_t
xdr_admin_server_set_threadpool_parameters_args (XDR *xdrs, admin_server_set_threadpool_parameters_args *objp)
{
        char **objp_cpp0 = (char **) (void *) &objp->params.params_val;

         if (!xdr_admin_nonnull_server (xdrs, &objp->srv))
                 return FALSE;
         if (!xdr_array (xdrs, objp_cpp0, (u_int *) &objp->params.params_len, ADMIN_SERVER_THREADPOOL_PARAMETERS_MAX,
                sizeof (admin_typed_param), (xdrproc_t) xdr_admin_typed_param))
                 return FALSE;
         if (!xdr_u_int (xdrs, &objp->flags))
                 return FALSE;
        return TRUE;
}

bool_t
xdr_admin_server_list_clients_args (XDR *xdrs, admin_server_list_clients_args *objp)
{

         if (!xdr_admin_nonnull_server (xdrs, &objp->srv))
                 return FALSE;
         if (!xdr_u_int (xdrs, &objp->need_results))
                 return FALSE;
         if (!xdr_u_int (xdrs, &objp->flags))
                 return FALSE;
        return TRUE;
}

bool_t
xdr_admin_server_list_clients_ret (XDR *xdrs, admin_server_list_clients_ret *objp)
{
        char **objp_cpp0 = (char **) (void *) &objp->clients.clients_val;

         if (!xdr_array (xdrs, objp_cpp0, (u_int *) &objp->clients.clients_len, ADMIN_CLIENT_LIST_MAX,
                sizeof (admin_nonnull_client), (xdrproc_t) xdr_admin_nonnull_client))
                 return FALSE;
         if (!xdr_u_int (xdrs, &objp->ret))
                 return FALSE;
        return TRUE;
}

bool_t
xdr_admin_server_lookup_client_args (XDR *xdrs, admin_server_lookup_client_args *objp)
{

         if (!xdr_admin_nonnull_server (xdrs, &objp->srv))
                 return FALSE;
         if (!xdr_uint64_t (xdrs, &objp->id))
                 return FALSE;
         if (!xdr_u_int (xdrs, &objp->flags))
                 return FALSE;
        return TRUE;
}

bool_t
xdr_admin_server_lookup_client_ret (XDR *xdrs, admin_server_lookup_client_ret *objp)
{

         if (!xdr_admin_nonnull_client (xdrs, &objp->clnt))
                 return FALSE;
        return TRUE;
}

bool_t
xdr_admin_client_get_info_args (XDR *xdrs, admin_client_get_info_args *objp)
{

         if (!xdr_admin_nonnull_client (xdrs, &objp->clnt))
                 return FALSE;
         if (!xdr_u_int (xdrs, &objp->flags))
                 return FALSE;
        return TRUE;
}

bool_t
xdr_admin_client_get_info_ret (XDR *xdrs, admin_client_get_info_ret *objp)
{
        char **objp_cpp0 = (char **) (void *) &objp->params.params_val;

         if (!xdr_array (xdrs, objp_cpp0, (u_int *) &objp->params.params_len, ADMIN_CLIENT_INFO_PARAMETERS_MAX,
                sizeof (admin_typed_param), (xdrproc_t) xdr_admin_typed_param))
                 return FALSE;
        return TRUE;
}

bool_t
xdr_admin_client_close_args (XDR *xdrs, admin_client_close_args *objp)
{

         if (!xdr_admin_nonnull_client (xdrs, &objp->clnt))
                 return FALSE;
         if (!xdr_u_int (xdrs, &objp->flags))
                 return FALSE;
        return TRUE;
}

bool_t
xdr_admin_server_get_client_limits_args (XDR *xdrs, admin_server_get_client_limits_args *objp)
{

         if (!xdr_admin_nonnull_server (xdrs, &objp->srv))
                 return FALSE;
         if (!xdr_u_int (xdrs, &objp->flags))
                 return FALSE;
        return TRUE;
}

bool_t
xdr_admin_server_get_client_limits_ret (XDR *xdrs, admin_server_get_client_limits_ret *objp)
{
        char **objp_cpp0 = (char **) (void *) &objp->params.params_val;

         if (!xdr_array (xdrs, objp_cpp0, (u_int *) &objp->params.params_len, ADMIN_SERVER_CLIENT_LIMITS_MAX,
                sizeof (admin_typed_param), (xdrproc_t) xdr_admin_typed_param))
                 return FALSE;
        return TRUE;
}

bool_t
xdr_admin_server_set_client_limits_args (XDR *xdrs, admin_server_set_client_limits_args *objp)
{
        char **objp_cpp0 = (char **) (void *) &objp->params.params_val;

         if (!xdr_admin_nonnull_server (xdrs, &objp->srv))
                 return FALSE;
         if (!xdr_array (xdrs, objp_cpp0, (u_int *) &objp->params.params_len, ADMIN_SERVER_CLIENT_LIMITS_MAX,
                sizeof (admin_typed_param), (xdrproc_t) xdr_admin_typed_param))
                 return FALSE;
         if (!xdr_u_int (xdrs, &objp->flags))
                 return FALSE;
        return TRUE;
}

bool_t
xdr_admin_procedure (XDR *xdrs, admin_procedure *objp)
{

         if (!xdr_enum (xdrs, (enum_t *) objp))
                 return FALSE;
        return TRUE;
}
