2008-12-17 17:23:21 +00:00
|
|
|
#include <config.h>
|
2007-06-11 11:36:17 +00:00
|
|
|
/*
|
|
|
|
* Please do not edit this file.
|
|
|
|
* It was generated using rpcgen.
|
|
|
|
*/
|
|
|
|
|
2010-04-25 11:31:31 +00:00
|
|
|
#include "remote_protocol.h"
|
Standardize use of header files, making internal.h primary.
* qemud/internal.h, qemud/qemud.h: Rename this file so it
doesn't conflict with src/internal.h.
* HACKING: Document how header files should be used.
* qemud/Makefile.am: Add src/ directory to includes.
* qemud/event.c, qemud/mdns.c, qemud/qemud.c, qemud/remote.c,
qemud/remote_protocol.c, qemud/remote_protocol.h,
qemud/remote_protocol.x, src/buf.c, src/libvirt.c,
src/nodeinfo.c, src/qemu_conf.c, src/qemu_driver.c,
src/stats_linux.c, src/storage_backend.c, src/storage_backend_fs.c,
src/storage_backend_iscsi.c, src/storage_backend_logical.c,
src/storage_conf.c, src/storage_driver.c, src/util.c,
src/util.h, src/virsh.c, src/virterror.c, src/xend_internal.c,
src/xml.c, tests/reconnect.c, tests/xmlrpctest.c,
tests/qparamtest.c: Standardize use of header files.
* docs/*, po/*: Rebuild docs.
2008-05-23 08:24:41 +00:00
|
|
|
#include "internal.h"
|
2008-10-28 19:09:04 +00:00
|
|
|
#include <arpa/inet.h>
|
2010-04-25 11:31:31 +00:00
|
|
|
#ifdef HAVE_XDR_U_INT64_T
|
|
|
|
# define xdr_uint64_t xdr_u_int64_t
|
|
|
|
#endif
|
|
|
|
#ifndef IXDR_PUT_INT32
|
|
|
|
# define IXDR_PUT_INT32 IXDR_PUT_LONG
|
|
|
|
#endif
|
|
|
|
#ifndef IXDR_GET_INT32
|
|
|
|
# define IXDR_GET_INT32 IXDR_GET_LONG
|
|
|
|
#endif
|
2007-06-11 11:36:17 +00:00
|
|
|
|
|
|
|
bool_t
|
|
|
|
xdr_remote_nonnull_string (XDR *xdrs, remote_nonnull_string *objp)
|
|
|
|
{
|
|
|
|
|
2008-04-10 16:54:54 +00:00
|
|
|
if (!xdr_string (xdrs, objp, REMOTE_STRING_MAX))
|
|
|
|
return FALSE;
|
|
|
|
return TRUE;
|
2007-06-11 11:36:17 +00:00
|
|
|
}
|
|
|
|
|
|
|
|
bool_t
|
|
|
|
xdr_remote_string (XDR *xdrs, remote_string *objp)
|
|
|
|
{
|
|
|
|
|
2008-04-10 16:54:54 +00:00
|
|
|
if (!xdr_pointer (xdrs, (char **)objp, sizeof (remote_nonnull_string), (xdrproc_t) xdr_remote_nonnull_string))
|
|
|
|
return FALSE;
|
|
|
|
return TRUE;
|
2007-06-11 11:36:17 +00:00
|
|
|
}
|
|
|
|
|
|
|
|
bool_t
|
|
|
|
xdr_remote_uuid (XDR *xdrs, remote_uuid objp)
|
|
|
|
{
|
|
|
|
|
2008-04-10 16:54:54 +00:00
|
|
|
if (!xdr_opaque (xdrs, objp, VIR_UUID_BUFLEN))
|
|
|
|
return FALSE;
|
|
|
|
return TRUE;
|
2007-06-11 11:36:17 +00:00
|
|
|
}
|
|
|
|
|
|
|
|
bool_t
|
|
|
|
xdr_remote_nonnull_domain (XDR *xdrs, remote_nonnull_domain *objp)
|
|
|
|
{
|
|
|
|
|
2008-04-10 16:54:54 +00:00
|
|
|
if (!xdr_remote_nonnull_string (xdrs, &objp->name))
|
|
|
|
return FALSE;
|
|
|
|
if (!xdr_remote_uuid (xdrs, objp->uuid))
|
|
|
|
return FALSE;
|
|
|
|
if (!xdr_int (xdrs, &objp->id))
|
|
|
|
return FALSE;
|
|
|
|
return TRUE;
|
2007-06-11 11:36:17 +00:00
|
|
|
}
|
|
|
|
|
|
|
|
bool_t
|
|
|
|
xdr_remote_nonnull_network (XDR *xdrs, remote_nonnull_network *objp)
|
|
|
|
{
|
|
|
|
|
2008-04-10 16:54:54 +00:00
|
|
|
if (!xdr_remote_nonnull_string (xdrs, &objp->name))
|
|
|
|
return FALSE;
|
|
|
|
if (!xdr_remote_uuid (xdrs, objp->uuid))
|
|
|
|
return FALSE;
|
|
|
|
return TRUE;
|
2007-06-11 11:36:17 +00:00
|
|
|
}
|
|
|
|
|
2010-03-25 17:46:03 +00:00
|
|
|
bool_t
|
|
|
|
xdr_remote_nonnull_nwfilter (XDR *xdrs, remote_nonnull_nwfilter *objp)
|
|
|
|
{
|
|
|
|
|
|
|
|
if (!xdr_remote_nonnull_string (xdrs, &objp->name))
|
|
|
|
return FALSE;
|
|
|
|
if (!xdr_remote_uuid (xdrs, objp->uuid))
|
|
|
|
return FALSE;
|
|
|
|
return TRUE;
|
|
|
|
}
|
|
|
|
|
2009-05-20 14:26:49 +00:00
|
|
|
bool_t
|
|
|
|
xdr_remote_nonnull_interface (XDR *xdrs, remote_nonnull_interface *objp)
|
|
|
|
{
|
|
|
|
|
|
|
|
if (!xdr_remote_nonnull_string (xdrs, &objp->name))
|
|
|
|
return FALSE;
|
|
|
|
if (!xdr_remote_nonnull_string (xdrs, &objp->mac))
|
|
|
|
return FALSE;
|
|
|
|
return TRUE;
|
|
|
|
}
|
|
|
|
|
2008-02-20 15:22:35 +00:00
|
|
|
bool_t
|
|
|
|
xdr_remote_nonnull_storage_pool (XDR *xdrs, remote_nonnull_storage_pool *objp)
|
|
|
|
{
|
|
|
|
|
2008-04-10 16:54:54 +00:00
|
|
|
if (!xdr_remote_nonnull_string (xdrs, &objp->name))
|
|
|
|
return FALSE;
|
|
|
|
if (!xdr_remote_uuid (xdrs, objp->uuid))
|
|
|
|
return FALSE;
|
|
|
|
return TRUE;
|
2008-02-20 15:22:35 +00:00
|
|
|
}
|
|
|
|
|
|
|
|
bool_t
|
|
|
|
xdr_remote_nonnull_storage_vol (XDR *xdrs, remote_nonnull_storage_vol *objp)
|
|
|
|
{
|
|
|
|
|
2008-04-10 16:54:54 +00:00
|
|
|
if (!xdr_remote_nonnull_string (xdrs, &objp->pool))
|
|
|
|
return FALSE;
|
|
|
|
if (!xdr_remote_nonnull_string (xdrs, &objp->name))
|
|
|
|
return FALSE;
|
|
|
|
if (!xdr_remote_nonnull_string (xdrs, &objp->key))
|
|
|
|
return FALSE;
|
|
|
|
return TRUE;
|
2008-02-20 15:22:35 +00:00
|
|
|
}
|
|
|
|
|
2008-11-21 12:31:04 +00:00
|
|
|
bool_t
|
|
|
|
xdr_remote_nonnull_node_device (XDR *xdrs, remote_nonnull_node_device *objp)
|
|
|
|
{
|
|
|
|
|
|
|
|
if (!xdr_remote_nonnull_string (xdrs, &objp->name))
|
|
|
|
return FALSE;
|
|
|
|
return TRUE;
|
|
|
|
}
|
|
|
|
|
2009-07-28 02:01:00 +00:00
|
|
|
bool_t
|
|
|
|
xdr_remote_nonnull_secret (XDR *xdrs, remote_nonnull_secret *objp)
|
|
|
|
{
|
|
|
|
|
Fix UUID handling in secrets/storage encryption APIs
Convert all the secret/storage encryption APIs / wire format to
handle UUIDs in raw format instead of non-canonical printable
format. Guarentees data format correctness.
* docs/schemas/storageencryption.rng: Make UUID mandatory for a secret
and validate fully
* docs/schemas/secret.rng: Fully validate UUID
* include/libvirt/libvirt.h, include/libvirt/libvirt.h.in, Add
virSecretLookupByUUID and virSecretGetUUID. Make
virSecretGetUUIDString follow normal API design pattern
* python/generator.py: Skip generation of virSecretGetUUID,
virSecretGetUUIDString and virSecretLookupByUUID
* python/libvir.c, python/libvirt-python-api.xml: Manual impl
of virSecretGetUUID,virSecretGetUUIDString and virSecretLookupByUUID
* qemud/remote.c: s/virSecretLookupByUUIDString/virSecretLookupByUUID/
Fix get_nonnull_secret/make_nonnull_secret to use unsigned char
* qemud/remote_protocol.x: Fix remote_nonnull_secret to use a
remote_uuid instead of remote_nonnull_string for UUID field.
Rename REMOTE_PROC_SECRET_LOOKUP_BY_UUID_STRING to
REMOTE_PROC_SECRET_LOOKUP_BY_UUID_STRING and make it take an
remote_uuid value
* qemud/remote_dispatch_args.h, qemud/remote_dispatch_prototypes.h,
qemud/remote_dispatch_ret.h, qemud/remote_dispatch_table.h,
qemud/remote_protocol.c, qemud/remote_protocol.h: Re-generate
* src/datatypes.h, src/datatypes.c: Store UUID in raw format instead
of printable. Change virGetSecret to use raw format UUID
* src/driver.h: Rename virDrvSecretLookupByUUIDString to
virDrvSecretLookupByUUID and use raw format UUID
* src/libvirt.c: Add virSecretLookupByUUID and virSecretGetUUID
and re-implement virSecretLookupByUUIDString and
virSecretGetUUIDString in terms of those
* src/libvirt_public.syms: Add virSecretLookupByUUID and
virSecretGetUUID
* src/remote_internal.c: Rename remoteSecretLookupByUUIDString
to remoteSecretLookupByUUID. Fix typo in args for
remoteSecretDefineXML impl. Use raw UUID format for
get_nonnull_secret and make_nonnull_secret
* src/storage_encryption_conf.c, src/storage_encryption_conf.h:
Storage UUID in raw format, and require it to be present in
XML. Use UUID parser to validate.
* secret_conf.h, secret_conf.c: Generate a UUID if none is provided.
Storage UUID in raw format.
* src/secret_driver.c: Adjust to deal with raw UUIDs. Save secrets
in a filed with printable UUID, instead of base64 UUID.
* src/virsh.c: Adjust for changed public API contract of
virSecretGetUUIDString.
* src/storage_Backend.c: DOn't undefine secret we just generated
upon successful volume creation. Fix to handle raw UUIDs. Generate
a non-clashing UUID
* src/qemu_driver.c: Change to use lookupByUUID instead of
lookupByUUIDString
2009-09-10 16:44:12 +00:00
|
|
|
if (!xdr_remote_uuid (xdrs, objp->uuid))
|
2009-07-28 02:01:00 +00:00
|
|
|
return FALSE;
|
Add usage type/id as a public API property of virSecret
* include/libvirt/libvirt.h, include/libvirt/libvirt.h.in: Add
virSecretGetUsageType, virSecretGetUsageID and virLookupSecretByUsage
* python/generator.py: Mark virSecretGetUsageType, virSecretGetUsageID
as not throwing exceptions
* qemud/remote.c: Implement dispatch for virLookupSecretByUsage
* qemud/remote_protocol.x: Add usage type & ID as attributes of
remote_nonnull_secret. Add RPC calls for new public APIs
* qemud/remote_dispatch_args.h, qemud/remote_dispatch_prototypes.h,
qemud/remote_dispatch_ret.h, qemud/remote_dispatch_table.h,
qemud/remote_protocol.c, qemud/remote_protocol.h: Re-generate
* src/datatypes.c, src/datatypes.h: Add usageType and usageID as
properties of virSecretPtr
* src/driver.h: Add virLookupSecretByUsage driver entry point
* src/libvirt.c: Implement virSecretGetUsageType, virSecretGetUsageID
and virLookupSecretByUsage
* src/libvirt_public.syms: Export virSecretGetUsageType, virSecretGetUsageID
and virLookupSecretByUsage
* src/remote_internal.c: Implement virLookupSecretByUsage entry
* src/secret_conf.c, src/secret_conf.h: Remove the
virSecretUsageType enum, now in public API. Make volume
path mandatory when parsing XML
* src/secret_driver.c: Enforce usage uniqueness when defining secrets.
Implement virSecretLookupByUsage api method
* src/virsh.c: Include usage for secret-list command
2009-09-11 13:06:15 +00:00
|
|
|
if (!xdr_int (xdrs, &objp->usageType))
|
|
|
|
return FALSE;
|
|
|
|
if (!xdr_remote_nonnull_string (xdrs, &objp->usageID))
|
|
|
|
return FALSE;
|
2009-07-28 02:01:00 +00:00
|
|
|
return TRUE;
|
|
|
|
}
|
|
|
|
|
2010-03-31 20:33:13 +00:00
|
|
|
bool_t
|
|
|
|
xdr_remote_nonnull_domain_snapshot (XDR *xdrs, remote_nonnull_domain_snapshot *objp)
|
|
|
|
{
|
|
|
|
|
|
|
|
if (!xdr_remote_nonnull_string (xdrs, &objp->name))
|
|
|
|
return FALSE;
|
|
|
|
if (!xdr_remote_nonnull_domain (xdrs, &objp->domain))
|
|
|
|
return FALSE;
|
|
|
|
return TRUE;
|
|
|
|
}
|
|
|
|
|
2007-06-11 11:36:17 +00:00
|
|
|
bool_t
|
|
|
|
xdr_remote_domain (XDR *xdrs, remote_domain *objp)
|
|
|
|
{
|
|
|
|
|
2008-04-10 16:54:54 +00:00
|
|
|
if (!xdr_pointer (xdrs, (char **)objp, sizeof (remote_nonnull_domain), (xdrproc_t) xdr_remote_nonnull_domain))
|
|
|
|
return FALSE;
|
|
|
|
return TRUE;
|
2007-06-11 11:36:17 +00:00
|
|
|
}
|
|
|
|
|
|
|
|
bool_t
|
|
|
|
xdr_remote_network (XDR *xdrs, remote_network *objp)
|
|
|
|
{
|
|
|
|
|
2008-04-10 16:54:54 +00:00
|
|
|
if (!xdr_pointer (xdrs, (char **)objp, sizeof (remote_nonnull_network), (xdrproc_t) xdr_remote_nonnull_network))
|
|
|
|
return FALSE;
|
|
|
|
return TRUE;
|
2007-06-11 11:36:17 +00:00
|
|
|
}
|
|
|
|
|
2010-03-25 17:46:03 +00:00
|
|
|
bool_t
|
|
|
|
xdr_remote_nwfilter (XDR *xdrs, remote_nwfilter *objp)
|
|
|
|
{
|
|
|
|
|
|
|
|
if (!xdr_pointer (xdrs, (char **)objp, sizeof (remote_nonnull_nwfilter), (xdrproc_t) xdr_remote_nonnull_nwfilter))
|
|
|
|
return FALSE;
|
|
|
|
return TRUE;
|
|
|
|
}
|
|
|
|
|
2008-02-20 15:22:35 +00:00
|
|
|
bool_t
|
|
|
|
xdr_remote_storage_pool (XDR *xdrs, remote_storage_pool *objp)
|
|
|
|
{
|
|
|
|
|
2008-04-10 16:54:54 +00:00
|
|
|
if (!xdr_pointer (xdrs, (char **)objp, sizeof (remote_nonnull_storage_pool), (xdrproc_t) xdr_remote_nonnull_storage_pool))
|
|
|
|
return FALSE;
|
|
|
|
return TRUE;
|
2008-02-20 15:22:35 +00:00
|
|
|
}
|
|
|
|
|
|
|
|
bool_t
|
|
|
|
xdr_remote_storage_vol (XDR *xdrs, remote_storage_vol *objp)
|
|
|
|
{
|
|
|
|
|
2008-04-10 16:54:54 +00:00
|
|
|
if (!xdr_pointer (xdrs, (char **)objp, sizeof (remote_nonnull_storage_vol), (xdrproc_t) xdr_remote_nonnull_storage_vol))
|
|
|
|
return FALSE;
|
|
|
|
return TRUE;
|
2008-02-20 15:22:35 +00:00
|
|
|
}
|
|
|
|
|
2008-11-21 12:31:04 +00:00
|
|
|
bool_t
|
|
|
|
xdr_remote_node_device (XDR *xdrs, remote_node_device *objp)
|
|
|
|
{
|
|
|
|
|
|
|
|
if (!xdr_pointer (xdrs, (char **)objp, sizeof (remote_nonnull_node_device), (xdrproc_t) xdr_remote_nonnull_node_device))
|
|
|
|
return FALSE;
|
|
|
|
return TRUE;
|
|
|
|
}
|
|
|
|
|
2007-06-11 11:36:17 +00:00
|
|
|
bool_t
|
|
|
|
xdr_remote_error (XDR *xdrs, remote_error *objp)
|
|
|
|
{
|
|
|
|
|
2008-04-10 16:54:54 +00:00
|
|
|
if (!xdr_int (xdrs, &objp->code))
|
|
|
|
return FALSE;
|
|
|
|
if (!xdr_int (xdrs, &objp->domain))
|
|
|
|
return FALSE;
|
|
|
|
if (!xdr_remote_string (xdrs, &objp->message))
|
|
|
|
return FALSE;
|
|
|
|
if (!xdr_int (xdrs, &objp->level))
|
|
|
|
return FALSE;
|
|
|
|
if (!xdr_remote_domain (xdrs, &objp->dom))
|
|
|
|
return FALSE;
|
|
|
|
if (!xdr_remote_string (xdrs, &objp->str1))
|
|
|
|
return FALSE;
|
|
|
|
if (!xdr_remote_string (xdrs, &objp->str2))
|
|
|
|
return FALSE;
|
|
|
|
if (!xdr_remote_string (xdrs, &objp->str3))
|
|
|
|
return FALSE;
|
|
|
|
if (!xdr_int (xdrs, &objp->int1))
|
|
|
|
return FALSE;
|
|
|
|
if (!xdr_int (xdrs, &objp->int2))
|
|
|
|
return FALSE;
|
|
|
|
if (!xdr_remote_network (xdrs, &objp->net))
|
|
|
|
return FALSE;
|
|
|
|
return TRUE;
|
2007-06-11 11:36:17 +00:00
|
|
|
}
|
|
|
|
|
2007-12-05 15:24:15 +00:00
|
|
|
bool_t
|
|
|
|
xdr_remote_auth_type (XDR *xdrs, remote_auth_type *objp)
|
|
|
|
{
|
|
|
|
|
2008-04-10 16:54:54 +00:00
|
|
|
if (!xdr_enum (xdrs, (enum_t *) objp))
|
|
|
|
return FALSE;
|
|
|
|
return TRUE;
|
2007-12-05 15:24:15 +00:00
|
|
|
}
|
|
|
|
|
2007-06-11 11:36:17 +00:00
|
|
|
bool_t
|
|
|
|
xdr_remote_vcpu_info (XDR *xdrs, remote_vcpu_info *objp)
|
|
|
|
{
|
|
|
|
|
2008-04-10 16:54:54 +00:00
|
|
|
if (!xdr_u_int (xdrs, &objp->number))
|
|
|
|
return FALSE;
|
|
|
|
if (!xdr_int (xdrs, &objp->state))
|
|
|
|
return FALSE;
|
2009-01-28 21:33:56 +00:00
|
|
|
if (!xdr_uint64_t (xdrs, &objp->cpu_time))
|
2008-04-10 16:54:54 +00:00
|
|
|
return FALSE;
|
|
|
|
if (!xdr_int (xdrs, &objp->cpu))
|
|
|
|
return FALSE;
|
|
|
|
return TRUE;
|
2007-06-11 11:36:17 +00:00
|
|
|
}
|
|
|
|
|
2007-06-22 13:16:10 +00:00
|
|
|
bool_t
|
|
|
|
xdr_remote_sched_param_value (XDR *xdrs, remote_sched_param_value *objp)
|
|
|
|
{
|
|
|
|
|
2008-04-10 16:54:54 +00:00
|
|
|
if (!xdr_int (xdrs, &objp->type))
|
|
|
|
return FALSE;
|
|
|
|
switch (objp->type) {
|
|
|
|
case VIR_DOMAIN_SCHED_FIELD_INT:
|
|
|
|
return FALSE;
|
|
|
|
break;
|
|
|
|
case VIR_DOMAIN_SCHED_FIELD_UINT:
|
|
|
|
if (!xdr_u_int (xdrs, &objp->remote_sched_param_value_u.ui))
|
|
|
|
return FALSE;
|
|
|
|
break;
|
|
|
|
case VIR_DOMAIN_SCHED_FIELD_LLONG:
|
2009-01-28 21:33:56 +00:00
|
|
|
if (!xdr_int64_t (xdrs, &objp->remote_sched_param_value_u.l))
|
2008-04-10 16:54:54 +00:00
|
|
|
return FALSE;
|
|
|
|
break;
|
|
|
|
case VIR_DOMAIN_SCHED_FIELD_ULLONG:
|
2009-01-28 21:33:56 +00:00
|
|
|
if (!xdr_uint64_t (xdrs, &objp->remote_sched_param_value_u.ul))
|
2008-04-10 16:54:54 +00:00
|
|
|
return FALSE;
|
|
|
|
break;
|
|
|
|
case VIR_DOMAIN_SCHED_FIELD_DOUBLE:
|
|
|
|
if (!xdr_double (xdrs, &objp->remote_sched_param_value_u.d))
|
|
|
|
return FALSE;
|
|
|
|
break;
|
|
|
|
case VIR_DOMAIN_SCHED_FIELD_BOOLEAN:
|
|
|
|
if (!xdr_int (xdrs, &objp->remote_sched_param_value_u.b))
|
|
|
|
return FALSE;
|
|
|
|
break;
|
|
|
|
default:
|
|
|
|
return FALSE;
|
|
|
|
}
|
|
|
|
return TRUE;
|
2007-06-22 13:16:10 +00:00
|
|
|
}
|
|
|
|
|
|
|
|
bool_t
|
|
|
|
xdr_remote_sched_param (XDR *xdrs, remote_sched_param *objp)
|
|
|
|
{
|
|
|
|
|
2008-04-10 16:54:54 +00:00
|
|
|
if (!xdr_remote_nonnull_string (xdrs, &objp->field))
|
|
|
|
return FALSE;
|
|
|
|
if (!xdr_remote_sched_param_value (xdrs, &objp->value))
|
|
|
|
return FALSE;
|
|
|
|
return TRUE;
|
2007-06-22 13:16:10 +00:00
|
|
|
}
|
|
|
|
|
2007-06-11 11:36:17 +00:00
|
|
|
bool_t
|
|
|
|
xdr_remote_open_args (XDR *xdrs, remote_open_args *objp)
|
|
|
|
{
|
|
|
|
|
2008-04-10 16:54:54 +00:00
|
|
|
if (!xdr_remote_string (xdrs, &objp->name))
|
|
|
|
return FALSE;
|
|
|
|
if (!xdr_int (xdrs, &objp->flags))
|
|
|
|
return FALSE;
|
|
|
|
return TRUE;
|
2007-06-11 11:36:17 +00:00
|
|
|
}
|
|
|
|
|
2007-08-21 09:03:55 +00:00
|
|
|
bool_t
|
|
|
|
xdr_remote_supports_feature_args (XDR *xdrs, remote_supports_feature_args *objp)
|
|
|
|
{
|
|
|
|
|
2008-04-10 16:54:54 +00:00
|
|
|
if (!xdr_int (xdrs, &objp->feature))
|
|
|
|
return FALSE;
|
|
|
|
return TRUE;
|
2007-08-21 09:03:55 +00:00
|
|
|
}
|
|
|
|
|
|
|
|
bool_t
|
|
|
|
xdr_remote_supports_feature_ret (XDR *xdrs, remote_supports_feature_ret *objp)
|
|
|
|
{
|
|
|
|
|
2008-04-10 16:54:54 +00:00
|
|
|
if (!xdr_int (xdrs, &objp->supported))
|
|
|
|
return FALSE;
|
|
|
|
return TRUE;
|
2007-08-21 09:03:55 +00:00
|
|
|
}
|
|
|
|
|
2007-06-11 11:36:17 +00:00
|
|
|
bool_t
|
|
|
|
xdr_remote_get_type_ret (XDR *xdrs, remote_get_type_ret *objp)
|
|
|
|
{
|
|
|
|
|
2008-04-10 16:54:54 +00:00
|
|
|
if (!xdr_remote_nonnull_string (xdrs, &objp->type))
|
|
|
|
return FALSE;
|
|
|
|
return TRUE;
|
2007-06-11 11:36:17 +00:00
|
|
|
}
|
|
|
|
|
|
|
|
bool_t
|
|
|
|
xdr_remote_get_version_ret (XDR *xdrs, remote_get_version_ret *objp)
|
|
|
|
{
|
|
|
|
|
2009-01-28 21:33:56 +00:00
|
|
|
if (!xdr_int64_t (xdrs, &objp->hv_ver))
|
2008-04-10 16:54:54 +00:00
|
|
|
return FALSE;
|
|
|
|
return TRUE;
|
2007-06-11 11:36:17 +00:00
|
|
|
}
|
|
|
|
|
2009-11-12 15:53:26 +00:00
|
|
|
bool_t
|
|
|
|
xdr_remote_get_lib_version_ret (XDR *xdrs, remote_get_lib_version_ret *objp)
|
|
|
|
{
|
|
|
|
|
|
|
|
if (!xdr_int64_t (xdrs, &objp->lib_ver))
|
|
|
|
return FALSE;
|
|
|
|
return TRUE;
|
|
|
|
}
|
|
|
|
|
2007-06-26 11:42:46 +00:00
|
|
|
bool_t
|
|
|
|
xdr_remote_get_hostname_ret (XDR *xdrs, remote_get_hostname_ret *objp)
|
|
|
|
{
|
|
|
|
|
2008-04-10 16:54:54 +00:00
|
|
|
if (!xdr_remote_nonnull_string (xdrs, &objp->hostname))
|
|
|
|
return FALSE;
|
|
|
|
return TRUE;
|
2007-06-26 11:42:46 +00:00
|
|
|
}
|
|
|
|
|
2008-11-17 11:44:51 +00:00
|
|
|
bool_t
|
|
|
|
xdr_remote_get_uri_ret (XDR *xdrs, remote_get_uri_ret *objp)
|
|
|
|
{
|
|
|
|
|
|
|
|
if (!xdr_remote_nonnull_string (xdrs, &objp->uri))
|
|
|
|
return FALSE;
|
|
|
|
return TRUE;
|
|
|
|
}
|
|
|
|
|
2007-06-11 11:36:17 +00:00
|
|
|
bool_t
|
|
|
|
xdr_remote_get_max_vcpus_args (XDR *xdrs, remote_get_max_vcpus_args *objp)
|
|
|
|
{
|
|
|
|
|
2008-04-10 16:54:54 +00:00
|
|
|
if (!xdr_remote_string (xdrs, &objp->type))
|
|
|
|
return FALSE;
|
|
|
|
return TRUE;
|
2007-06-11 11:36:17 +00:00
|
|
|
}
|
|
|
|
|
|
|
|
bool_t
|
|
|
|
xdr_remote_get_max_vcpus_ret (XDR *xdrs, remote_get_max_vcpus_ret *objp)
|
|
|
|
{
|
|
|
|
|
2008-04-10 16:54:54 +00:00
|
|
|
if (!xdr_int (xdrs, &objp->max_vcpus))
|
|
|
|
return FALSE;
|
|
|
|
return TRUE;
|
2007-06-11 11:36:17 +00:00
|
|
|
}
|
|
|
|
|
|
|
|
bool_t
|
|
|
|
xdr_remote_node_get_info_ret (XDR *xdrs, remote_node_get_info_ret *objp)
|
|
|
|
{
|
2008-04-10 16:54:54 +00:00
|
|
|
register int32_t *buf;
|
|
|
|
|
|
|
|
|
|
|
|
if (xdrs->x_op == XDR_ENCODE) {
|
|
|
|
if (!xdr_vector (xdrs, (char *)objp->model, 32,
|
|
|
|
sizeof (char), (xdrproc_t) xdr_char))
|
|
|
|
return FALSE;
|
2009-01-28 21:33:56 +00:00
|
|
|
if (!xdr_int64_t (xdrs, &objp->memory))
|
2008-04-10 16:54:54 +00:00
|
|
|
return FALSE;
|
2009-01-06 18:32:03 +00:00
|
|
|
buf = (int32_t*)XDR_INLINE (xdrs, 6 * BYTES_PER_XDR_UNIT);
|
2008-04-10 16:54:54 +00:00
|
|
|
if (buf == NULL) {
|
|
|
|
if (!xdr_int (xdrs, &objp->cpus))
|
|
|
|
return FALSE;
|
|
|
|
if (!xdr_int (xdrs, &objp->mhz))
|
|
|
|
return FALSE;
|
|
|
|
if (!xdr_int (xdrs, &objp->nodes))
|
|
|
|
return FALSE;
|
|
|
|
if (!xdr_int (xdrs, &objp->sockets))
|
|
|
|
return FALSE;
|
|
|
|
if (!xdr_int (xdrs, &objp->cores))
|
|
|
|
return FALSE;
|
|
|
|
if (!xdr_int (xdrs, &objp->threads))
|
|
|
|
return FALSE;
|
|
|
|
} else {
|
|
|
|
(void)IXDR_PUT_INT32(buf, objp->cpus);
|
|
|
|
(void)IXDR_PUT_INT32(buf, objp->mhz);
|
|
|
|
(void)IXDR_PUT_INT32(buf, objp->nodes);
|
|
|
|
(void)IXDR_PUT_INT32(buf, objp->sockets);
|
|
|
|
(void)IXDR_PUT_INT32(buf, objp->cores);
|
|
|
|
(void)IXDR_PUT_INT32(buf, objp->threads);
|
|
|
|
}
|
|
|
|
return TRUE;
|
|
|
|
} else if (xdrs->x_op == XDR_DECODE) {
|
|
|
|
if (!xdr_vector (xdrs, (char *)objp->model, 32,
|
|
|
|
sizeof (char), (xdrproc_t) xdr_char))
|
|
|
|
return FALSE;
|
2009-01-28 21:33:56 +00:00
|
|
|
if (!xdr_int64_t (xdrs, &objp->memory))
|
2008-04-10 16:54:54 +00:00
|
|
|
return FALSE;
|
2009-01-06 18:32:03 +00:00
|
|
|
buf = (int32_t*)XDR_INLINE (xdrs, 6 * BYTES_PER_XDR_UNIT);
|
2008-04-10 16:54:54 +00:00
|
|
|
if (buf == NULL) {
|
|
|
|
if (!xdr_int (xdrs, &objp->cpus))
|
|
|
|
return FALSE;
|
|
|
|
if (!xdr_int (xdrs, &objp->mhz))
|
|
|
|
return FALSE;
|
|
|
|
if (!xdr_int (xdrs, &objp->nodes))
|
|
|
|
return FALSE;
|
|
|
|
if (!xdr_int (xdrs, &objp->sockets))
|
|
|
|
return FALSE;
|
|
|
|
if (!xdr_int (xdrs, &objp->cores))
|
|
|
|
return FALSE;
|
|
|
|
if (!xdr_int (xdrs, &objp->threads))
|
|
|
|
return FALSE;
|
|
|
|
} else {
|
2009-01-28 21:33:56 +00:00
|
|
|
objp->cpus = IXDR_GET_INT32(buf);
|
|
|
|
objp->mhz = IXDR_GET_INT32(buf);
|
|
|
|
objp->nodes = IXDR_GET_INT32(buf);
|
|
|
|
objp->sockets = IXDR_GET_INT32(buf);
|
|
|
|
objp->cores = IXDR_GET_INT32(buf);
|
|
|
|
objp->threads = IXDR_GET_INT32(buf);
|
2008-04-10 16:54:54 +00:00
|
|
|
}
|
|
|
|
return TRUE;
|
|
|
|
}
|
|
|
|
|
|
|
|
if (!xdr_vector (xdrs, (char *)objp->model, 32,
|
|
|
|
sizeof (char), (xdrproc_t) xdr_char))
|
|
|
|
return FALSE;
|
2009-01-28 21:33:56 +00:00
|
|
|
if (!xdr_int64_t (xdrs, &objp->memory))
|
2008-04-10 16:54:54 +00:00
|
|
|
return FALSE;
|
|
|
|
if (!xdr_int (xdrs, &objp->cpus))
|
|
|
|
return FALSE;
|
|
|
|
if (!xdr_int (xdrs, &objp->mhz))
|
|
|
|
return FALSE;
|
|
|
|
if (!xdr_int (xdrs, &objp->nodes))
|
|
|
|
return FALSE;
|
|
|
|
if (!xdr_int (xdrs, &objp->sockets))
|
|
|
|
return FALSE;
|
|
|
|
if (!xdr_int (xdrs, &objp->cores))
|
|
|
|
return FALSE;
|
|
|
|
if (!xdr_int (xdrs, &objp->threads))
|
|
|
|
return FALSE;
|
|
|
|
return TRUE;
|
2007-06-11 11:36:17 +00:00
|
|
|
}
|
|
|
|
|
|
|
|
bool_t
|
|
|
|
xdr_remote_get_capabilities_ret (XDR *xdrs, remote_get_capabilities_ret *objp)
|
|
|
|
{
|
|
|
|
|
2008-04-10 16:54:54 +00:00
|
|
|
if (!xdr_remote_nonnull_string (xdrs, &objp->capabilities))
|
|
|
|
return FALSE;
|
|
|
|
return TRUE;
|
2007-06-11 11:36:17 +00:00
|
|
|
}
|
|
|
|
|
2008-05-22 15:20:25 +00:00
|
|
|
bool_t
|
|
|
|
xdr_remote_node_get_cells_free_memory_args (XDR *xdrs, remote_node_get_cells_free_memory_args *objp)
|
|
|
|
{
|
|
|
|
|
|
|
|
if (!xdr_int (xdrs, &objp->startCell))
|
|
|
|
return FALSE;
|
|
|
|
if (!xdr_int (xdrs, &objp->maxCells))
|
|
|
|
return FALSE;
|
|
|
|
return TRUE;
|
|
|
|
}
|
|
|
|
|
|
|
|
bool_t
|
|
|
|
xdr_remote_node_get_cells_free_memory_ret (XDR *xdrs, remote_node_get_cells_free_memory_ret *objp)
|
|
|
|
{
|
2008-05-23 07:59:00 +00:00
|
|
|
char **objp_cpp0 = (char **) (void *) &objp->freeMems.freeMems_val;
|
2008-05-22 15:20:25 +00:00
|
|
|
|
2008-05-23 07:59:00 +00:00
|
|
|
if (!xdr_array (xdrs, objp_cpp0, (u_int *) &objp->freeMems.freeMems_len, REMOTE_NODE_MAX_CELLS,
|
2009-01-28 21:33:56 +00:00
|
|
|
sizeof (int64_t), (xdrproc_t) xdr_int64_t))
|
2008-05-22 15:20:25 +00:00
|
|
|
return FALSE;
|
|
|
|
return TRUE;
|
|
|
|
}
|
|
|
|
|
|
|
|
bool_t
|
|
|
|
xdr_remote_node_get_free_memory_ret (XDR *xdrs, remote_node_get_free_memory_ret *objp)
|
|
|
|
{
|
|
|
|
|
2009-01-28 21:33:56 +00:00
|
|
|
if (!xdr_int64_t (xdrs, &objp->freeMem))
|
2008-05-22 15:20:25 +00:00
|
|
|
return FALSE;
|
|
|
|
return TRUE;
|
|
|
|
}
|
|
|
|
|
2007-06-22 13:16:10 +00:00
|
|
|
bool_t
|
|
|
|
xdr_remote_domain_get_scheduler_type_args (XDR *xdrs, remote_domain_get_scheduler_type_args *objp)
|
|
|
|
{
|
|
|
|
|
2008-04-10 16:54:54 +00:00
|
|
|
if (!xdr_remote_nonnull_domain (xdrs, &objp->dom))
|
|
|
|
return FALSE;
|
|
|
|
return TRUE;
|
2007-06-22 13:16:10 +00:00
|
|
|
}
|
|
|
|
|
|
|
|
bool_t
|
|
|
|
xdr_remote_domain_get_scheduler_type_ret (XDR *xdrs, remote_domain_get_scheduler_type_ret *objp)
|
|
|
|
{
|
|
|
|
|
2008-04-10 16:54:54 +00:00
|
|
|
if (!xdr_remote_nonnull_string (xdrs, &objp->type))
|
|
|
|
return FALSE;
|
|
|
|
if (!xdr_int (xdrs, &objp->nparams))
|
|
|
|
return FALSE;
|
|
|
|
return TRUE;
|
2007-06-22 13:16:10 +00:00
|
|
|
}
|
|
|
|
|
|
|
|
bool_t
|
|
|
|
xdr_remote_domain_get_scheduler_parameters_args (XDR *xdrs, remote_domain_get_scheduler_parameters_args *objp)
|
|
|
|
{
|
|
|
|
|
2008-04-10 16:54:54 +00:00
|
|
|
if (!xdr_remote_nonnull_domain (xdrs, &objp->dom))
|
|
|
|
return FALSE;
|
|
|
|
if (!xdr_int (xdrs, &objp->nparams))
|
|
|
|
return FALSE;
|
|
|
|
return TRUE;
|
2007-06-22 13:16:10 +00:00
|
|
|
}
|
|
|
|
|
|
|
|
bool_t
|
|
|
|
xdr_remote_domain_get_scheduler_parameters_ret (XDR *xdrs, remote_domain_get_scheduler_parameters_ret *objp)
|
|
|
|
{
|
2008-04-10 16:54:54 +00:00
|
|
|
char **objp_cpp0 = (char **) (void *) &objp->params.params_val;
|
2007-06-22 13:16:10 +00:00
|
|
|
|
2008-04-10 16:54:54 +00:00
|
|
|
if (!xdr_array (xdrs, objp_cpp0, (u_int *) &objp->params.params_len, REMOTE_DOMAIN_SCHEDULER_PARAMETERS_MAX,
|
|
|
|
sizeof (remote_sched_param), (xdrproc_t) xdr_remote_sched_param))
|
|
|
|
return FALSE;
|
|
|
|
return TRUE;
|
2007-06-22 13:16:10 +00:00
|
|
|
}
|
|
|
|
|
|
|
|
bool_t
|
|
|
|
xdr_remote_domain_set_scheduler_parameters_args (XDR *xdrs, remote_domain_set_scheduler_parameters_args *objp)
|
|
|
|
{
|
2008-04-10 16:54:54 +00:00
|
|
|
char **objp_cpp0 = (char **) (void *) &objp->params.params_val;
|
2007-06-22 13:16:10 +00:00
|
|
|
|
2008-04-10 16:54:54 +00:00
|
|
|
if (!xdr_remote_nonnull_domain (xdrs, &objp->dom))
|
|
|
|
return FALSE;
|
|
|
|
if (!xdr_array (xdrs, objp_cpp0, (u_int *) &objp->params.params_len, REMOTE_DOMAIN_SCHEDULER_PARAMETERS_MAX,
|
|
|
|
sizeof (remote_sched_param), (xdrproc_t) xdr_remote_sched_param))
|
|
|
|
return FALSE;
|
|
|
|
return TRUE;
|
2007-06-22 13:16:10 +00:00
|
|
|
}
|
|
|
|
|
2007-08-21 10:08:12 +00:00
|
|
|
bool_t
|
|
|
|
xdr_remote_domain_block_stats_args (XDR *xdrs, remote_domain_block_stats_args *objp)
|
|
|
|
{
|
|
|
|
|
2008-04-10 16:54:54 +00:00
|
|
|
if (!xdr_remote_nonnull_domain (xdrs, &objp->dom))
|
|
|
|
return FALSE;
|
|
|
|
if (!xdr_remote_nonnull_string (xdrs, &objp->path))
|
|
|
|
return FALSE;
|
|
|
|
return TRUE;
|
2007-08-21 10:08:12 +00:00
|
|
|
}
|
|
|
|
|
|
|
|
bool_t
|
|
|
|
xdr_remote_domain_block_stats_ret (XDR *xdrs, remote_domain_block_stats_ret *objp)
|
|
|
|
{
|
|
|
|
|
2009-01-28 21:33:56 +00:00
|
|
|
if (!xdr_int64_t (xdrs, &objp->rd_req))
|
2008-04-10 16:54:54 +00:00
|
|
|
return FALSE;
|
2009-01-28 21:33:56 +00:00
|
|
|
if (!xdr_int64_t (xdrs, &objp->rd_bytes))
|
2008-04-10 16:54:54 +00:00
|
|
|
return FALSE;
|
2009-01-28 21:33:56 +00:00
|
|
|
if (!xdr_int64_t (xdrs, &objp->wr_req))
|
2008-04-10 16:54:54 +00:00
|
|
|
return FALSE;
|
2009-01-28 21:33:56 +00:00
|
|
|
if (!xdr_int64_t (xdrs, &objp->wr_bytes))
|
2008-04-10 16:54:54 +00:00
|
|
|
return FALSE;
|
2009-01-28 21:33:56 +00:00
|
|
|
if (!xdr_int64_t (xdrs, &objp->errs))
|
2008-04-10 16:54:54 +00:00
|
|
|
return FALSE;
|
|
|
|
return TRUE;
|
2007-08-21 10:08:12 +00:00
|
|
|
}
|
|
|
|
|
|
|
|
bool_t
|
|
|
|
xdr_remote_domain_interface_stats_args (XDR *xdrs, remote_domain_interface_stats_args *objp)
|
|
|
|
{
|
|
|
|
|
2008-04-10 16:54:54 +00:00
|
|
|
if (!xdr_remote_nonnull_domain (xdrs, &objp->dom))
|
|
|
|
return FALSE;
|
|
|
|
if (!xdr_remote_nonnull_string (xdrs, &objp->path))
|
|
|
|
return FALSE;
|
|
|
|
return TRUE;
|
2007-08-21 10:08:12 +00:00
|
|
|
}
|
|
|
|
|
|
|
|
bool_t
|
|
|
|
xdr_remote_domain_interface_stats_ret (XDR *xdrs, remote_domain_interface_stats_ret *objp)
|
|
|
|
{
|
|
|
|
|
2009-01-28 21:33:56 +00:00
|
|
|
if (!xdr_int64_t (xdrs, &objp->rx_bytes))
|
2008-04-10 16:54:54 +00:00
|
|
|
return FALSE;
|
2009-01-28 21:33:56 +00:00
|
|
|
if (!xdr_int64_t (xdrs, &objp->rx_packets))
|
2008-04-10 16:54:54 +00:00
|
|
|
return FALSE;
|
2009-01-28 21:33:56 +00:00
|
|
|
if (!xdr_int64_t (xdrs, &objp->rx_errs))
|
2008-04-10 16:54:54 +00:00
|
|
|
return FALSE;
|
2009-01-28 21:33:56 +00:00
|
|
|
if (!xdr_int64_t (xdrs, &objp->rx_drop))
|
2008-04-10 16:54:54 +00:00
|
|
|
return FALSE;
|
2009-01-28 21:33:56 +00:00
|
|
|
if (!xdr_int64_t (xdrs, &objp->tx_bytes))
|
2008-04-10 16:54:54 +00:00
|
|
|
return FALSE;
|
2009-01-28 21:33:56 +00:00
|
|
|
if (!xdr_int64_t (xdrs, &objp->tx_packets))
|
2008-04-10 16:54:54 +00:00
|
|
|
return FALSE;
|
2009-01-28 21:33:56 +00:00
|
|
|
if (!xdr_int64_t (xdrs, &objp->tx_errs))
|
2008-04-10 16:54:54 +00:00
|
|
|
return FALSE;
|
2009-01-28 21:33:56 +00:00
|
|
|
if (!xdr_int64_t (xdrs, &objp->tx_drop))
|
2008-04-10 16:54:54 +00:00
|
|
|
return FALSE;
|
|
|
|
return TRUE;
|
2007-08-21 10:08:12 +00:00
|
|
|
}
|
|
|
|
|
2009-12-20 12:43:19 +00:00
|
|
|
bool_t
|
|
|
|
xdr_remote_domain_memory_stats_args (XDR *xdrs, remote_domain_memory_stats_args *objp)
|
|
|
|
{
|
|
|
|
|
|
|
|
if (!xdr_remote_nonnull_domain (xdrs, &objp->dom))
|
|
|
|
return FALSE;
|
|
|
|
if (!xdr_u_int (xdrs, &objp->maxStats))
|
|
|
|
return FALSE;
|
|
|
|
if (!xdr_u_int (xdrs, &objp->flags))
|
|
|
|
return FALSE;
|
|
|
|
return TRUE;
|
|
|
|
}
|
|
|
|
|
|
|
|
bool_t
|
|
|
|
xdr_remote_domain_memory_stat (XDR *xdrs, remote_domain_memory_stat *objp)
|
|
|
|
{
|
|
|
|
|
|
|
|
if (!xdr_int (xdrs, &objp->tag))
|
|
|
|
return FALSE;
|
|
|
|
if (!xdr_uint64_t (xdrs, &objp->val))
|
|
|
|
return FALSE;
|
|
|
|
return TRUE;
|
|
|
|
}
|
|
|
|
|
|
|
|
bool_t
|
|
|
|
xdr_remote_domain_memory_stats_ret (XDR *xdrs, remote_domain_memory_stats_ret *objp)
|
|
|
|
{
|
|
|
|
char **objp_cpp0 = (char **) (void *) &objp->stats.stats_val;
|
|
|
|
|
|
|
|
if (!xdr_array (xdrs, objp_cpp0, (u_int *) &objp->stats.stats_len, REMOTE_DOMAIN_MEMORY_STATS_MAX,
|
|
|
|
sizeof (remote_domain_memory_stat), (xdrproc_t) xdr_remote_domain_memory_stat))
|
|
|
|
return FALSE;
|
|
|
|
return TRUE;
|
|
|
|
}
|
|
|
|
|
2008-06-05 21:12:26 +00:00
|
|
|
bool_t
|
|
|
|
xdr_remote_domain_block_peek_args (XDR *xdrs, remote_domain_block_peek_args *objp)
|
|
|
|
{
|
|
|
|
|
|
|
|
if (!xdr_remote_nonnull_domain (xdrs, &objp->dom))
|
|
|
|
return FALSE;
|
|
|
|
if (!xdr_remote_nonnull_string (xdrs, &objp->path))
|
|
|
|
return FALSE;
|
2009-01-28 21:33:56 +00:00
|
|
|
if (!xdr_uint64_t (xdrs, &objp->offset))
|
2008-06-05 21:12:26 +00:00
|
|
|
return FALSE;
|
|
|
|
if (!xdr_u_int (xdrs, &objp->size))
|
|
|
|
return FALSE;
|
|
|
|
if (!xdr_u_int (xdrs, &objp->flags))
|
|
|
|
return FALSE;
|
|
|
|
return TRUE;
|
|
|
|
}
|
|
|
|
|
|
|
|
bool_t
|
|
|
|
xdr_remote_domain_block_peek_ret (XDR *xdrs, remote_domain_block_peek_ret *objp)
|
|
|
|
{
|
|
|
|
char **objp_cpp0 = (char **) (void *) &objp->buffer.buffer_val;
|
|
|
|
|
|
|
|
if (!xdr_bytes (xdrs, objp_cpp0, (u_int *) &objp->buffer.buffer_len, REMOTE_DOMAIN_BLOCK_PEEK_BUFFER_MAX))
|
|
|
|
return FALSE;
|
|
|
|
return TRUE;
|
|
|
|
}
|
|
|
|
|
2008-06-10 10:43:28 +00:00
|
|
|
bool_t
|
|
|
|
xdr_remote_domain_memory_peek_args (XDR *xdrs, remote_domain_memory_peek_args *objp)
|
|
|
|
{
|
|
|
|
|
|
|
|
if (!xdr_remote_nonnull_domain (xdrs, &objp->dom))
|
|
|
|
return FALSE;
|
2009-01-28 21:33:56 +00:00
|
|
|
if (!xdr_uint64_t (xdrs, &objp->offset))
|
2008-06-10 10:43:28 +00:00
|
|
|
return FALSE;
|
|
|
|
if (!xdr_u_int (xdrs, &objp->size))
|
|
|
|
return FALSE;
|
|
|
|
if (!xdr_u_int (xdrs, &objp->flags))
|
|
|
|
return FALSE;
|
|
|
|
return TRUE;
|
|
|
|
}
|
|
|
|
|
|
|
|
bool_t
|
|
|
|
xdr_remote_domain_memory_peek_ret (XDR *xdrs, remote_domain_memory_peek_ret *objp)
|
|
|
|
{
|
|
|
|
char **objp_cpp0 = (char **) (void *) &objp->buffer.buffer_val;
|
|
|
|
|
|
|
|
if (!xdr_bytes (xdrs, objp_cpp0, (u_int *) &objp->buffer.buffer_len, REMOTE_DOMAIN_MEMORY_PEEK_BUFFER_MAX))
|
|
|
|
return FALSE;
|
|
|
|
return TRUE;
|
|
|
|
}
|
|
|
|
|
2010-04-27 19:29:15 +00:00
|
|
|
bool_t
|
|
|
|
xdr_remote_domain_get_block_info_args (XDR *xdrs, remote_domain_get_block_info_args *objp)
|
|
|
|
{
|
|
|
|
|
|
|
|
if (!xdr_remote_nonnull_domain (xdrs, &objp->dom))
|
|
|
|
return FALSE;
|
|
|
|
if (!xdr_remote_nonnull_string (xdrs, &objp->path))
|
|
|
|
return FALSE;
|
|
|
|
if (!xdr_u_int (xdrs, &objp->flags))
|
|
|
|
return FALSE;
|
|
|
|
return TRUE;
|
|
|
|
}
|
|
|
|
|
|
|
|
bool_t
|
|
|
|
xdr_remote_domain_get_block_info_ret (XDR *xdrs, remote_domain_get_block_info_ret *objp)
|
|
|
|
{
|
|
|
|
|
|
|
|
if (!xdr_uint64_t (xdrs, &objp->allocation))
|
|
|
|
return FALSE;
|
|
|
|
if (!xdr_uint64_t (xdrs, &objp->capacity))
|
|
|
|
return FALSE;
|
|
|
|
if (!xdr_uint64_t (xdrs, &objp->physical))
|
|
|
|
return FALSE;
|
|
|
|
return TRUE;
|
|
|
|
}
|
|
|
|
|
2007-06-11 11:36:17 +00:00
|
|
|
bool_t
|
|
|
|
xdr_remote_list_domains_args (XDR *xdrs, remote_list_domains_args *objp)
|
|
|
|
{
|
|
|
|
|
2008-04-10 16:54:54 +00:00
|
|
|
if (!xdr_int (xdrs, &objp->maxids))
|
|
|
|
return FALSE;
|
|
|
|
return TRUE;
|
2007-06-11 11:36:17 +00:00
|
|
|
}
|
|
|
|
|
|
|
|
bool_t
|
|
|
|
xdr_remote_list_domains_ret (XDR *xdrs, remote_list_domains_ret *objp)
|
|
|
|
{
|
2008-04-10 16:54:54 +00:00
|
|
|
char **objp_cpp0 = (char **) (void *) &objp->ids.ids_val;
|
2007-06-11 11:36:17 +00:00
|
|
|
|
2008-04-10 16:54:54 +00:00
|
|
|
if (!xdr_array (xdrs, objp_cpp0, (u_int *) &objp->ids.ids_len, REMOTE_DOMAIN_ID_LIST_MAX,
|
|
|
|
sizeof (int), (xdrproc_t) xdr_int))
|
|
|
|
return FALSE;
|
|
|
|
return TRUE;
|
2007-06-11 11:36:17 +00:00
|
|
|
}
|
|
|
|
|
|
|
|
bool_t
|
|
|
|
xdr_remote_num_of_domains_ret (XDR *xdrs, remote_num_of_domains_ret *objp)
|
|
|
|
{
|
|
|
|
|
2008-04-10 16:54:54 +00:00
|
|
|
if (!xdr_int (xdrs, &objp->num))
|
|
|
|
return FALSE;
|
|
|
|
return TRUE;
|
2007-06-11 11:36:17 +00:00
|
|
|
}
|
|
|
|
|
|
|
|
bool_t
|
2008-10-10 09:32:27 +00:00
|
|
|
xdr_remote_domain_create_xml_args (XDR *xdrs, remote_domain_create_xml_args *objp)
|
2007-06-11 11:36:17 +00:00
|
|
|
{
|
|
|
|
|
2008-04-10 16:54:54 +00:00
|
|
|
if (!xdr_remote_nonnull_string (xdrs, &objp->xml_desc))
|
|
|
|
return FALSE;
|
|
|
|
if (!xdr_int (xdrs, &objp->flags))
|
|
|
|
return FALSE;
|
|
|
|
return TRUE;
|
2007-06-11 11:36:17 +00:00
|
|
|
}
|
|
|
|
|
|
|
|
bool_t
|
2008-10-10 09:32:27 +00:00
|
|
|
xdr_remote_domain_create_xml_ret (XDR *xdrs, remote_domain_create_xml_ret *objp)
|
2007-06-11 11:36:17 +00:00
|
|
|
{
|
|
|
|
|
2008-04-10 16:54:54 +00:00
|
|
|
if (!xdr_remote_nonnull_domain (xdrs, &objp->dom))
|
|
|
|
return FALSE;
|
|
|
|
return TRUE;
|
2007-06-11 11:36:17 +00:00
|
|
|
}
|
|
|
|
|
|
|
|
bool_t
|
|
|
|
xdr_remote_domain_lookup_by_id_args (XDR *xdrs, remote_domain_lookup_by_id_args *objp)
|
|
|
|
{
|
|
|
|
|
2008-04-10 16:54:54 +00:00
|
|
|
if (!xdr_int (xdrs, &objp->id))
|
|
|
|
return FALSE;
|
|
|
|
return TRUE;
|
2007-06-11 11:36:17 +00:00
|
|
|
}
|
|
|
|
|
|
|
|
bool_t
|
|
|
|
xdr_remote_domain_lookup_by_id_ret (XDR *xdrs, remote_domain_lookup_by_id_ret *objp)
|
|
|
|
{
|
|
|
|
|
2008-04-10 16:54:54 +00:00
|
|
|
if (!xdr_remote_nonnull_domain (xdrs, &objp->dom))
|
|
|
|
return FALSE;
|
|
|
|
return TRUE;
|
2007-06-11 11:36:17 +00:00
|
|
|
}
|
|
|
|
|
|
|
|
bool_t
|
|
|
|
xdr_remote_domain_lookup_by_uuid_args (XDR *xdrs, remote_domain_lookup_by_uuid_args *objp)
|
|
|
|
{
|
|
|
|
|
2008-04-10 16:54:54 +00:00
|
|
|
if (!xdr_remote_uuid (xdrs, objp->uuid))
|
|
|
|
return FALSE;
|
|
|
|
return TRUE;
|
2007-06-11 11:36:17 +00:00
|
|
|
}
|
|
|
|
|
|
|
|
bool_t
|
|
|
|
xdr_remote_domain_lookup_by_uuid_ret (XDR *xdrs, remote_domain_lookup_by_uuid_ret *objp)
|
|
|
|
{
|
|
|
|
|
2008-04-10 16:54:54 +00:00
|
|
|
if (!xdr_remote_nonnull_domain (xdrs, &objp->dom))
|
|
|
|
return FALSE;
|
|
|
|
return TRUE;
|
2007-06-11 11:36:17 +00:00
|
|
|
}
|
|
|
|
|
|
|
|
bool_t
|
|
|
|
xdr_remote_domain_lookup_by_name_args (XDR *xdrs, remote_domain_lookup_by_name_args *objp)
|
|
|
|
{
|
|
|
|
|
2008-04-10 16:54:54 +00:00
|
|
|
if (!xdr_remote_nonnull_string (xdrs, &objp->name))
|
|
|
|
return FALSE;
|
|
|
|
return TRUE;
|
2007-06-11 11:36:17 +00:00
|
|
|
}
|
|
|
|
|
|
|
|
bool_t
|
|
|
|
xdr_remote_domain_lookup_by_name_ret (XDR *xdrs, remote_domain_lookup_by_name_ret *objp)
|
|
|
|
{
|
|
|
|
|
2008-04-10 16:54:54 +00:00
|
|
|
if (!xdr_remote_nonnull_domain (xdrs, &objp->dom))
|
|
|
|
return FALSE;
|
|
|
|
return TRUE;
|
2007-06-11 11:36:17 +00:00
|
|
|
}
|
|
|
|
|
|
|
|
bool_t
|
|
|
|
xdr_remote_domain_suspend_args (XDR *xdrs, remote_domain_suspend_args *objp)
|
|
|
|
{
|
|
|
|
|
2008-04-10 16:54:54 +00:00
|
|
|
if (!xdr_remote_nonnull_domain (xdrs, &objp->dom))
|
|
|
|
return FALSE;
|
|
|
|
return TRUE;
|
2007-06-11 11:36:17 +00:00
|
|
|
}
|
|
|
|
|
|
|
|
bool_t
|
|
|
|
xdr_remote_domain_resume_args (XDR *xdrs, remote_domain_resume_args *objp)
|
|
|
|
{
|
|
|
|
|
2008-04-10 16:54:54 +00:00
|
|
|
if (!xdr_remote_nonnull_domain (xdrs, &objp->dom))
|
|
|
|
return FALSE;
|
|
|
|
return TRUE;
|
2007-06-11 11:36:17 +00:00
|
|
|
}
|
|
|
|
|
|
|
|
bool_t
|
|
|
|
xdr_remote_domain_shutdown_args (XDR *xdrs, remote_domain_shutdown_args *objp)
|
|
|
|
{
|
|
|
|
|
2008-04-10 16:54:54 +00:00
|
|
|
if (!xdr_remote_nonnull_domain (xdrs, &objp->dom))
|
|
|
|
return FALSE;
|
|
|
|
return TRUE;
|
2007-06-11 11:36:17 +00:00
|
|
|
}
|
|
|
|
|
|
|
|
bool_t
|
|
|
|
xdr_remote_domain_reboot_args (XDR *xdrs, remote_domain_reboot_args *objp)
|
|
|
|
{
|
|
|
|
|
2008-04-10 16:54:54 +00:00
|
|
|
if (!xdr_remote_nonnull_domain (xdrs, &objp->dom))
|
|
|
|
return FALSE;
|
|
|
|
if (!xdr_int (xdrs, &objp->flags))
|
|
|
|
return FALSE;
|
|
|
|
return TRUE;
|
2007-06-11 11:36:17 +00:00
|
|
|
}
|
|
|
|
|
|
|
|
bool_t
|
|
|
|
xdr_remote_domain_destroy_args (XDR *xdrs, remote_domain_destroy_args *objp)
|
|
|
|
{
|
|
|
|
|
2008-04-10 16:54:54 +00:00
|
|
|
if (!xdr_remote_nonnull_domain (xdrs, &objp->dom))
|
|
|
|
return FALSE;
|
|
|
|
return TRUE;
|
2007-06-11 11:36:17 +00:00
|
|
|
}
|
|
|
|
|
|
|
|
bool_t
|
|
|
|
xdr_remote_domain_get_os_type_args (XDR *xdrs, remote_domain_get_os_type_args *objp)
|
|
|
|
{
|
|
|
|
|
2008-04-10 16:54:54 +00:00
|
|
|
if (!xdr_remote_nonnull_domain (xdrs, &objp->dom))
|
|
|
|
return FALSE;
|
|
|
|
return TRUE;
|
2007-06-11 11:36:17 +00:00
|
|
|
}
|
|
|
|
|
|
|
|
bool_t
|
|
|
|
xdr_remote_domain_get_os_type_ret (XDR *xdrs, remote_domain_get_os_type_ret *objp)
|
|
|
|
{
|
|
|
|
|
2008-04-10 16:54:54 +00:00
|
|
|
if (!xdr_remote_nonnull_string (xdrs, &objp->type))
|
|
|
|
return FALSE;
|
|
|
|
return TRUE;
|
2007-06-11 11:36:17 +00:00
|
|
|
}
|
|
|
|
|
|
|
|
bool_t
|
|
|
|
xdr_remote_domain_get_max_memory_args (XDR *xdrs, remote_domain_get_max_memory_args *objp)
|
|
|
|
{
|
|
|
|
|
2008-04-10 16:54:54 +00:00
|
|
|
if (!xdr_remote_nonnull_domain (xdrs, &objp->dom))
|
|
|
|
return FALSE;
|
|
|
|
return TRUE;
|
2007-06-11 11:36:17 +00:00
|
|
|
}
|
|
|
|
|
|
|
|
bool_t
|
|
|
|
xdr_remote_domain_get_max_memory_ret (XDR *xdrs, remote_domain_get_max_memory_ret *objp)
|
|
|
|
{
|
|
|
|
|
2009-01-28 21:33:56 +00:00
|
|
|
if (!xdr_uint64_t (xdrs, &objp->memory))
|
2008-04-10 16:54:54 +00:00
|
|
|
return FALSE;
|
|
|
|
return TRUE;
|
2007-06-11 11:36:17 +00:00
|
|
|
}
|
|
|
|
|
|
|
|
bool_t
|
|
|
|
xdr_remote_domain_set_max_memory_args (XDR *xdrs, remote_domain_set_max_memory_args *objp)
|
|
|
|
{
|
|
|
|
|
2008-04-10 16:54:54 +00:00
|
|
|
if (!xdr_remote_nonnull_domain (xdrs, &objp->dom))
|
|
|
|
return FALSE;
|
2009-01-28 21:33:56 +00:00
|
|
|
if (!xdr_uint64_t (xdrs, &objp->memory))
|
2008-04-10 16:54:54 +00:00
|
|
|
return FALSE;
|
|
|
|
return TRUE;
|
2007-06-11 11:36:17 +00:00
|
|
|
}
|
|
|
|
|
|
|
|
bool_t
|
|
|
|
xdr_remote_domain_set_memory_args (XDR *xdrs, remote_domain_set_memory_args *objp)
|
|
|
|
{
|
|
|
|
|
2008-04-10 16:54:54 +00:00
|
|
|
if (!xdr_remote_nonnull_domain (xdrs, &objp->dom))
|
|
|
|
return FALSE;
|
2009-01-28 21:33:56 +00:00
|
|
|
if (!xdr_uint64_t (xdrs, &objp->memory))
|
2008-04-10 16:54:54 +00:00
|
|
|
return FALSE;
|
|
|
|
return TRUE;
|
2007-06-11 11:36:17 +00:00
|
|
|
}
|
|
|
|
|
|
|
|
bool_t
|
|
|
|
xdr_remote_domain_get_info_args (XDR *xdrs, remote_domain_get_info_args *objp)
|
|
|
|
{
|
|
|
|
|
2008-04-10 16:54:54 +00:00
|
|
|
if (!xdr_remote_nonnull_domain (xdrs, &objp->dom))
|
|
|
|
return FALSE;
|
|
|
|
return TRUE;
|
2007-06-11 11:36:17 +00:00
|
|
|
}
|
|
|
|
|
|
|
|
bool_t
|
|
|
|
xdr_remote_domain_get_info_ret (XDR *xdrs, remote_domain_get_info_ret *objp)
|
|
|
|
{
|
|
|
|
|
2008-04-10 16:54:54 +00:00
|
|
|
if (!xdr_u_char (xdrs, &objp->state))
|
|
|
|
return FALSE;
|
2009-01-28 21:33:56 +00:00
|
|
|
if (!xdr_uint64_t (xdrs, &objp->max_mem))
|
2008-04-10 16:54:54 +00:00
|
|
|
return FALSE;
|
2009-01-28 21:33:56 +00:00
|
|
|
if (!xdr_uint64_t (xdrs, &objp->memory))
|
2008-04-10 16:54:54 +00:00
|
|
|
return FALSE;
|
|
|
|
if (!xdr_u_short (xdrs, &objp->nr_virt_cpu))
|
|
|
|
return FALSE;
|
2009-01-28 21:33:56 +00:00
|
|
|
if (!xdr_uint64_t (xdrs, &objp->cpu_time))
|
2008-04-10 16:54:54 +00:00
|
|
|
return FALSE;
|
|
|
|
return TRUE;
|
2007-06-11 11:36:17 +00:00
|
|
|
}
|
|
|
|
|
|
|
|
bool_t
|
|
|
|
xdr_remote_domain_save_args (XDR *xdrs, remote_domain_save_args *objp)
|
|
|
|
{
|
|
|
|
|
2008-04-10 16:54:54 +00:00
|
|
|
if (!xdr_remote_nonnull_domain (xdrs, &objp->dom))
|
|
|
|
return FALSE;
|
|
|
|
if (!xdr_remote_nonnull_string (xdrs, &objp->to))
|
|
|
|
return FALSE;
|
|
|
|
return TRUE;
|
2007-06-11 11:36:17 +00:00
|
|
|
}
|
|
|
|
|
|
|
|
bool_t
|
|
|
|
xdr_remote_domain_restore_args (XDR *xdrs, remote_domain_restore_args *objp)
|
|
|
|
{
|
|
|
|
|
2008-04-10 16:54:54 +00:00
|
|
|
if (!xdr_remote_nonnull_string (xdrs, &objp->from))
|
|
|
|
return FALSE;
|
|
|
|
return TRUE;
|
2007-06-11 11:36:17 +00:00
|
|
|
}
|
|
|
|
|
|
|
|
bool_t
|
|
|
|
xdr_remote_domain_core_dump_args (XDR *xdrs, remote_domain_core_dump_args *objp)
|
|
|
|
{
|
|
|
|
|
2008-04-10 16:54:54 +00:00
|
|
|
if (!xdr_remote_nonnull_domain (xdrs, &objp->dom))
|
|
|
|
return FALSE;
|
|
|
|
if (!xdr_remote_nonnull_string (xdrs, &objp->to))
|
|
|
|
return FALSE;
|
|
|
|
if (!xdr_int (xdrs, &objp->flags))
|
|
|
|
return FALSE;
|
|
|
|
return TRUE;
|
2007-06-11 11:36:17 +00:00
|
|
|
}
|
|
|
|
|
|
|
|
bool_t
|
|
|
|
xdr_remote_domain_dump_xml_args (XDR *xdrs, remote_domain_dump_xml_args *objp)
|
|
|
|
{
|
|
|
|
|
2008-04-10 16:54:54 +00:00
|
|
|
if (!xdr_remote_nonnull_domain (xdrs, &objp->dom))
|
|
|
|
return FALSE;
|
|
|
|
if (!xdr_int (xdrs, &objp->flags))
|
|
|
|
return FALSE;
|
|
|
|
return TRUE;
|
2007-06-11 11:36:17 +00:00
|
|
|
}
|
|
|
|
|
|
|
|
bool_t
|
|
|
|
xdr_remote_domain_dump_xml_ret (XDR *xdrs, remote_domain_dump_xml_ret *objp)
|
|
|
|
{
|
|
|
|
|
2008-04-10 16:54:54 +00:00
|
|
|
if (!xdr_remote_nonnull_string (xdrs, &objp->xml))
|
|
|
|
return FALSE;
|
|
|
|
return TRUE;
|
2007-06-11 11:36:17 +00:00
|
|
|
}
|
|
|
|
|
2007-08-21 09:31:12 +00:00
|
|
|
bool_t
|
|
|
|
xdr_remote_domain_migrate_prepare_args (XDR *xdrs, remote_domain_migrate_prepare_args *objp)
|
|
|
|
{
|
|
|
|
|
2008-04-10 16:54:54 +00:00
|
|
|
if (!xdr_remote_string (xdrs, &objp->uri_in))
|
|
|
|
return FALSE;
|
2009-01-28 21:33:56 +00:00
|
|
|
if (!xdr_uint64_t (xdrs, &objp->flags))
|
2008-04-10 16:54:54 +00:00
|
|
|
return FALSE;
|
|
|
|
if (!xdr_remote_string (xdrs, &objp->dname))
|
|
|
|
return FALSE;
|
2009-01-28 21:33:56 +00:00
|
|
|
if (!xdr_uint64_t (xdrs, &objp->resource))
|
2008-04-10 16:54:54 +00:00
|
|
|
return FALSE;
|
|
|
|
return TRUE;
|
2007-08-21 09:31:12 +00:00
|
|
|
}
|
|
|
|
|
|
|
|
bool_t
|
|
|
|
xdr_remote_domain_migrate_prepare_ret (XDR *xdrs, remote_domain_migrate_prepare_ret *objp)
|
|
|
|
{
|
2008-04-10 16:54:54 +00:00
|
|
|
char **objp_cpp0 = (char **) (void *) &objp->cookie.cookie_val;
|
2007-08-21 09:31:12 +00:00
|
|
|
|
2008-04-10 16:54:54 +00:00
|
|
|
if (!xdr_bytes (xdrs, objp_cpp0, (u_int *) &objp->cookie.cookie_len, REMOTE_MIGRATE_COOKIE_MAX))
|
|
|
|
return FALSE;
|
|
|
|
if (!xdr_remote_string (xdrs, &objp->uri_out))
|
|
|
|
return FALSE;
|
|
|
|
return TRUE;
|
2007-08-21 09:31:12 +00:00
|
|
|
}
|
|
|
|
|
|
|
|
bool_t
|
|
|
|
xdr_remote_domain_migrate_perform_args (XDR *xdrs, remote_domain_migrate_perform_args *objp)
|
|
|
|
{
|
2008-04-10 16:54:54 +00:00
|
|
|
char **objp_cpp0 = (char **) (void *) &objp->cookie.cookie_val;
|
2007-08-21 09:31:12 +00:00
|
|
|
|
2008-04-10 16:54:54 +00:00
|
|
|
if (!xdr_remote_nonnull_domain (xdrs, &objp->dom))
|
|
|
|
return FALSE;
|
|
|
|
if (!xdr_bytes (xdrs, objp_cpp0, (u_int *) &objp->cookie.cookie_len, REMOTE_MIGRATE_COOKIE_MAX))
|
|
|
|
return FALSE;
|
|
|
|
if (!xdr_remote_nonnull_string (xdrs, &objp->uri))
|
|
|
|
return FALSE;
|
2009-01-28 21:33:56 +00:00
|
|
|
if (!xdr_uint64_t (xdrs, &objp->flags))
|
2008-04-10 16:54:54 +00:00
|
|
|
return FALSE;
|
|
|
|
if (!xdr_remote_string (xdrs, &objp->dname))
|
|
|
|
return FALSE;
|
2009-01-28 21:33:56 +00:00
|
|
|
if (!xdr_uint64_t (xdrs, &objp->resource))
|
2008-04-10 16:54:54 +00:00
|
|
|
return FALSE;
|
|
|
|
return TRUE;
|
2007-08-21 09:31:12 +00:00
|
|
|
}
|
|
|
|
|
|
|
|
bool_t
|
|
|
|
xdr_remote_domain_migrate_finish_args (XDR *xdrs, remote_domain_migrate_finish_args *objp)
|
|
|
|
{
|
2008-04-10 16:54:54 +00:00
|
|
|
char **objp_cpp0 = (char **) (void *) &objp->cookie.cookie_val;
|
2007-08-21 09:31:12 +00:00
|
|
|
|
2008-04-10 16:54:54 +00:00
|
|
|
if (!xdr_remote_nonnull_string (xdrs, &objp->dname))
|
|
|
|
return FALSE;
|
|
|
|
if (!xdr_bytes (xdrs, objp_cpp0, (u_int *) &objp->cookie.cookie_len, REMOTE_MIGRATE_COOKIE_MAX))
|
|
|
|
return FALSE;
|
|
|
|
if (!xdr_remote_nonnull_string (xdrs, &objp->uri))
|
|
|
|
return FALSE;
|
2009-01-28 21:33:56 +00:00
|
|
|
if (!xdr_uint64_t (xdrs, &objp->flags))
|
2008-04-10 16:54:54 +00:00
|
|
|
return FALSE;
|
|
|
|
return TRUE;
|
2007-08-21 09:31:12 +00:00
|
|
|
}
|
|
|
|
|
|
|
|
bool_t
|
|
|
|
xdr_remote_domain_migrate_finish_ret (XDR *xdrs, remote_domain_migrate_finish_ret *objp)
|
2008-11-14 08:42:47 +00:00
|
|
|
{
|
|
|
|
|
|
|
|
if (!xdr_remote_nonnull_domain (xdrs, &objp->ddom))
|
|
|
|
return FALSE;
|
|
|
|
return TRUE;
|
|
|
|
}
|
|
|
|
|
|
|
|
bool_t
|
|
|
|
xdr_remote_domain_migrate_prepare2_args (XDR *xdrs, remote_domain_migrate_prepare2_args *objp)
|
|
|
|
{
|
|
|
|
|
|
|
|
if (!xdr_remote_string (xdrs, &objp->uri_in))
|
|
|
|
return FALSE;
|
2009-01-28 21:33:56 +00:00
|
|
|
if (!xdr_uint64_t (xdrs, &objp->flags))
|
2008-11-14 08:42:47 +00:00
|
|
|
return FALSE;
|
|
|
|
if (!xdr_remote_string (xdrs, &objp->dname))
|
|
|
|
return FALSE;
|
2009-01-28 21:33:56 +00:00
|
|
|
if (!xdr_uint64_t (xdrs, &objp->resource))
|
2008-11-14 08:42:47 +00:00
|
|
|
return FALSE;
|
|
|
|
if (!xdr_remote_nonnull_string (xdrs, &objp->dom_xml))
|
|
|
|
return FALSE;
|
|
|
|
return TRUE;
|
|
|
|
}
|
|
|
|
|
|
|
|
bool_t
|
|
|
|
xdr_remote_domain_migrate_prepare2_ret (XDR *xdrs, remote_domain_migrate_prepare2_ret *objp)
|
|
|
|
{
|
|
|
|
char **objp_cpp0 = (char **) (void *) &objp->cookie.cookie_val;
|
|
|
|
|
|
|
|
if (!xdr_bytes (xdrs, objp_cpp0, (u_int *) &objp->cookie.cookie_len, REMOTE_MIGRATE_COOKIE_MAX))
|
|
|
|
return FALSE;
|
|
|
|
if (!xdr_remote_string (xdrs, &objp->uri_out))
|
|
|
|
return FALSE;
|
|
|
|
return TRUE;
|
|
|
|
}
|
|
|
|
|
|
|
|
bool_t
|
|
|
|
xdr_remote_domain_migrate_finish2_args (XDR *xdrs, remote_domain_migrate_finish2_args *objp)
|
|
|
|
{
|
|
|
|
char **objp_cpp0 = (char **) (void *) &objp->cookie.cookie_val;
|
|
|
|
|
|
|
|
if (!xdr_remote_nonnull_string (xdrs, &objp->dname))
|
|
|
|
return FALSE;
|
|
|
|
if (!xdr_bytes (xdrs, objp_cpp0, (u_int *) &objp->cookie.cookie_len, REMOTE_MIGRATE_COOKIE_MAX))
|
|
|
|
return FALSE;
|
|
|
|
if (!xdr_remote_nonnull_string (xdrs, &objp->uri))
|
|
|
|
return FALSE;
|
2009-01-28 21:33:56 +00:00
|
|
|
if (!xdr_uint64_t (xdrs, &objp->flags))
|
2008-11-14 08:42:47 +00:00
|
|
|
return FALSE;
|
|
|
|
if (!xdr_int (xdrs, &objp->retcode))
|
|
|
|
return FALSE;
|
|
|
|
return TRUE;
|
|
|
|
}
|
|
|
|
|
|
|
|
bool_t
|
|
|
|
xdr_remote_domain_migrate_finish2_ret (XDR *xdrs, remote_domain_migrate_finish2_ret *objp)
|
2007-08-21 09:31:12 +00:00
|
|
|
{
|
|
|
|
|
2008-04-10 16:54:54 +00:00
|
|
|
if (!xdr_remote_nonnull_domain (xdrs, &objp->ddom))
|
|
|
|
return FALSE;
|
|
|
|
return TRUE;
|
2007-08-21 09:31:12 +00:00
|
|
|
}
|
|
|
|
|
2007-06-11 11:36:17 +00:00
|
|
|
bool_t
|
|
|
|
xdr_remote_list_defined_domains_args (XDR *xdrs, remote_list_defined_domains_args *objp)
|
|
|
|
{
|
|
|
|
|
2008-04-10 16:54:54 +00:00
|
|
|
if (!xdr_int (xdrs, &objp->maxnames))
|
|
|
|
return FALSE;
|
|
|
|
return TRUE;
|
2007-06-11 11:36:17 +00:00
|
|
|
}
|
|
|
|
|
|
|
|
bool_t
|
|
|
|
xdr_remote_list_defined_domains_ret (XDR *xdrs, remote_list_defined_domains_ret *objp)
|
|
|
|
{
|
2008-04-10 16:54:54 +00:00
|
|
|
char **objp_cpp0 = (char **) (void *) &objp->names.names_val;
|
2007-06-11 11:36:17 +00:00
|
|
|
|
2008-04-10 16:54:54 +00:00
|
|
|
if (!xdr_array (xdrs, objp_cpp0, (u_int *) &objp->names.names_len, REMOTE_DOMAIN_NAME_LIST_MAX,
|
|
|
|
sizeof (remote_nonnull_string), (xdrproc_t) xdr_remote_nonnull_string))
|
|
|
|
return FALSE;
|
|
|
|
return TRUE;
|
2007-06-11 11:36:17 +00:00
|
|
|
}
|
|
|
|
|
|
|
|
bool_t
|
|
|
|
xdr_remote_num_of_defined_domains_ret (XDR *xdrs, remote_num_of_defined_domains_ret *objp)
|
|
|
|
{
|
|
|
|
|
2008-04-10 16:54:54 +00:00
|
|
|
if (!xdr_int (xdrs, &objp->num))
|
|
|
|
return FALSE;
|
|
|
|
return TRUE;
|
2007-06-11 11:36:17 +00:00
|
|
|
}
|
|
|
|
|
|
|
|
bool_t
|
|
|
|
xdr_remote_domain_create_args (XDR *xdrs, remote_domain_create_args *objp)
|
|
|
|
{
|
|
|
|
|
2008-04-10 16:54:54 +00:00
|
|
|
if (!xdr_remote_nonnull_domain (xdrs, &objp->dom))
|
|
|
|
return FALSE;
|
|
|
|
return TRUE;
|
2007-06-11 11:36:17 +00:00
|
|
|
}
|
|
|
|
|
2010-06-10 14:53:28 +00:00
|
|
|
bool_t
|
|
|
|
xdr_remote_domain_create_with_flags_args (XDR *xdrs, remote_domain_create_with_flags_args *objp)
|
|
|
|
{
|
|
|
|
|
|
|
|
if (!xdr_remote_nonnull_domain (xdrs, &objp->dom))
|
|
|
|
return FALSE;
|
|
|
|
if (!xdr_u_int (xdrs, &objp->flags))
|
|
|
|
return FALSE;
|
|
|
|
return TRUE;
|
|
|
|
}
|
|
|
|
|
|
|
|
bool_t
|
|
|
|
xdr_remote_domain_create_with_flags_ret (XDR *xdrs, remote_domain_create_with_flags_ret *objp)
|
|
|
|
{
|
|
|
|
|
|
|
|
if (!xdr_remote_nonnull_domain (xdrs, &objp->dom))
|
|
|
|
return FALSE;
|
|
|
|
return TRUE;
|
|
|
|
}
|
|
|
|
|
2007-06-11 11:36:17 +00:00
|
|
|
bool_t
|
|
|
|
xdr_remote_domain_define_xml_args (XDR *xdrs, remote_domain_define_xml_args *objp)
|
|
|
|
{
|
|
|
|
|
2008-04-10 16:54:54 +00:00
|
|
|
if (!xdr_remote_nonnull_string (xdrs, &objp->xml))
|
|
|
|
return FALSE;
|
|
|
|
return TRUE;
|
2007-06-11 11:36:17 +00:00
|
|
|
}
|
|
|
|
|
|
|
|
bool_t
|
|
|
|
xdr_remote_domain_define_xml_ret (XDR *xdrs, remote_domain_define_xml_ret *objp)
|
|
|
|
{
|
|
|
|
|
2008-04-10 16:54:54 +00:00
|
|
|
if (!xdr_remote_nonnull_domain (xdrs, &objp->dom))
|
|
|
|
return FALSE;
|
|
|
|
return TRUE;
|
2007-06-11 11:36:17 +00:00
|
|
|
}
|
|
|
|
|
|
|
|
bool_t
|
|
|
|
xdr_remote_domain_undefine_args (XDR *xdrs, remote_domain_undefine_args *objp)
|
|
|
|
{
|
|
|
|
|
2008-04-10 16:54:54 +00:00
|
|
|
if (!xdr_remote_nonnull_domain (xdrs, &objp->dom))
|
|
|
|
return FALSE;
|
|
|
|
return TRUE;
|
2007-06-11 11:36:17 +00:00
|
|
|
}
|
|
|
|
|
|
|
|
bool_t
|
|
|
|
xdr_remote_domain_set_vcpus_args (XDR *xdrs, remote_domain_set_vcpus_args *objp)
|
|
|
|
{
|
|
|
|
|
2008-04-10 16:54:54 +00:00
|
|
|
if (!xdr_remote_nonnull_domain (xdrs, &objp->dom))
|
|
|
|
return FALSE;
|
|
|
|
if (!xdr_int (xdrs, &objp->nvcpus))
|
|
|
|
return FALSE;
|
|
|
|
return TRUE;
|
2007-06-11 11:36:17 +00:00
|
|
|
}
|
|
|
|
|
|
|
|
bool_t
|
|
|
|
xdr_remote_domain_pin_vcpu_args (XDR *xdrs, remote_domain_pin_vcpu_args *objp)
|
|
|
|
{
|
2008-04-10 16:54:54 +00:00
|
|
|
char **objp_cpp0 = (char **) (void *) &objp->cpumap.cpumap_val;
|
2007-06-11 11:36:17 +00:00
|
|
|
|
2008-04-10 16:54:54 +00:00
|
|
|
if (!xdr_remote_nonnull_domain (xdrs, &objp->dom))
|
|
|
|
return FALSE;
|
|
|
|
if (!xdr_int (xdrs, &objp->vcpu))
|
|
|
|
return FALSE;
|
|
|
|
if (!xdr_bytes (xdrs, objp_cpp0, (u_int *) &objp->cpumap.cpumap_len, REMOTE_CPUMAP_MAX))
|
|
|
|
return FALSE;
|
|
|
|
return TRUE;
|
2007-06-11 11:36:17 +00:00
|
|
|
}
|
|
|
|
|
|
|
|
bool_t
|
|
|
|
xdr_remote_domain_get_vcpus_args (XDR *xdrs, remote_domain_get_vcpus_args *objp)
|
|
|
|
{
|
|
|
|
|
2008-04-10 16:54:54 +00:00
|
|
|
if (!xdr_remote_nonnull_domain (xdrs, &objp->dom))
|
|
|
|
return FALSE;
|
|
|
|
if (!xdr_int (xdrs, &objp->maxinfo))
|
|
|
|
return FALSE;
|
|
|
|
if (!xdr_int (xdrs, &objp->maplen))
|
|
|
|
return FALSE;
|
|
|
|
return TRUE;
|
2007-06-11 11:36:17 +00:00
|
|
|
}
|
|
|
|
|
|
|
|
bool_t
|
|
|
|
xdr_remote_domain_get_vcpus_ret (XDR *xdrs, remote_domain_get_vcpus_ret *objp)
|
|
|
|
{
|
2008-04-10 16:54:54 +00:00
|
|
|
char **objp_cpp0 = (char **) (void *) &objp->info.info_val;
|
|
|
|
char **objp_cpp1 = (char **) (void *) &objp->cpumaps.cpumaps_val;
|
2007-06-11 11:36:17 +00:00
|
|
|
|
2008-04-10 16:54:54 +00:00
|
|
|
if (!xdr_array (xdrs, objp_cpp0, (u_int *) &objp->info.info_len, REMOTE_VCPUINFO_MAX,
|
|
|
|
sizeof (remote_vcpu_info), (xdrproc_t) xdr_remote_vcpu_info))
|
|
|
|
return FALSE;
|
|
|
|
if (!xdr_bytes (xdrs, objp_cpp1, (u_int *) &objp->cpumaps.cpumaps_len, REMOTE_CPUMAPS_MAX))
|
|
|
|
return FALSE;
|
|
|
|
return TRUE;
|
2007-06-11 11:36:17 +00:00
|
|
|
}
|
|
|
|
|
|
|
|
bool_t
|
|
|
|
xdr_remote_domain_get_max_vcpus_args (XDR *xdrs, remote_domain_get_max_vcpus_args *objp)
|
|
|
|
{
|
|
|
|
|
2008-04-10 16:54:54 +00:00
|
|
|
if (!xdr_remote_nonnull_domain (xdrs, &objp->dom))
|
|
|
|
return FALSE;
|
|
|
|
return TRUE;
|
2007-06-11 11:36:17 +00:00
|
|
|
}
|
|
|
|
|
|
|
|
bool_t
|
|
|
|
xdr_remote_domain_get_max_vcpus_ret (XDR *xdrs, remote_domain_get_max_vcpus_ret *objp)
|
|
|
|
{
|
|
|
|
|
2008-04-10 16:54:54 +00:00
|
|
|
if (!xdr_int (xdrs, &objp->num))
|
|
|
|
return FALSE;
|
|
|
|
return TRUE;
|
2007-06-11 11:36:17 +00:00
|
|
|
}
|
|
|
|
|
2009-03-03 09:27:02 +00:00
|
|
|
bool_t
|
|
|
|
xdr_remote_domain_get_security_label_args (XDR *xdrs, remote_domain_get_security_label_args *objp)
|
|
|
|
{
|
|
|
|
|
|
|
|
if (!xdr_remote_nonnull_domain (xdrs, &objp->dom))
|
|
|
|
return FALSE;
|
|
|
|
return TRUE;
|
|
|
|
}
|
|
|
|
|
|
|
|
bool_t
|
|
|
|
xdr_remote_domain_get_security_label_ret (XDR *xdrs, remote_domain_get_security_label_ret *objp)
|
|
|
|
{
|
|
|
|
char **objp_cpp0 = (char **) (void *) &objp->label.label_val;
|
|
|
|
|
|
|
|
if (!xdr_array (xdrs, objp_cpp0, (u_int *) &objp->label.label_len, REMOTE_SECURITY_LABEL_MAX,
|
|
|
|
sizeof (char), (xdrproc_t) xdr_char))
|
|
|
|
return FALSE;
|
|
|
|
if (!xdr_int (xdrs, &objp->enforcing))
|
|
|
|
return FALSE;
|
|
|
|
return TRUE;
|
|
|
|
}
|
|
|
|
|
|
|
|
bool_t
|
|
|
|
xdr_remote_node_get_security_model_ret (XDR *xdrs, remote_node_get_security_model_ret *objp)
|
|
|
|
{
|
|
|
|
char **objp_cpp1 = (char **) (void *) &objp->doi.doi_val;
|
|
|
|
char **objp_cpp0 = (char **) (void *) &objp->model.model_val;
|
|
|
|
|
|
|
|
if (!xdr_array (xdrs, objp_cpp0, (u_int *) &objp->model.model_len, REMOTE_SECURITY_MODEL_MAX,
|
|
|
|
sizeof (char), (xdrproc_t) xdr_char))
|
|
|
|
return FALSE;
|
|
|
|
if (!xdr_array (xdrs, objp_cpp1, (u_int *) &objp->doi.doi_len, REMOTE_SECURITY_DOI_MAX,
|
|
|
|
sizeof (char), (xdrproc_t) xdr_char))
|
|
|
|
return FALSE;
|
|
|
|
return TRUE;
|
|
|
|
}
|
|
|
|
|
2007-06-11 11:36:17 +00:00
|
|
|
bool_t
|
|
|
|
xdr_remote_domain_attach_device_args (XDR *xdrs, remote_domain_attach_device_args *objp)
|
|
|
|
{
|
|
|
|
|
2008-04-10 16:54:54 +00:00
|
|
|
if (!xdr_remote_nonnull_domain (xdrs, &objp->dom))
|
|
|
|
return FALSE;
|
|
|
|
if (!xdr_remote_nonnull_string (xdrs, &objp->xml))
|
|
|
|
return FALSE;
|
|
|
|
return TRUE;
|
2007-06-11 11:36:17 +00:00
|
|
|
}
|
|
|
|
|
2010-02-09 12:09:05 +00:00
|
|
|
bool_t
|
|
|
|
xdr_remote_domain_attach_device_flags_args (XDR *xdrs, remote_domain_attach_device_flags_args *objp)
|
|
|
|
{
|
|
|
|
|
|
|
|
if (!xdr_remote_nonnull_domain (xdrs, &objp->dom))
|
|
|
|
return FALSE;
|
|
|
|
if (!xdr_remote_nonnull_string (xdrs, &objp->xml))
|
|
|
|
return FALSE;
|
|
|
|
if (!xdr_u_int (xdrs, &objp->flags))
|
|
|
|
return FALSE;
|
|
|
|
return TRUE;
|
|
|
|
}
|
|
|
|
|
2007-06-11 11:36:17 +00:00
|
|
|
bool_t
|
|
|
|
xdr_remote_domain_detach_device_args (XDR *xdrs, remote_domain_detach_device_args *objp)
|
|
|
|
{
|
|
|
|
|
2008-04-10 16:54:54 +00:00
|
|
|
if (!xdr_remote_nonnull_domain (xdrs, &objp->dom))
|
|
|
|
return FALSE;
|
|
|
|
if (!xdr_remote_nonnull_string (xdrs, &objp->xml))
|
|
|
|
return FALSE;
|
|
|
|
return TRUE;
|
2007-06-11 11:36:17 +00:00
|
|
|
}
|
|
|
|
|
2010-02-09 12:09:05 +00:00
|
|
|
bool_t
|
|
|
|
xdr_remote_domain_detach_device_flags_args (XDR *xdrs, remote_domain_detach_device_flags_args *objp)
|
2010-03-22 12:26:05 +00:00
|
|
|
{
|
|
|
|
|
|
|
|
if (!xdr_remote_nonnull_domain (xdrs, &objp->dom))
|
|
|
|
return FALSE;
|
|
|
|
if (!xdr_remote_nonnull_string (xdrs, &objp->xml))
|
|
|
|
return FALSE;
|
|
|
|
if (!xdr_u_int (xdrs, &objp->flags))
|
|
|
|
return FALSE;
|
|
|
|
return TRUE;
|
|
|
|
}
|
|
|
|
|
|
|
|
bool_t
|
|
|
|
xdr_remote_domain_update_device_flags_args (XDR *xdrs, remote_domain_update_device_flags_args *objp)
|
2010-02-09 12:09:05 +00:00
|
|
|
{
|
|
|
|
|
|
|
|
if (!xdr_remote_nonnull_domain (xdrs, &objp->dom))
|
|
|
|
return FALSE;
|
|
|
|
if (!xdr_remote_nonnull_string (xdrs, &objp->xml))
|
|
|
|
return FALSE;
|
|
|
|
if (!xdr_u_int (xdrs, &objp->flags))
|
|
|
|
return FALSE;
|
|
|
|
return TRUE;
|
|
|
|
}
|
|
|
|
|
2007-06-11 11:36:17 +00:00
|
|
|
bool_t
|
|
|
|
xdr_remote_domain_get_autostart_args (XDR *xdrs, remote_domain_get_autostart_args *objp)
|
|
|
|
{
|
|
|
|
|
2008-04-10 16:54:54 +00:00
|
|
|
if (!xdr_remote_nonnull_domain (xdrs, &objp->dom))
|
|
|
|
return FALSE;
|
|
|
|
return TRUE;
|
2007-06-11 11:36:17 +00:00
|
|
|
}
|
|
|
|
|
|
|
|
bool_t
|
|
|
|
xdr_remote_domain_get_autostart_ret (XDR *xdrs, remote_domain_get_autostart_ret *objp)
|
|
|
|
{
|
|
|
|
|
2008-04-10 16:54:54 +00:00
|
|
|
if (!xdr_int (xdrs, &objp->autostart))
|
|
|
|
return FALSE;
|
|
|
|
return TRUE;
|
2007-06-11 11:36:17 +00:00
|
|
|
}
|
|
|
|
|
|
|
|
bool_t
|
|
|
|
xdr_remote_domain_set_autostart_args (XDR *xdrs, remote_domain_set_autostart_args *objp)
|
|
|
|
{
|
|
|
|
|
2008-04-10 16:54:54 +00:00
|
|
|
if (!xdr_remote_nonnull_domain (xdrs, &objp->dom))
|
|
|
|
return FALSE;
|
|
|
|
if (!xdr_int (xdrs, &objp->autostart))
|
|
|
|
return FALSE;
|
|
|
|
return TRUE;
|
2007-06-11 11:36:17 +00:00
|
|
|
}
|
|
|
|
|
|
|
|
bool_t
|
|
|
|
xdr_remote_num_of_networks_ret (XDR *xdrs, remote_num_of_networks_ret *objp)
|
|
|
|
{
|
|
|
|
|
2008-04-10 16:54:54 +00:00
|
|
|
if (!xdr_int (xdrs, &objp->num))
|
|
|
|
return FALSE;
|
|
|
|
return TRUE;
|
2007-06-11 11:36:17 +00:00
|
|
|
}
|
|
|
|
|
|
|
|
bool_t
|
|
|
|
xdr_remote_list_networks_args (XDR *xdrs, remote_list_networks_args *objp)
|
|
|
|
{
|
|
|
|
|
2008-04-10 16:54:54 +00:00
|
|
|
if (!xdr_int (xdrs, &objp->maxnames))
|
|
|
|
return FALSE;
|
|
|
|
return TRUE;
|
2007-06-11 11:36:17 +00:00
|
|
|
}
|
|
|
|
|
|
|
|
bool_t
|
|
|
|
xdr_remote_list_networks_ret (XDR *xdrs, remote_list_networks_ret *objp)
|
|
|
|
{
|
2008-04-10 16:54:54 +00:00
|
|
|
char **objp_cpp0 = (char **) (void *) &objp->names.names_val;
|
2007-06-11 11:36:17 +00:00
|
|
|
|
2008-04-10 16:54:54 +00:00
|
|
|
if (!xdr_array (xdrs, objp_cpp0, (u_int *) &objp->names.names_len, REMOTE_NETWORK_NAME_LIST_MAX,
|
|
|
|
sizeof (remote_nonnull_string), (xdrproc_t) xdr_remote_nonnull_string))
|
|
|
|
return FALSE;
|
|
|
|
return TRUE;
|
2007-06-11 11:36:17 +00:00
|
|
|
}
|
|
|
|
|
|
|
|
bool_t
|
|
|
|
xdr_remote_num_of_defined_networks_ret (XDR *xdrs, remote_num_of_defined_networks_ret *objp)
|
|
|
|
{
|
|
|
|
|
2008-04-10 16:54:54 +00:00
|
|
|
if (!xdr_int (xdrs, &objp->num))
|
|
|
|
return FALSE;
|
|
|
|
return TRUE;
|
2007-06-11 11:36:17 +00:00
|
|
|
}
|
|
|
|
|
|
|
|
bool_t
|
|
|
|
xdr_remote_list_defined_networks_args (XDR *xdrs, remote_list_defined_networks_args *objp)
|
|
|
|
{
|
|
|
|
|
2008-04-10 16:54:54 +00:00
|
|
|
if (!xdr_int (xdrs, &objp->maxnames))
|
|
|
|
return FALSE;
|
|
|
|
return TRUE;
|
2007-06-11 11:36:17 +00:00
|
|
|
}
|
|
|
|
|
|
|
|
bool_t
|
|
|
|
xdr_remote_list_defined_networks_ret (XDR *xdrs, remote_list_defined_networks_ret *objp)
|
|
|
|
{
|
2008-04-10 16:54:54 +00:00
|
|
|
char **objp_cpp0 = (char **) (void *) &objp->names.names_val;
|
2007-06-11 11:36:17 +00:00
|
|
|
|
2008-04-10 16:54:54 +00:00
|
|
|
if (!xdr_array (xdrs, objp_cpp0, (u_int *) &objp->names.names_len, REMOTE_NETWORK_NAME_LIST_MAX,
|
|
|
|
sizeof (remote_nonnull_string), (xdrproc_t) xdr_remote_nonnull_string))
|
|
|
|
return FALSE;
|
|
|
|
return TRUE;
|
2007-06-11 11:36:17 +00:00
|
|
|
}
|
|
|
|
|
|
|
|
bool_t
|
|
|
|
xdr_remote_network_lookup_by_uuid_args (XDR *xdrs, remote_network_lookup_by_uuid_args *objp)
|
|
|
|
{
|
|
|
|
|
2008-04-10 16:54:54 +00:00
|
|
|
if (!xdr_remote_uuid (xdrs, objp->uuid))
|
|
|
|
return FALSE;
|
|
|
|
return TRUE;
|
2007-06-11 11:36:17 +00:00
|
|
|
}
|
|
|
|
|
|
|
|
bool_t
|
|
|
|
xdr_remote_network_lookup_by_uuid_ret (XDR *xdrs, remote_network_lookup_by_uuid_ret *objp)
|
|
|
|
{
|
|
|
|
|
2008-04-10 16:54:54 +00:00
|
|
|
if (!xdr_remote_nonnull_network (xdrs, &objp->net))
|
|
|
|
return FALSE;
|
|
|
|
return TRUE;
|
2007-06-11 11:36:17 +00:00
|
|
|
}
|
|
|
|
|
|
|
|
bool_t
|
|
|
|
xdr_remote_network_lookup_by_name_args (XDR *xdrs, remote_network_lookup_by_name_args *objp)
|
|
|
|
{
|
|
|
|
|
2008-04-10 16:54:54 +00:00
|
|
|
if (!xdr_remote_nonnull_string (xdrs, &objp->name))
|
|
|
|
return FALSE;
|
|
|
|
return TRUE;
|
2007-06-11 11:36:17 +00:00
|
|
|
}
|
|
|
|
|
|
|
|
bool_t
|
|
|
|
xdr_remote_network_lookup_by_name_ret (XDR *xdrs, remote_network_lookup_by_name_ret *objp)
|
|
|
|
{
|
|
|
|
|
2008-04-10 16:54:54 +00:00
|
|
|
if (!xdr_remote_nonnull_network (xdrs, &objp->net))
|
|
|
|
return FALSE;
|
|
|
|
return TRUE;
|
2007-06-11 11:36:17 +00:00
|
|
|
}
|
|
|
|
|
|
|
|
bool_t
|
|
|
|
xdr_remote_network_create_xml_args (XDR *xdrs, remote_network_create_xml_args *objp)
|
|
|
|
{
|
|
|
|
|
2008-04-10 16:54:54 +00:00
|
|
|
if (!xdr_remote_nonnull_string (xdrs, &objp->xml))
|
|
|
|
return FALSE;
|
|
|
|
return TRUE;
|
2007-06-11 11:36:17 +00:00
|
|
|
}
|
|
|
|
|
|
|
|
bool_t
|
|
|
|
xdr_remote_network_create_xml_ret (XDR *xdrs, remote_network_create_xml_ret *objp)
|
|
|
|
{
|
|
|
|
|
2008-04-10 16:54:54 +00:00
|
|
|
if (!xdr_remote_nonnull_network (xdrs, &objp->net))
|
|
|
|
return FALSE;
|
|
|
|
return TRUE;
|
2007-06-11 11:36:17 +00:00
|
|
|
}
|
|
|
|
|
|
|
|
bool_t
|
|
|
|
xdr_remote_network_define_xml_args (XDR *xdrs, remote_network_define_xml_args *objp)
|
|
|
|
{
|
|
|
|
|
2008-04-10 16:54:54 +00:00
|
|
|
if (!xdr_remote_nonnull_string (xdrs, &objp->xml))
|
|
|
|
return FALSE;
|
|
|
|
return TRUE;
|
2007-06-11 11:36:17 +00:00
|
|
|
}
|
|
|
|
|
|
|
|
bool_t
|
|
|
|
xdr_remote_network_define_xml_ret (XDR *xdrs, remote_network_define_xml_ret *objp)
|
|
|
|
{
|
|
|
|
|
2008-04-10 16:54:54 +00:00
|
|
|
if (!xdr_remote_nonnull_network (xdrs, &objp->net))
|
|
|
|
return FALSE;
|
|
|
|
return TRUE;
|
2007-06-11 11:36:17 +00:00
|
|
|
}
|
|
|
|
|
|
|
|
bool_t
|
|
|
|
xdr_remote_network_undefine_args (XDR *xdrs, remote_network_undefine_args *objp)
|
|
|
|
{
|
|
|
|
|
2008-04-10 16:54:54 +00:00
|
|
|
if (!xdr_remote_nonnull_network (xdrs, &objp->net))
|
|
|
|
return FALSE;
|
|
|
|
return TRUE;
|
2007-06-11 11:36:17 +00:00
|
|
|
}
|
|
|
|
|
|
|
|
bool_t
|
|
|
|
xdr_remote_network_create_args (XDR *xdrs, remote_network_create_args *objp)
|
|
|
|
{
|
|
|
|
|
2008-04-10 16:54:54 +00:00
|
|
|
if (!xdr_remote_nonnull_network (xdrs, &objp->net))
|
|
|
|
return FALSE;
|
|
|
|
return TRUE;
|
2007-06-11 11:36:17 +00:00
|
|
|
}
|
|
|
|
|
|
|
|
bool_t
|
|
|
|
xdr_remote_network_destroy_args (XDR *xdrs, remote_network_destroy_args *objp)
|
|
|
|
{
|
|
|
|
|
2008-04-10 16:54:54 +00:00
|
|
|
if (!xdr_remote_nonnull_network (xdrs, &objp->net))
|
|
|
|
return FALSE;
|
|
|
|
return TRUE;
|
2007-06-11 11:36:17 +00:00
|
|
|
}
|
|
|
|
|
|
|
|
bool_t
|
|
|
|
xdr_remote_network_dump_xml_args (XDR *xdrs, remote_network_dump_xml_args *objp)
|
|
|
|
{
|
|
|
|
|
2008-04-10 16:54:54 +00:00
|
|
|
if (!xdr_remote_nonnull_network (xdrs, &objp->net))
|
|
|
|
return FALSE;
|
|
|
|
if (!xdr_int (xdrs, &objp->flags))
|
|
|
|
return FALSE;
|
|
|
|
return TRUE;
|
2007-06-11 11:36:17 +00:00
|
|
|
}
|
|
|
|
|
|
|
|
bool_t
|
|
|
|
xdr_remote_network_dump_xml_ret (XDR *xdrs, remote_network_dump_xml_ret *objp)
|
|
|
|
{
|
|
|
|
|
2008-04-10 16:54:54 +00:00
|
|
|
if (!xdr_remote_nonnull_string (xdrs, &objp->xml))
|
|
|
|
return FALSE;
|
|
|
|
return TRUE;
|
2007-06-11 11:36:17 +00:00
|
|
|
}
|
|
|
|
|
|
|
|
bool_t
|
|
|
|
xdr_remote_network_get_bridge_name_args (XDR *xdrs, remote_network_get_bridge_name_args *objp)
|
|
|
|
{
|
|
|
|
|
2008-04-10 16:54:54 +00:00
|
|
|
if (!xdr_remote_nonnull_network (xdrs, &objp->net))
|
|
|
|
return FALSE;
|
|
|
|
return TRUE;
|
2007-06-11 11:36:17 +00:00
|
|
|
}
|
|
|
|
|
|
|
|
bool_t
|
|
|
|
xdr_remote_network_get_bridge_name_ret (XDR *xdrs, remote_network_get_bridge_name_ret *objp)
|
|
|
|
{
|
|
|
|
|
2008-04-10 16:54:54 +00:00
|
|
|
if (!xdr_remote_nonnull_string (xdrs, &objp->name))
|
|
|
|
return FALSE;
|
|
|
|
return TRUE;
|
2007-06-11 11:36:17 +00:00
|
|
|
}
|
|
|
|
|
|
|
|
bool_t
|
|
|
|
xdr_remote_network_get_autostart_args (XDR *xdrs, remote_network_get_autostart_args *objp)
|
|
|
|
{
|
|
|
|
|
2008-04-10 16:54:54 +00:00
|
|
|
if (!xdr_remote_nonnull_network (xdrs, &objp->net))
|
|
|
|
return FALSE;
|
|
|
|
return TRUE;
|
2007-06-11 11:36:17 +00:00
|
|
|
}
|
|
|
|
|
|
|
|
bool_t
|
|
|
|
xdr_remote_network_get_autostart_ret (XDR *xdrs, remote_network_get_autostart_ret *objp)
|
|
|
|
{
|
|
|
|
|
2008-04-10 16:54:54 +00:00
|
|
|
if (!xdr_int (xdrs, &objp->autostart))
|
|
|
|
return FALSE;
|
|
|
|
return TRUE;
|
2007-06-11 11:36:17 +00:00
|
|
|
}
|
|
|
|
|
|
|
|
bool_t
|
|
|
|
xdr_remote_network_set_autostart_args (XDR *xdrs, remote_network_set_autostart_args *objp)
|
|
|
|
{
|
|
|
|
|
2008-04-10 16:54:54 +00:00
|
|
|
if (!xdr_remote_nonnull_network (xdrs, &objp->net))
|
|
|
|
return FALSE;
|
|
|
|
if (!xdr_int (xdrs, &objp->autostart))
|
|
|
|
return FALSE;
|
|
|
|
return TRUE;
|
2007-06-11 11:36:17 +00:00
|
|
|
}
|
|
|
|
|
2010-03-25 17:46:03 +00:00
|
|
|
bool_t
|
|
|
|
xdr_remote_num_of_nwfilters_ret (XDR *xdrs, remote_num_of_nwfilters_ret *objp)
|
|
|
|
{
|
|
|
|
|
|
|
|
if (!xdr_int (xdrs, &objp->num))
|
|
|
|
return FALSE;
|
|
|
|
return TRUE;
|
|
|
|
}
|
|
|
|
|
|
|
|
bool_t
|
|
|
|
xdr_remote_list_nwfilters_args (XDR *xdrs, remote_list_nwfilters_args *objp)
|
|
|
|
{
|
|
|
|
|
|
|
|
if (!xdr_int (xdrs, &objp->maxnames))
|
|
|
|
return FALSE;
|
|
|
|
return TRUE;
|
|
|
|
}
|
|
|
|
|
|
|
|
bool_t
|
|
|
|
xdr_remote_list_nwfilters_ret (XDR *xdrs, remote_list_nwfilters_ret *objp)
|
|
|
|
{
|
|
|
|
char **objp_cpp0 = (char **) (void *) &objp->names.names_val;
|
|
|
|
|
|
|
|
if (!xdr_array (xdrs, objp_cpp0, (u_int *) &objp->names.names_len, REMOTE_NWFILTER_NAME_LIST_MAX,
|
|
|
|
sizeof (remote_nonnull_string), (xdrproc_t) xdr_remote_nonnull_string))
|
|
|
|
return FALSE;
|
|
|
|
return TRUE;
|
|
|
|
}
|
|
|
|
|
|
|
|
bool_t
|
|
|
|
xdr_remote_nwfilter_lookup_by_uuid_args (XDR *xdrs, remote_nwfilter_lookup_by_uuid_args *objp)
|
|
|
|
{
|
|
|
|
|
|
|
|
if (!xdr_remote_uuid (xdrs, objp->uuid))
|
|
|
|
return FALSE;
|
|
|
|
return TRUE;
|
|
|
|
}
|
|
|
|
|
|
|
|
bool_t
|
|
|
|
xdr_remote_nwfilter_lookup_by_uuid_ret (XDR *xdrs, remote_nwfilter_lookup_by_uuid_ret *objp)
|
|
|
|
{
|
|
|
|
|
|
|
|
if (!xdr_remote_nonnull_nwfilter (xdrs, &objp->nwfilter))
|
|
|
|
return FALSE;
|
|
|
|
return TRUE;
|
|
|
|
}
|
|
|
|
|
|
|
|
bool_t
|
|
|
|
xdr_remote_nwfilter_lookup_by_name_args (XDR *xdrs, remote_nwfilter_lookup_by_name_args *objp)
|
|
|
|
{
|
|
|
|
|
|
|
|
if (!xdr_remote_nonnull_string (xdrs, &objp->name))
|
|
|
|
return FALSE;
|
|
|
|
return TRUE;
|
|
|
|
}
|
|
|
|
|
|
|
|
bool_t
|
|
|
|
xdr_remote_nwfilter_lookup_by_name_ret (XDR *xdrs, remote_nwfilter_lookup_by_name_ret *objp)
|
|
|
|
{
|
|
|
|
|
|
|
|
if (!xdr_remote_nonnull_nwfilter (xdrs, &objp->nwfilter))
|
|
|
|
return FALSE;
|
|
|
|
return TRUE;
|
|
|
|
}
|
|
|
|
|
|
|
|
bool_t
|
|
|
|
xdr_remote_nwfilter_define_xml_args (XDR *xdrs, remote_nwfilter_define_xml_args *objp)
|
|
|
|
{
|
|
|
|
|
|
|
|
if (!xdr_remote_nonnull_string (xdrs, &objp->xml))
|
|
|
|
return FALSE;
|
|
|
|
return TRUE;
|
|
|
|
}
|
|
|
|
|
|
|
|
bool_t
|
|
|
|
xdr_remote_nwfilter_define_xml_ret (XDR *xdrs, remote_nwfilter_define_xml_ret *objp)
|
|
|
|
{
|
|
|
|
|
|
|
|
if (!xdr_remote_nonnull_nwfilter (xdrs, &objp->nwfilter))
|
|
|
|
return FALSE;
|
|
|
|
return TRUE;
|
|
|
|
}
|
|
|
|
|
|
|
|
bool_t
|
|
|
|
xdr_remote_nwfilter_undefine_args (XDR *xdrs, remote_nwfilter_undefine_args *objp)
|
|
|
|
{
|
|
|
|
|
|
|
|
if (!xdr_remote_nonnull_nwfilter (xdrs, &objp->nwfilter))
|
|
|
|
return FALSE;
|
|
|
|
return TRUE;
|
|
|
|
}
|
|
|
|
|
|
|
|
bool_t
|
|
|
|
xdr_remote_nwfilter_get_xml_desc_args (XDR *xdrs, remote_nwfilter_get_xml_desc_args *objp)
|
|
|
|
{
|
|
|
|
|
|
|
|
if (!xdr_remote_nonnull_nwfilter (xdrs, &objp->nwfilter))
|
|
|
|
return FALSE;
|
|
|
|
if (!xdr_int (xdrs, &objp->flags))
|
|
|
|
return FALSE;
|
|
|
|
return TRUE;
|
|
|
|
}
|
|
|
|
|
|
|
|
bool_t
|
|
|
|
xdr_remote_nwfilter_get_xml_desc_ret (XDR *xdrs, remote_nwfilter_get_xml_desc_ret *objp)
|
|
|
|
{
|
|
|
|
|
|
|
|
if (!xdr_remote_nonnull_string (xdrs, &objp->xml))
|
|
|
|
return FALSE;
|
|
|
|
return TRUE;
|
|
|
|
}
|
|
|
|
|
2009-05-20 14:26:49 +00:00
|
|
|
bool_t
|
|
|
|
xdr_remote_num_of_interfaces_ret (XDR *xdrs, remote_num_of_interfaces_ret *objp)
|
|
|
|
{
|
|
|
|
|
|
|
|
if (!xdr_int (xdrs, &objp->num))
|
|
|
|
return FALSE;
|
|
|
|
return TRUE;
|
|
|
|
}
|
|
|
|
|
|
|
|
bool_t
|
|
|
|
xdr_remote_list_interfaces_args (XDR *xdrs, remote_list_interfaces_args *objp)
|
|
|
|
{
|
|
|
|
|
|
|
|
if (!xdr_int (xdrs, &objp->maxnames))
|
|
|
|
return FALSE;
|
|
|
|
return TRUE;
|
|
|
|
}
|
|
|
|
|
|
|
|
bool_t
|
|
|
|
xdr_remote_list_interfaces_ret (XDR *xdrs, remote_list_interfaces_ret *objp)
|
|
|
|
{
|
|
|
|
char **objp_cpp0 = (char **) (void *) &objp->names.names_val;
|
|
|
|
|
|
|
|
if (!xdr_array (xdrs, objp_cpp0, (u_int *) &objp->names.names_len, REMOTE_INTERFACE_NAME_LIST_MAX,
|
|
|
|
sizeof (remote_nonnull_string), (xdrproc_t) xdr_remote_nonnull_string))
|
|
|
|
return FALSE;
|
|
|
|
return TRUE;
|
|
|
|
}
|
|
|
|
|
2009-07-16 15:58:15 +00:00
|
|
|
bool_t
|
|
|
|
xdr_remote_num_of_defined_interfaces_ret (XDR *xdrs, remote_num_of_defined_interfaces_ret *objp)
|
|
|
|
{
|
|
|
|
|
|
|
|
if (!xdr_int (xdrs, &objp->num))
|
|
|
|
return FALSE;
|
|
|
|
return TRUE;
|
|
|
|
}
|
|
|
|
|
|
|
|
bool_t
|
|
|
|
xdr_remote_list_defined_interfaces_args (XDR *xdrs, remote_list_defined_interfaces_args *objp)
|
|
|
|
{
|
|
|
|
|
|
|
|
if (!xdr_int (xdrs, &objp->maxnames))
|
|
|
|
return FALSE;
|
|
|
|
return TRUE;
|
|
|
|
}
|
|
|
|
|
|
|
|
bool_t
|
|
|
|
xdr_remote_list_defined_interfaces_ret (XDR *xdrs, remote_list_defined_interfaces_ret *objp)
|
|
|
|
{
|
|
|
|
char **objp_cpp0 = (char **) (void *) &objp->names.names_val;
|
|
|
|
|
|
|
|
if (!xdr_array (xdrs, objp_cpp0, (u_int *) &objp->names.names_len, REMOTE_DEFINED_INTERFACE_NAME_LIST_MAX,
|
|
|
|
sizeof (remote_nonnull_string), (xdrproc_t) xdr_remote_nonnull_string))
|
|
|
|
return FALSE;
|
|
|
|
return TRUE;
|
|
|
|
}
|
|
|
|
|
2009-05-20 14:26:49 +00:00
|
|
|
bool_t
|
|
|
|
xdr_remote_interface_lookup_by_name_args (XDR *xdrs, remote_interface_lookup_by_name_args *objp)
|
|
|
|
{
|
|
|
|
|
|
|
|
if (!xdr_remote_nonnull_string (xdrs, &objp->name))
|
|
|
|
return FALSE;
|
|
|
|
return TRUE;
|
|
|
|
}
|
|
|
|
|
|
|
|
bool_t
|
|
|
|
xdr_remote_interface_lookup_by_name_ret (XDR *xdrs, remote_interface_lookup_by_name_ret *objp)
|
|
|
|
{
|
|
|
|
|
2009-05-29 14:29:22 +00:00
|
|
|
if (!xdr_remote_nonnull_interface (xdrs, &objp->iface))
|
2009-05-20 14:26:49 +00:00
|
|
|
return FALSE;
|
|
|
|
return TRUE;
|
|
|
|
}
|
|
|
|
|
|
|
|
bool_t
|
|
|
|
xdr_remote_interface_lookup_by_mac_string_args (XDR *xdrs, remote_interface_lookup_by_mac_string_args *objp)
|
|
|
|
{
|
|
|
|
|
|
|
|
if (!xdr_remote_nonnull_string (xdrs, &objp->mac))
|
|
|
|
return FALSE;
|
|
|
|
return TRUE;
|
|
|
|
}
|
|
|
|
|
|
|
|
bool_t
|
|
|
|
xdr_remote_interface_lookup_by_mac_string_ret (XDR *xdrs, remote_interface_lookup_by_mac_string_ret *objp)
|
|
|
|
{
|
|
|
|
|
2009-05-29 14:29:22 +00:00
|
|
|
if (!xdr_remote_nonnull_interface (xdrs, &objp->iface))
|
2009-05-20 14:26:49 +00:00
|
|
|
return FALSE;
|
|
|
|
return TRUE;
|
|
|
|
}
|
|
|
|
|
|
|
|
bool_t
|
|
|
|
xdr_remote_interface_get_xml_desc_args (XDR *xdrs, remote_interface_get_xml_desc_args *objp)
|
|
|
|
{
|
|
|
|
|
2009-05-29 14:29:22 +00:00
|
|
|
if (!xdr_remote_nonnull_interface (xdrs, &objp->iface))
|
2009-05-20 14:26:49 +00:00
|
|
|
return FALSE;
|
|
|
|
if (!xdr_u_int (xdrs, &objp->flags))
|
|
|
|
return FALSE;
|
|
|
|
return TRUE;
|
|
|
|
}
|
|
|
|
|
|
|
|
bool_t
|
|
|
|
xdr_remote_interface_get_xml_desc_ret (XDR *xdrs, remote_interface_get_xml_desc_ret *objp)
|
|
|
|
{
|
|
|
|
|
|
|
|
if (!xdr_remote_nonnull_string (xdrs, &objp->xml))
|
|
|
|
return FALSE;
|
|
|
|
return TRUE;
|
|
|
|
}
|
|
|
|
|
|
|
|
bool_t
|
|
|
|
xdr_remote_interface_define_xml_args (XDR *xdrs, remote_interface_define_xml_args *objp)
|
|
|
|
{
|
|
|
|
|
|
|
|
if (!xdr_remote_nonnull_string (xdrs, &objp->xml))
|
|
|
|
return FALSE;
|
|
|
|
if (!xdr_u_int (xdrs, &objp->flags))
|
|
|
|
return FALSE;
|
|
|
|
return TRUE;
|
|
|
|
}
|
|
|
|
|
|
|
|
bool_t
|
|
|
|
xdr_remote_interface_define_xml_ret (XDR *xdrs, remote_interface_define_xml_ret *objp)
|
|
|
|
{
|
|
|
|
|
2009-05-29 14:29:22 +00:00
|
|
|
if (!xdr_remote_nonnull_interface (xdrs, &objp->iface))
|
2009-05-20 14:26:49 +00:00
|
|
|
return FALSE;
|
|
|
|
return TRUE;
|
|
|
|
}
|
|
|
|
|
|
|
|
bool_t
|
|
|
|
xdr_remote_interface_undefine_args (XDR *xdrs, remote_interface_undefine_args *objp)
|
|
|
|
{
|
|
|
|
|
2009-05-29 14:29:22 +00:00
|
|
|
if (!xdr_remote_nonnull_interface (xdrs, &objp->iface))
|
2009-05-20 14:26:49 +00:00
|
|
|
return FALSE;
|
|
|
|
return TRUE;
|
|
|
|
}
|
|
|
|
|
|
|
|
bool_t
|
|
|
|
xdr_remote_interface_create_args (XDR *xdrs, remote_interface_create_args *objp)
|
|
|
|
{
|
|
|
|
|
2009-05-29 14:29:22 +00:00
|
|
|
if (!xdr_remote_nonnull_interface (xdrs, &objp->iface))
|
2009-05-20 14:26:49 +00:00
|
|
|
return FALSE;
|
|
|
|
if (!xdr_u_int (xdrs, &objp->flags))
|
|
|
|
return FALSE;
|
|
|
|
return TRUE;
|
|
|
|
}
|
|
|
|
|
|
|
|
bool_t
|
|
|
|
xdr_remote_interface_destroy_args (XDR *xdrs, remote_interface_destroy_args *objp)
|
|
|
|
{
|
|
|
|
|
2009-05-29 14:29:22 +00:00
|
|
|
if (!xdr_remote_nonnull_interface (xdrs, &objp->iface))
|
2009-05-20 14:26:49 +00:00
|
|
|
return FALSE;
|
|
|
|
if (!xdr_u_int (xdrs, &objp->flags))
|
|
|
|
return FALSE;
|
|
|
|
return TRUE;
|
|
|
|
}
|
|
|
|
|
2007-12-05 15:24:15 +00:00
|
|
|
bool_t
|
|
|
|
xdr_remote_auth_list_ret (XDR *xdrs, remote_auth_list_ret *objp)
|
|
|
|
{
|
2008-04-10 16:54:54 +00:00
|
|
|
char **objp_cpp0 = (char **) (void *) &objp->types.types_val;
|
2007-12-05 15:24:15 +00:00
|
|
|
|
2008-04-10 16:54:54 +00:00
|
|
|
if (!xdr_array (xdrs, objp_cpp0, (u_int *) &objp->types.types_len, REMOTE_AUTH_TYPE_LIST_MAX,
|
|
|
|
sizeof (remote_auth_type), (xdrproc_t) xdr_remote_auth_type))
|
|
|
|
return FALSE;
|
|
|
|
return TRUE;
|
2007-12-05 15:24:15 +00:00
|
|
|
}
|
|
|
|
|
|
|
|
bool_t
|
|
|
|
xdr_remote_auth_sasl_init_ret (XDR *xdrs, remote_auth_sasl_init_ret *objp)
|
|
|
|
{
|
|
|
|
|
2008-04-10 16:54:54 +00:00
|
|
|
if (!xdr_remote_nonnull_string (xdrs, &objp->mechlist))
|
|
|
|
return FALSE;
|
|
|
|
return TRUE;
|
2007-12-05 15:24:15 +00:00
|
|
|
}
|
|
|
|
|
|
|
|
bool_t
|
|
|
|
xdr_remote_auth_sasl_start_args (XDR *xdrs, remote_auth_sasl_start_args *objp)
|
|
|
|
{
|
2008-04-10 16:54:54 +00:00
|
|
|
char **objp_cpp0 = (char **) (void *) &objp->data.data_val;
|
2007-12-05 15:24:15 +00:00
|
|
|
|
2008-04-10 16:54:54 +00:00
|
|
|
if (!xdr_remote_nonnull_string (xdrs, &objp->mech))
|
|
|
|
return FALSE;
|
|
|
|
if (!xdr_int (xdrs, &objp->nil))
|
|
|
|
return FALSE;
|
|
|
|
if (!xdr_array (xdrs, objp_cpp0, (u_int *) &objp->data.data_len, REMOTE_AUTH_SASL_DATA_MAX,
|
|
|
|
sizeof (char), (xdrproc_t) xdr_char))
|
|
|
|
return FALSE;
|
|
|
|
return TRUE;
|
2007-12-05 15:24:15 +00:00
|
|
|
}
|
|
|
|
|
|
|
|
bool_t
|
|
|
|
xdr_remote_auth_sasl_start_ret (XDR *xdrs, remote_auth_sasl_start_ret *objp)
|
|
|
|
{
|
2008-04-10 16:54:54 +00:00
|
|
|
char **objp_cpp0 = (char **) (void *) &objp->data.data_val;
|
2007-12-05 15:24:15 +00:00
|
|
|
|
2008-04-10 16:54:54 +00:00
|
|
|
if (!xdr_int (xdrs, &objp->complete))
|
|
|
|
return FALSE;
|
|
|
|
if (!xdr_int (xdrs, &objp->nil))
|
|
|
|
return FALSE;
|
|
|
|
if (!xdr_array (xdrs, objp_cpp0, (u_int *) &objp->data.data_len, REMOTE_AUTH_SASL_DATA_MAX,
|
|
|
|
sizeof (char), (xdrproc_t) xdr_char))
|
|
|
|
return FALSE;
|
|
|
|
return TRUE;
|
2007-12-05 15:24:15 +00:00
|
|
|
}
|
|
|
|
|
|
|
|
bool_t
|
|
|
|
xdr_remote_auth_sasl_step_args (XDR *xdrs, remote_auth_sasl_step_args *objp)
|
|
|
|
{
|
2008-04-10 16:54:54 +00:00
|
|
|
char **objp_cpp0 = (char **) (void *) &objp->data.data_val;
|
2007-12-05 15:24:15 +00:00
|
|
|
|
2008-04-10 16:54:54 +00:00
|
|
|
if (!xdr_int (xdrs, &objp->nil))
|
|
|
|
return FALSE;
|
|
|
|
if (!xdr_array (xdrs, objp_cpp0, (u_int *) &objp->data.data_len, REMOTE_AUTH_SASL_DATA_MAX,
|
|
|
|
sizeof (char), (xdrproc_t) xdr_char))
|
|
|
|
return FALSE;
|
|
|
|
return TRUE;
|
2007-12-05 15:24:15 +00:00
|
|
|
}
|
|
|
|
|
|
|
|
bool_t
|
|
|
|
xdr_remote_auth_sasl_step_ret (XDR *xdrs, remote_auth_sasl_step_ret *objp)
|
|
|
|
{
|
2008-04-10 16:54:54 +00:00
|
|
|
char **objp_cpp0 = (char **) (void *) &objp->data.data_val;
|
2007-12-05 15:24:15 +00:00
|
|
|
|
2008-04-10 16:54:54 +00:00
|
|
|
if (!xdr_int (xdrs, &objp->complete))
|
|
|
|
return FALSE;
|
|
|
|
if (!xdr_int (xdrs, &objp->nil))
|
|
|
|
return FALSE;
|
|
|
|
if (!xdr_array (xdrs, objp_cpp0, (u_int *) &objp->data.data_len, REMOTE_AUTH_SASL_DATA_MAX,
|
|
|
|
sizeof (char), (xdrproc_t) xdr_char))
|
|
|
|
return FALSE;
|
|
|
|
return TRUE;
|
2007-12-05 15:24:15 +00:00
|
|
|
}
|
|
|
|
|
2007-12-05 18:21:27 +00:00
|
|
|
bool_t
|
|
|
|
xdr_remote_auth_polkit_ret (XDR *xdrs, remote_auth_polkit_ret *objp)
|
|
|
|
{
|
|
|
|
|
2008-04-10 16:54:54 +00:00
|
|
|
if (!xdr_int (xdrs, &objp->complete))
|
|
|
|
return FALSE;
|
|
|
|
return TRUE;
|
2007-12-05 18:21:27 +00:00
|
|
|
}
|
|
|
|
|
2008-02-20 15:22:35 +00:00
|
|
|
bool_t
|
|
|
|
xdr_remote_num_of_storage_pools_ret (XDR *xdrs, remote_num_of_storage_pools_ret *objp)
|
|
|
|
{
|
|
|
|
|
2008-04-10 16:54:54 +00:00
|
|
|
if (!xdr_int (xdrs, &objp->num))
|
|
|
|
return FALSE;
|
|
|
|
return TRUE;
|
2008-02-20 15:22:35 +00:00
|
|
|
}
|
|
|
|
|
|
|
|
bool_t
|
|
|
|
xdr_remote_list_storage_pools_args (XDR *xdrs, remote_list_storage_pools_args *objp)
|
|
|
|
{
|
|
|
|
|
2008-04-10 16:54:54 +00:00
|
|
|
if (!xdr_int (xdrs, &objp->maxnames))
|
|
|
|
return FALSE;
|
|
|
|
return TRUE;
|
2008-02-20 15:22:35 +00:00
|
|
|
}
|
|
|
|
|
|
|
|
bool_t
|
|
|
|
xdr_remote_list_storage_pools_ret (XDR *xdrs, remote_list_storage_pools_ret *objp)
|
|
|
|
{
|
2008-04-10 16:54:54 +00:00
|
|
|
char **objp_cpp0 = (char **) (void *) &objp->names.names_val;
|
2008-02-20 15:22:35 +00:00
|
|
|
|
2008-04-10 16:54:54 +00:00
|
|
|
if (!xdr_array (xdrs, objp_cpp0, (u_int *) &objp->names.names_len, REMOTE_STORAGE_POOL_NAME_LIST_MAX,
|
|
|
|
sizeof (remote_nonnull_string), (xdrproc_t) xdr_remote_nonnull_string))
|
|
|
|
return FALSE;
|
|
|
|
return TRUE;
|
2008-02-20 15:22:35 +00:00
|
|
|
}
|
|
|
|
|
|
|
|
bool_t
|
|
|
|
xdr_remote_num_of_defined_storage_pools_ret (XDR *xdrs, remote_num_of_defined_storage_pools_ret *objp)
|
|
|
|
{
|
|
|
|
|
2008-04-10 16:54:54 +00:00
|
|
|
if (!xdr_int (xdrs, &objp->num))
|
|
|
|
return FALSE;
|
|
|
|
return TRUE;
|
2008-02-20 15:22:35 +00:00
|
|
|
}
|
|
|
|
|
|
|
|
bool_t
|
|
|
|
xdr_remote_list_defined_storage_pools_args (XDR *xdrs, remote_list_defined_storage_pools_args *objp)
|
|
|
|
{
|
|
|
|
|
2008-04-10 16:54:54 +00:00
|
|
|
if (!xdr_int (xdrs, &objp->maxnames))
|
|
|
|
return FALSE;
|
|
|
|
return TRUE;
|
2008-02-20 15:22:35 +00:00
|
|
|
}
|
|
|
|
|
|
|
|
bool_t
|
|
|
|
xdr_remote_list_defined_storage_pools_ret (XDR *xdrs, remote_list_defined_storage_pools_ret *objp)
|
|
|
|
{
|
2008-04-10 16:54:54 +00:00
|
|
|
char **objp_cpp0 = (char **) (void *) &objp->names.names_val;
|
2008-02-20 15:22:35 +00:00
|
|
|
|
2008-04-10 16:54:54 +00:00
|
|
|
if (!xdr_array (xdrs, objp_cpp0, (u_int *) &objp->names.names_len, REMOTE_STORAGE_POOL_NAME_LIST_MAX,
|
|
|
|
sizeof (remote_nonnull_string), (xdrproc_t) xdr_remote_nonnull_string))
|
|
|
|
return FALSE;
|
|
|
|
return TRUE;
|
2008-02-20 15:22:35 +00:00
|
|
|
}
|
|
|
|
|
2008-08-27 20:05:58 +00:00
|
|
|
bool_t
|
|
|
|
xdr_remote_find_storage_pool_sources_args (XDR *xdrs, remote_find_storage_pool_sources_args *objp)
|
|
|
|
{
|
|
|
|
|
|
|
|
if (!xdr_remote_nonnull_string (xdrs, &objp->type))
|
|
|
|
return FALSE;
|
|
|
|
if (!xdr_remote_string (xdrs, &objp->srcSpec))
|
|
|
|
return FALSE;
|
|
|
|
if (!xdr_u_int (xdrs, &objp->flags))
|
|
|
|
return FALSE;
|
|
|
|
return TRUE;
|
|
|
|
}
|
|
|
|
|
|
|
|
bool_t
|
|
|
|
xdr_remote_find_storage_pool_sources_ret (XDR *xdrs, remote_find_storage_pool_sources_ret *objp)
|
|
|
|
{
|
|
|
|
|
|
|
|
if (!xdr_remote_nonnull_string (xdrs, &objp->xml))
|
|
|
|
return FALSE;
|
|
|
|
return TRUE;
|
|
|
|
}
|
|
|
|
|
2008-02-20 15:22:35 +00:00
|
|
|
bool_t
|
|
|
|
xdr_remote_storage_pool_lookup_by_uuid_args (XDR *xdrs, remote_storage_pool_lookup_by_uuid_args *objp)
|
|
|
|
{
|
|
|
|
|
2008-04-10 16:54:54 +00:00
|
|
|
if (!xdr_remote_uuid (xdrs, objp->uuid))
|
|
|
|
return FALSE;
|
|
|
|
return TRUE;
|
2008-02-20 15:22:35 +00:00
|
|
|
}
|
|
|
|
|
|
|
|
bool_t
|
|
|
|
xdr_remote_storage_pool_lookup_by_uuid_ret (XDR *xdrs, remote_storage_pool_lookup_by_uuid_ret *objp)
|
|
|
|
{
|
|
|
|
|
2008-04-10 16:54:54 +00:00
|
|
|
if (!xdr_remote_nonnull_storage_pool (xdrs, &objp->pool))
|
|
|
|
return FALSE;
|
|
|
|
return TRUE;
|
2008-02-20 15:22:35 +00:00
|
|
|
}
|
|
|
|
|
|
|
|
bool_t
|
|
|
|
xdr_remote_storage_pool_lookup_by_name_args (XDR *xdrs, remote_storage_pool_lookup_by_name_args *objp)
|
|
|
|
{
|
|
|
|
|
2008-04-10 16:54:54 +00:00
|
|
|
if (!xdr_remote_nonnull_string (xdrs, &objp->name))
|
|
|
|
return FALSE;
|
|
|
|
return TRUE;
|
2008-02-20 15:22:35 +00:00
|
|
|
}
|
|
|
|
|
|
|
|
bool_t
|
|
|
|
xdr_remote_storage_pool_lookup_by_name_ret (XDR *xdrs, remote_storage_pool_lookup_by_name_ret *objp)
|
|
|
|
{
|
|
|
|
|
2008-04-10 16:54:54 +00:00
|
|
|
if (!xdr_remote_nonnull_storage_pool (xdrs, &objp->pool))
|
|
|
|
return FALSE;
|
|
|
|
return TRUE;
|
2008-02-20 15:22:35 +00:00
|
|
|
}
|
|
|
|
|
|
|
|
bool_t
|
|
|
|
xdr_remote_storage_pool_lookup_by_volume_args (XDR *xdrs, remote_storage_pool_lookup_by_volume_args *objp)
|
|
|
|
{
|
|
|
|
|
2008-04-10 16:54:54 +00:00
|
|
|
if (!xdr_remote_nonnull_storage_vol (xdrs, &objp->vol))
|
|
|
|
return FALSE;
|
|
|
|
return TRUE;
|
2008-02-20 15:22:35 +00:00
|
|
|
}
|
|
|
|
|
|
|
|
bool_t
|
|
|
|
xdr_remote_storage_pool_lookup_by_volume_ret (XDR *xdrs, remote_storage_pool_lookup_by_volume_ret *objp)
|
|
|
|
{
|
|
|
|
|
2008-04-10 16:54:54 +00:00
|
|
|
if (!xdr_remote_nonnull_storage_pool (xdrs, &objp->pool))
|
|
|
|
return FALSE;
|
|
|
|
return TRUE;
|
2008-02-20 15:22:35 +00:00
|
|
|
}
|
|
|
|
|
|
|
|
bool_t
|
|
|
|
xdr_remote_storage_pool_create_xml_args (XDR *xdrs, remote_storage_pool_create_xml_args *objp)
|
|
|
|
{
|
|
|
|
|
2008-04-10 16:54:54 +00:00
|
|
|
if (!xdr_remote_nonnull_string (xdrs, &objp->xml))
|
|
|
|
return FALSE;
|
|
|
|
if (!xdr_u_int (xdrs, &objp->flags))
|
|
|
|
return FALSE;
|
|
|
|
return TRUE;
|
2008-02-20 15:22:35 +00:00
|
|
|
}
|
|
|
|
|
|
|
|
bool_t
|
|
|
|
xdr_remote_storage_pool_create_xml_ret (XDR *xdrs, remote_storage_pool_create_xml_ret *objp)
|
|
|
|
{
|
|
|
|
|
2008-04-10 16:54:54 +00:00
|
|
|
if (!xdr_remote_nonnull_storage_pool (xdrs, &objp->pool))
|
|
|
|
return FALSE;
|
|
|
|
return TRUE;
|
2008-02-20 15:22:35 +00:00
|
|
|
}
|
|
|
|
|
|
|
|
bool_t
|
|
|
|
xdr_remote_storage_pool_define_xml_args (XDR *xdrs, remote_storage_pool_define_xml_args *objp)
|
|
|
|
{
|
|
|
|
|
2008-04-10 16:54:54 +00:00
|
|
|
if (!xdr_remote_nonnull_string (xdrs, &objp->xml))
|
|
|
|
return FALSE;
|
|
|
|
if (!xdr_u_int (xdrs, &objp->flags))
|
|
|
|
return FALSE;
|
|
|
|
return TRUE;
|
2008-02-20 15:22:35 +00:00
|
|
|
}
|
|
|
|
|
|
|
|
bool_t
|
|
|
|
xdr_remote_storage_pool_define_xml_ret (XDR *xdrs, remote_storage_pool_define_xml_ret *objp)
|
|
|
|
{
|
|
|
|
|
2008-04-10 16:54:54 +00:00
|
|
|
if (!xdr_remote_nonnull_storage_pool (xdrs, &objp->pool))
|
|
|
|
return FALSE;
|
|
|
|
return TRUE;
|
2008-02-20 15:22:35 +00:00
|
|
|
}
|
|
|
|
|
|
|
|
bool_t
|
|
|
|
xdr_remote_storage_pool_build_args (XDR *xdrs, remote_storage_pool_build_args *objp)
|
|
|
|
{
|
|
|
|
|
2008-04-10 16:54:54 +00:00
|
|
|
if (!xdr_remote_nonnull_storage_pool (xdrs, &objp->pool))
|
|
|
|
return FALSE;
|
|
|
|
if (!xdr_u_int (xdrs, &objp->flags))
|
|
|
|
return FALSE;
|
|
|
|
return TRUE;
|
2008-02-20 15:22:35 +00:00
|
|
|
}
|
|
|
|
|
|
|
|
bool_t
|
|
|
|
xdr_remote_storage_pool_undefine_args (XDR *xdrs, remote_storage_pool_undefine_args *objp)
|
|
|
|
{
|
|
|
|
|
2008-04-10 16:54:54 +00:00
|
|
|
if (!xdr_remote_nonnull_storage_pool (xdrs, &objp->pool))
|
|
|
|
return FALSE;
|
|
|
|
return TRUE;
|
2008-02-20 15:22:35 +00:00
|
|
|
}
|
|
|
|
|
|
|
|
bool_t
|
|
|
|
xdr_remote_storage_pool_create_args (XDR *xdrs, remote_storage_pool_create_args *objp)
|
|
|
|
{
|
|
|
|
|
2008-04-10 16:54:54 +00:00
|
|
|
if (!xdr_remote_nonnull_storage_pool (xdrs, &objp->pool))
|
|
|
|
return FALSE;
|
|
|
|
if (!xdr_u_int (xdrs, &objp->flags))
|
|
|
|
return FALSE;
|
|
|
|
return TRUE;
|
2008-02-20 15:22:35 +00:00
|
|
|
}
|
|
|
|
|
|
|
|
bool_t
|
|
|
|
xdr_remote_storage_pool_destroy_args (XDR *xdrs, remote_storage_pool_destroy_args *objp)
|
|
|
|
{
|
|
|
|
|
2008-04-10 16:54:54 +00:00
|
|
|
if (!xdr_remote_nonnull_storage_pool (xdrs, &objp->pool))
|
|
|
|
return FALSE;
|
|
|
|
return TRUE;
|
2008-02-20 15:22:35 +00:00
|
|
|
}
|
|
|
|
|
|
|
|
bool_t
|
|
|
|
xdr_remote_storage_pool_delete_args (XDR *xdrs, remote_storage_pool_delete_args *objp)
|
|
|
|
{
|
|
|
|
|
2008-04-10 16:54:54 +00:00
|
|
|
if (!xdr_remote_nonnull_storage_pool (xdrs, &objp->pool))
|
|
|
|
return FALSE;
|
|
|
|
if (!xdr_u_int (xdrs, &objp->flags))
|
|
|
|
return FALSE;
|
|
|
|
return TRUE;
|
2008-02-20 15:22:35 +00:00
|
|
|
}
|
|
|
|
|
|
|
|
bool_t
|
|
|
|
xdr_remote_storage_pool_refresh_args (XDR *xdrs, remote_storage_pool_refresh_args *objp)
|
|
|
|
{
|
|
|
|
|
2008-04-10 16:54:54 +00:00
|
|
|
if (!xdr_remote_nonnull_storage_pool (xdrs, &objp->pool))
|
|
|
|
return FALSE;
|
|
|
|
if (!xdr_u_int (xdrs, &objp->flags))
|
|
|
|
return FALSE;
|
|
|
|
return TRUE;
|
2008-02-20 15:22:35 +00:00
|
|
|
}
|
|
|
|
|
|
|
|
bool_t
|
|
|
|
xdr_remote_storage_pool_dump_xml_args (XDR *xdrs, remote_storage_pool_dump_xml_args *objp)
|
|
|
|
{
|
|
|
|
|
2008-04-10 16:54:54 +00:00
|
|
|
if (!xdr_remote_nonnull_storage_pool (xdrs, &objp->pool))
|
|
|
|
return FALSE;
|
|
|
|
if (!xdr_u_int (xdrs, &objp->flags))
|
|
|
|
return FALSE;
|
|
|
|
return TRUE;
|
2008-02-20 15:22:35 +00:00
|
|
|
}
|
|
|
|
|
|
|
|
bool_t
|
|
|
|
xdr_remote_storage_pool_dump_xml_ret (XDR *xdrs, remote_storage_pool_dump_xml_ret *objp)
|
|
|
|
{
|
|
|
|
|
2008-04-10 16:54:54 +00:00
|
|
|
if (!xdr_remote_nonnull_string (xdrs, &objp->xml))
|
|
|
|
return FALSE;
|
|
|
|
return TRUE;
|
2008-02-20 15:22:35 +00:00
|
|
|
}
|
|
|
|
|
|
|
|
bool_t
|
|
|
|
xdr_remote_storage_pool_get_info_args (XDR *xdrs, remote_storage_pool_get_info_args *objp)
|
|
|
|
{
|
|
|
|
|
2008-04-10 16:54:54 +00:00
|
|
|
if (!xdr_remote_nonnull_storage_pool (xdrs, &objp->pool))
|
|
|
|
return FALSE;
|
|
|
|
return TRUE;
|
2008-02-20 15:22:35 +00:00
|
|
|
}
|
|
|
|
|
|
|
|
bool_t
|
|
|
|
xdr_remote_storage_pool_get_info_ret (XDR *xdrs, remote_storage_pool_get_info_ret *objp)
|
|
|
|
{
|
|
|
|
|
2008-04-10 16:54:54 +00:00
|
|
|
if (!xdr_u_char (xdrs, &objp->state))
|
|
|
|
return FALSE;
|
2009-01-28 21:33:56 +00:00
|
|
|
if (!xdr_uint64_t (xdrs, &objp->capacity))
|
2008-04-10 16:54:54 +00:00
|
|
|
return FALSE;
|
2009-01-28 21:33:56 +00:00
|
|
|
if (!xdr_uint64_t (xdrs, &objp->allocation))
|
2008-04-10 16:54:54 +00:00
|
|
|
return FALSE;
|
2009-01-28 21:33:56 +00:00
|
|
|
if (!xdr_uint64_t (xdrs, &objp->available))
|
2008-04-10 16:54:54 +00:00
|
|
|
return FALSE;
|
|
|
|
return TRUE;
|
2008-02-20 15:22:35 +00:00
|
|
|
}
|
|
|
|
|
|
|
|
bool_t
|
|
|
|
xdr_remote_storage_pool_get_autostart_args (XDR *xdrs, remote_storage_pool_get_autostart_args *objp)
|
|
|
|
{
|
|
|
|
|
2008-04-10 16:54:54 +00:00
|
|
|
if (!xdr_remote_nonnull_storage_pool (xdrs, &objp->pool))
|
|
|
|
return FALSE;
|
|
|
|
return TRUE;
|
2008-02-20 15:22:35 +00:00
|
|
|
}
|
|
|
|
|
|
|
|
bool_t
|
|
|
|
xdr_remote_storage_pool_get_autostart_ret (XDR *xdrs, remote_storage_pool_get_autostart_ret *objp)
|
|
|
|
{
|
|
|
|
|
2008-04-10 16:54:54 +00:00
|
|
|
if (!xdr_int (xdrs, &objp->autostart))
|
|
|
|
return FALSE;
|
|
|
|
return TRUE;
|
2008-02-20 15:22:35 +00:00
|
|
|
}
|
|
|
|
|
|
|
|
bool_t
|
|
|
|
xdr_remote_storage_pool_set_autostart_args (XDR *xdrs, remote_storage_pool_set_autostart_args *objp)
|
|
|
|
{
|
|
|
|
|
2008-04-10 16:54:54 +00:00
|
|
|
if (!xdr_remote_nonnull_storage_pool (xdrs, &objp->pool))
|
|
|
|
return FALSE;
|
|
|
|
if (!xdr_int (xdrs, &objp->autostart))
|
|
|
|
return FALSE;
|
|
|
|
return TRUE;
|
2008-02-20 15:22:35 +00:00
|
|
|
}
|
|
|
|
|
|
|
|
bool_t
|
|
|
|
xdr_remote_storage_pool_num_of_volumes_args (XDR *xdrs, remote_storage_pool_num_of_volumes_args *objp)
|
|
|
|
{
|
|
|
|
|
2008-04-10 16:54:54 +00:00
|
|
|
if (!xdr_remote_nonnull_storage_pool (xdrs, &objp->pool))
|
|
|
|
return FALSE;
|
|
|
|
return TRUE;
|
2008-02-20 15:22:35 +00:00
|
|
|
}
|
|
|
|
|
|
|
|
bool_t
|
|
|
|
xdr_remote_storage_pool_num_of_volumes_ret (XDR *xdrs, remote_storage_pool_num_of_volumes_ret *objp)
|
|
|
|
{
|
|
|
|
|
2008-04-10 16:54:54 +00:00
|
|
|
if (!xdr_int (xdrs, &objp->num))
|
|
|
|
return FALSE;
|
|
|
|
return TRUE;
|
2008-02-20 15:22:35 +00:00
|
|
|
}
|
|
|
|
|
|
|
|
bool_t
|
|
|
|
xdr_remote_storage_pool_list_volumes_args (XDR *xdrs, remote_storage_pool_list_volumes_args *objp)
|
|
|
|
{
|
|
|
|
|
2008-04-10 16:54:54 +00:00
|
|
|
if (!xdr_remote_nonnull_storage_pool (xdrs, &objp->pool))
|
|
|
|
return FALSE;
|
|
|
|
if (!xdr_int (xdrs, &objp->maxnames))
|
|
|
|
return FALSE;
|
|
|
|
return TRUE;
|
2008-02-20 15:22:35 +00:00
|
|
|
}
|
|
|
|
|
|
|
|
bool_t
|
|
|
|
xdr_remote_storage_pool_list_volumes_ret (XDR *xdrs, remote_storage_pool_list_volumes_ret *objp)
|
|
|
|
{
|
2008-04-10 16:54:54 +00:00
|
|
|
char **objp_cpp0 = (char **) (void *) &objp->names.names_val;
|
2008-02-20 15:22:35 +00:00
|
|
|
|
2008-04-10 16:54:54 +00:00
|
|
|
if (!xdr_array (xdrs, objp_cpp0, (u_int *) &objp->names.names_len, REMOTE_STORAGE_VOL_NAME_LIST_MAX,
|
|
|
|
sizeof (remote_nonnull_string), (xdrproc_t) xdr_remote_nonnull_string))
|
|
|
|
return FALSE;
|
|
|
|
return TRUE;
|
2008-02-20 15:22:35 +00:00
|
|
|
}
|
|
|
|
|
|
|
|
bool_t
|
|
|
|
xdr_remote_storage_vol_lookup_by_name_args (XDR *xdrs, remote_storage_vol_lookup_by_name_args *objp)
|
|
|
|
{
|
|
|
|
|
2008-04-10 16:54:54 +00:00
|
|
|
if (!xdr_remote_nonnull_storage_pool (xdrs, &objp->pool))
|
|
|
|
return FALSE;
|
|
|
|
if (!xdr_remote_nonnull_string (xdrs, &objp->name))
|
|
|
|
return FALSE;
|
|
|
|
return TRUE;
|
2008-02-20 15:22:35 +00:00
|
|
|
}
|
|
|
|
|
|
|
|
bool_t
|
|
|
|
xdr_remote_storage_vol_lookup_by_name_ret (XDR *xdrs, remote_storage_vol_lookup_by_name_ret *objp)
|
|
|
|
{
|
|
|
|
|
2008-04-10 16:54:54 +00:00
|
|
|
if (!xdr_remote_nonnull_storage_vol (xdrs, &objp->vol))
|
|
|
|
return FALSE;
|
|
|
|
return TRUE;
|
2008-02-20 15:22:35 +00:00
|
|
|
}
|
|
|
|
|
|
|
|
bool_t
|
|
|
|
xdr_remote_storage_vol_lookup_by_key_args (XDR *xdrs, remote_storage_vol_lookup_by_key_args *objp)
|
|
|
|
{
|
|
|
|
|
2008-04-10 16:54:54 +00:00
|
|
|
if (!xdr_remote_nonnull_string (xdrs, &objp->key))
|
|
|
|
return FALSE;
|
|
|
|
return TRUE;
|
2008-02-20 15:22:35 +00:00
|
|
|
}
|
|
|
|
|
|
|
|
bool_t
|
|
|
|
xdr_remote_storage_vol_lookup_by_key_ret (XDR *xdrs, remote_storage_vol_lookup_by_key_ret *objp)
|
|
|
|
{
|
|
|
|
|
2008-04-10 16:54:54 +00:00
|
|
|
if (!xdr_remote_nonnull_storage_vol (xdrs, &objp->vol))
|
|
|
|
return FALSE;
|
|
|
|
return TRUE;
|
2008-02-20 15:22:35 +00:00
|
|
|
}
|
|
|
|
|
|
|
|
bool_t
|
|
|
|
xdr_remote_storage_vol_lookup_by_path_args (XDR *xdrs, remote_storage_vol_lookup_by_path_args *objp)
|
|
|
|
{
|
|
|
|
|
2008-04-10 16:54:54 +00:00
|
|
|
if (!xdr_remote_nonnull_string (xdrs, &objp->path))
|
|
|
|
return FALSE;
|
|
|
|
return TRUE;
|
2008-02-20 15:22:35 +00:00
|
|
|
}
|
|
|
|
|
|
|
|
bool_t
|
|
|
|
xdr_remote_storage_vol_lookup_by_path_ret (XDR *xdrs, remote_storage_vol_lookup_by_path_ret *objp)
|
|
|
|
{
|
|
|
|
|
2008-04-10 16:54:54 +00:00
|
|
|
if (!xdr_remote_nonnull_storage_vol (xdrs, &objp->vol))
|
|
|
|
return FALSE;
|
|
|
|
return TRUE;
|
2008-02-20 15:22:35 +00:00
|
|
|
}
|
|
|
|
|
|
|
|
bool_t
|
|
|
|
xdr_remote_storage_vol_create_xml_args (XDR *xdrs, remote_storage_vol_create_xml_args *objp)
|
|
|
|
{
|
|
|
|
|
2008-04-10 16:54:54 +00:00
|
|
|
if (!xdr_remote_nonnull_storage_pool (xdrs, &objp->pool))
|
|
|
|
return FALSE;
|
|
|
|
if (!xdr_remote_nonnull_string (xdrs, &objp->xml))
|
|
|
|
return FALSE;
|
|
|
|
if (!xdr_u_int (xdrs, &objp->flags))
|
|
|
|
return FALSE;
|
|
|
|
return TRUE;
|
2008-02-20 15:22:35 +00:00
|
|
|
}
|
|
|
|
|
|
|
|
bool_t
|
|
|
|
xdr_remote_storage_vol_create_xml_ret (XDR *xdrs, remote_storage_vol_create_xml_ret *objp)
|
|
|
|
{
|
|
|
|
|
2008-04-10 16:54:54 +00:00
|
|
|
if (!xdr_remote_nonnull_storage_vol (xdrs, &objp->vol))
|
|
|
|
return FALSE;
|
|
|
|
return TRUE;
|
2008-02-20 15:22:35 +00:00
|
|
|
}
|
|
|
|
|
2009-05-12 20:13:52 +00:00
|
|
|
bool_t
|
|
|
|
xdr_remote_storage_vol_create_xml_from_args (XDR *xdrs, remote_storage_vol_create_xml_from_args *objp)
|
|
|
|
{
|
|
|
|
|
|
|
|
if (!xdr_remote_nonnull_storage_pool (xdrs, &objp->pool))
|
|
|
|
return FALSE;
|
|
|
|
if (!xdr_remote_nonnull_string (xdrs, &objp->xml))
|
|
|
|
return FALSE;
|
|
|
|
if (!xdr_remote_nonnull_storage_vol (xdrs, &objp->clonevol))
|
|
|
|
return FALSE;
|
|
|
|
if (!xdr_u_int (xdrs, &objp->flags))
|
|
|
|
return FALSE;
|
|
|
|
return TRUE;
|
|
|
|
}
|
|
|
|
|
|
|
|
bool_t
|
|
|
|
xdr_remote_storage_vol_create_xml_from_ret (XDR *xdrs, remote_storage_vol_create_xml_from_ret *objp)
|
|
|
|
{
|
|
|
|
|
|
|
|
if (!xdr_remote_nonnull_storage_vol (xdrs, &objp->vol))
|
|
|
|
return FALSE;
|
|
|
|
return TRUE;
|
|
|
|
}
|
|
|
|
|
2008-02-20 15:22:35 +00:00
|
|
|
bool_t
|
|
|
|
xdr_remote_storage_vol_delete_args (XDR *xdrs, remote_storage_vol_delete_args *objp)
|
|
|
|
{
|
|
|
|
|
2008-04-10 16:54:54 +00:00
|
|
|
if (!xdr_remote_nonnull_storage_vol (xdrs, &objp->vol))
|
|
|
|
return FALSE;
|
|
|
|
if (!xdr_u_int (xdrs, &objp->flags))
|
|
|
|
return FALSE;
|
|
|
|
return TRUE;
|
2008-02-20 15:22:35 +00:00
|
|
|
}
|
|
|
|
|
2010-03-01 20:32:35 +00:00
|
|
|
bool_t
|
|
|
|
xdr_remote_storage_vol_wipe_args (XDR *xdrs, remote_storage_vol_wipe_args *objp)
|
|
|
|
{
|
|
|
|
|
|
|
|
if (!xdr_remote_nonnull_storage_vol (xdrs, &objp->vol))
|
|
|
|
return FALSE;
|
|
|
|
if (!xdr_u_int (xdrs, &objp->flags))
|
|
|
|
return FALSE;
|
|
|
|
return TRUE;
|
|
|
|
}
|
|
|
|
|
2008-02-20 15:22:35 +00:00
|
|
|
bool_t
|
|
|
|
xdr_remote_storage_vol_dump_xml_args (XDR *xdrs, remote_storage_vol_dump_xml_args *objp)
|
|
|
|
{
|
|
|
|
|
2008-04-10 16:54:54 +00:00
|
|
|
if (!xdr_remote_nonnull_storage_vol (xdrs, &objp->vol))
|
|
|
|
return FALSE;
|
|
|
|
if (!xdr_u_int (xdrs, &objp->flags))
|
|
|
|
return FALSE;
|
|
|
|
return TRUE;
|
2008-02-20 15:22:35 +00:00
|
|
|
}
|
|
|
|
|
|
|
|
bool_t
|
|
|
|
xdr_remote_storage_vol_dump_xml_ret (XDR *xdrs, remote_storage_vol_dump_xml_ret *objp)
|
|
|
|
{
|
|
|
|
|
2008-04-10 16:54:54 +00:00
|
|
|
if (!xdr_remote_nonnull_string (xdrs, &objp->xml))
|
|
|
|
return FALSE;
|
|
|
|
return TRUE;
|
2008-02-20 15:22:35 +00:00
|
|
|
}
|
|
|
|
|
|
|
|
bool_t
|
|
|
|
xdr_remote_storage_vol_get_info_args (XDR *xdrs, remote_storage_vol_get_info_args *objp)
|
|
|
|
{
|
|
|
|
|
2008-04-10 16:54:54 +00:00
|
|
|
if (!xdr_remote_nonnull_storage_vol (xdrs, &objp->vol))
|
|
|
|
return FALSE;
|
|
|
|
return TRUE;
|
2008-02-20 15:22:35 +00:00
|
|
|
}
|
|
|
|
|
|
|
|
bool_t
|
|
|
|
xdr_remote_storage_vol_get_info_ret (XDR *xdrs, remote_storage_vol_get_info_ret *objp)
|
|
|
|
{
|
|
|
|
|
2008-04-10 16:54:54 +00:00
|
|
|
if (!xdr_char (xdrs, &objp->type))
|
|
|
|
return FALSE;
|
2009-01-28 21:33:56 +00:00
|
|
|
if (!xdr_uint64_t (xdrs, &objp->capacity))
|
2008-04-10 16:54:54 +00:00
|
|
|
return FALSE;
|
2009-01-28 21:33:56 +00:00
|
|
|
if (!xdr_uint64_t (xdrs, &objp->allocation))
|
2008-04-10 16:54:54 +00:00
|
|
|
return FALSE;
|
|
|
|
return TRUE;
|
2008-02-20 15:22:35 +00:00
|
|
|
}
|
|
|
|
|
|
|
|
bool_t
|
|
|
|
xdr_remote_storage_vol_get_path_args (XDR *xdrs, remote_storage_vol_get_path_args *objp)
|
|
|
|
{
|
|
|
|
|
2008-04-10 16:54:54 +00:00
|
|
|
if (!xdr_remote_nonnull_storage_vol (xdrs, &objp->vol))
|
|
|
|
return FALSE;
|
|
|
|
return TRUE;
|
2008-02-20 15:22:35 +00:00
|
|
|
}
|
|
|
|
|
|
|
|
bool_t
|
|
|
|
xdr_remote_storage_vol_get_path_ret (XDR *xdrs, remote_storage_vol_get_path_ret *objp)
|
|
|
|
{
|
|
|
|
|
2008-04-10 16:54:54 +00:00
|
|
|
if (!xdr_remote_nonnull_string (xdrs, &objp->name))
|
|
|
|
return FALSE;
|
|
|
|
return TRUE;
|
2008-02-20 15:22:35 +00:00
|
|
|
}
|
|
|
|
|
2008-11-21 12:31:04 +00:00
|
|
|
bool_t
|
|
|
|
xdr_remote_node_num_of_devices_args (XDR *xdrs, remote_node_num_of_devices_args *objp)
|
|
|
|
{
|
|
|
|
|
|
|
|
if (!xdr_remote_string (xdrs, &objp->cap))
|
|
|
|
return FALSE;
|
|
|
|
if (!xdr_u_int (xdrs, &objp->flags))
|
|
|
|
return FALSE;
|
|
|
|
return TRUE;
|
|
|
|
}
|
|
|
|
|
|
|
|
bool_t
|
|
|
|
xdr_remote_node_num_of_devices_ret (XDR *xdrs, remote_node_num_of_devices_ret *objp)
|
|
|
|
{
|
|
|
|
|
|
|
|
if (!xdr_int (xdrs, &objp->num))
|
|
|
|
return FALSE;
|
|
|
|
return TRUE;
|
|
|
|
}
|
|
|
|
|
|
|
|
bool_t
|
|
|
|
xdr_remote_node_list_devices_args (XDR *xdrs, remote_node_list_devices_args *objp)
|
|
|
|
{
|
|
|
|
|
|
|
|
if (!xdr_remote_string (xdrs, &objp->cap))
|
|
|
|
return FALSE;
|
|
|
|
if (!xdr_int (xdrs, &objp->maxnames))
|
|
|
|
return FALSE;
|
|
|
|
if (!xdr_u_int (xdrs, &objp->flags))
|
|
|
|
return FALSE;
|
|
|
|
return TRUE;
|
|
|
|
}
|
|
|
|
|
|
|
|
bool_t
|
|
|
|
xdr_remote_node_list_devices_ret (XDR *xdrs, remote_node_list_devices_ret *objp)
|
|
|
|
{
|
|
|
|
char **objp_cpp0 = (char **) (void *) &objp->names.names_val;
|
|
|
|
|
|
|
|
if (!xdr_array (xdrs, objp_cpp0, (u_int *) &objp->names.names_len, REMOTE_NODE_DEVICE_NAME_LIST_MAX,
|
|
|
|
sizeof (remote_nonnull_string), (xdrproc_t) xdr_remote_nonnull_string))
|
|
|
|
return FALSE;
|
|
|
|
return TRUE;
|
|
|
|
}
|
|
|
|
|
|
|
|
bool_t
|
|
|
|
xdr_remote_node_device_lookup_by_name_args (XDR *xdrs, remote_node_device_lookup_by_name_args *objp)
|
|
|
|
{
|
|
|
|
|
|
|
|
if (!xdr_remote_nonnull_string (xdrs, &objp->name))
|
|
|
|
return FALSE;
|
|
|
|
return TRUE;
|
|
|
|
}
|
|
|
|
|
|
|
|
bool_t
|
|
|
|
xdr_remote_node_device_lookup_by_name_ret (XDR *xdrs, remote_node_device_lookup_by_name_ret *objp)
|
|
|
|
{
|
|
|
|
|
|
|
|
if (!xdr_remote_nonnull_node_device (xdrs, &objp->dev))
|
|
|
|
return FALSE;
|
|
|
|
return TRUE;
|
|
|
|
}
|
|
|
|
|
|
|
|
bool_t
|
|
|
|
xdr_remote_node_device_dump_xml_args (XDR *xdrs, remote_node_device_dump_xml_args *objp)
|
|
|
|
{
|
|
|
|
|
|
|
|
if (!xdr_remote_nonnull_string (xdrs, &objp->name))
|
|
|
|
return FALSE;
|
|
|
|
if (!xdr_u_int (xdrs, &objp->flags))
|
|
|
|
return FALSE;
|
|
|
|
return TRUE;
|
|
|
|
}
|
|
|
|
|
|
|
|
bool_t
|
|
|
|
xdr_remote_node_device_dump_xml_ret (XDR *xdrs, remote_node_device_dump_xml_ret *objp)
|
|
|
|
{
|
|
|
|
|
|
|
|
if (!xdr_remote_nonnull_string (xdrs, &objp->xml))
|
|
|
|
return FALSE;
|
|
|
|
return TRUE;
|
|
|
|
}
|
|
|
|
|
|
|
|
bool_t
|
|
|
|
xdr_remote_node_device_get_parent_args (XDR *xdrs, remote_node_device_get_parent_args *objp)
|
|
|
|
{
|
|
|
|
|
|
|
|
if (!xdr_remote_nonnull_string (xdrs, &objp->name))
|
|
|
|
return FALSE;
|
|
|
|
return TRUE;
|
|
|
|
}
|
|
|
|
|
|
|
|
bool_t
|
|
|
|
xdr_remote_node_device_get_parent_ret (XDR *xdrs, remote_node_device_get_parent_ret *objp)
|
|
|
|
{
|
|
|
|
|
|
|
|
if (!xdr_remote_string (xdrs, &objp->parent))
|
|
|
|
return FALSE;
|
|
|
|
return TRUE;
|
|
|
|
}
|
|
|
|
|
|
|
|
bool_t
|
|
|
|
xdr_remote_node_device_num_of_caps_args (XDR *xdrs, remote_node_device_num_of_caps_args *objp)
|
|
|
|
{
|
|
|
|
|
|
|
|
if (!xdr_remote_nonnull_string (xdrs, &objp->name))
|
|
|
|
return FALSE;
|
|
|
|
return TRUE;
|
|
|
|
}
|
|
|
|
|
|
|
|
bool_t
|
|
|
|
xdr_remote_node_device_num_of_caps_ret (XDR *xdrs, remote_node_device_num_of_caps_ret *objp)
|
|
|
|
{
|
|
|
|
|
|
|
|
if (!xdr_int (xdrs, &objp->num))
|
|
|
|
return FALSE;
|
|
|
|
return TRUE;
|
|
|
|
}
|
|
|
|
|
|
|
|
bool_t
|
|
|
|
xdr_remote_node_device_list_caps_args (XDR *xdrs, remote_node_device_list_caps_args *objp)
|
|
|
|
{
|
|
|
|
|
|
|
|
if (!xdr_remote_nonnull_string (xdrs, &objp->name))
|
|
|
|
return FALSE;
|
|
|
|
if (!xdr_int (xdrs, &objp->maxnames))
|
|
|
|
return FALSE;
|
|
|
|
return TRUE;
|
|
|
|
}
|
|
|
|
|
|
|
|
bool_t
|
|
|
|
xdr_remote_node_device_list_caps_ret (XDR *xdrs, remote_node_device_list_caps_ret *objp)
|
|
|
|
{
|
|
|
|
char **objp_cpp0 = (char **) (void *) &objp->names.names_val;
|
|
|
|
|
|
|
|
if (!xdr_array (xdrs, objp_cpp0, (u_int *) &objp->names.names_len, REMOTE_NODE_DEVICE_CAPS_LIST_MAX,
|
|
|
|
sizeof (remote_nonnull_string), (xdrproc_t) xdr_remote_nonnull_string))
|
|
|
|
return FALSE;
|
|
|
|
return TRUE;
|
|
|
|
}
|
|
|
|
|
2009-03-02 16:30:59 +00:00
|
|
|
bool_t
|
|
|
|
xdr_remote_node_device_dettach_args (XDR *xdrs, remote_node_device_dettach_args *objp)
|
|
|
|
{
|
|
|
|
|
|
|
|
if (!xdr_remote_nonnull_string (xdrs, &objp->name))
|
|
|
|
return FALSE;
|
|
|
|
return TRUE;
|
|
|
|
}
|
|
|
|
|
|
|
|
bool_t
|
|
|
|
xdr_remote_node_device_re_attach_args (XDR *xdrs, remote_node_device_re_attach_args *objp)
|
|
|
|
{
|
|
|
|
|
|
|
|
if (!xdr_remote_nonnull_string (xdrs, &objp->name))
|
|
|
|
return FALSE;
|
|
|
|
return TRUE;
|
|
|
|
}
|
|
|
|
|
|
|
|
bool_t
|
|
|
|
xdr_remote_node_device_reset_args (XDR *xdrs, remote_node_device_reset_args *objp)
|
|
|
|
{
|
|
|
|
|
|
|
|
if (!xdr_remote_nonnull_string (xdrs, &objp->name))
|
|
|
|
return FALSE;
|
|
|
|
return TRUE;
|
|
|
|
}
|
|
|
|
|
2009-04-24 13:11:23 +00:00
|
|
|
bool_t
|
|
|
|
xdr_remote_node_device_create_xml_args (XDR *xdrs, remote_node_device_create_xml_args *objp)
|
|
|
|
{
|
|
|
|
|
|
|
|
if (!xdr_remote_nonnull_string (xdrs, &objp->xml_desc))
|
|
|
|
return FALSE;
|
|
|
|
if (!xdr_int (xdrs, &objp->flags))
|
|
|
|
return FALSE;
|
|
|
|
return TRUE;
|
|
|
|
}
|
|
|
|
|
|
|
|
bool_t
|
|
|
|
xdr_remote_node_device_create_xml_ret (XDR *xdrs, remote_node_device_create_xml_ret *objp)
|
|
|
|
{
|
|
|
|
|
|
|
|
if (!xdr_remote_nonnull_node_device (xdrs, &objp->dev))
|
|
|
|
return FALSE;
|
|
|
|
return TRUE;
|
|
|
|
}
|
|
|
|
|
|
|
|
bool_t
|
|
|
|
xdr_remote_node_device_destroy_args (XDR *xdrs, remote_node_device_destroy_args *objp)
|
|
|
|
{
|
|
|
|
|
|
|
|
if (!xdr_remote_nonnull_string (xdrs, &objp->name))
|
|
|
|
return FALSE;
|
|
|
|
return TRUE;
|
|
|
|
}
|
|
|
|
|
2008-10-23 13:18:18 +00:00
|
|
|
bool_t
|
|
|
|
xdr_remote_domain_events_register_ret (XDR *xdrs, remote_domain_events_register_ret *objp)
|
|
|
|
{
|
|
|
|
|
|
|
|
if (!xdr_int (xdrs, &objp->cb_registered))
|
|
|
|
return FALSE;
|
|
|
|
return TRUE;
|
|
|
|
}
|
|
|
|
|
|
|
|
bool_t
|
|
|
|
xdr_remote_domain_events_deregister_ret (XDR *xdrs, remote_domain_events_deregister_ret *objp)
|
|
|
|
{
|
|
|
|
|
|
|
|
if (!xdr_int (xdrs, &objp->cb_registered))
|
|
|
|
return FALSE;
|
|
|
|
return TRUE;
|
|
|
|
}
|
|
|
|
|
|
|
|
bool_t
|
2010-03-19 14:28:23 +00:00
|
|
|
xdr_remote_domain_event_lifecycle_msg (XDR *xdrs, remote_domain_event_lifecycle_msg *objp)
|
2008-10-23 13:18:18 +00:00
|
|
|
{
|
|
|
|
|
|
|
|
if (!xdr_remote_nonnull_domain (xdrs, &objp->dom))
|
|
|
|
return FALSE;
|
|
|
|
if (!xdr_int (xdrs, &objp->event))
|
|
|
|
return FALSE;
|
2008-11-17 16:43:00 +00:00
|
|
|
if (!xdr_int (xdrs, &objp->detail))
|
|
|
|
return FALSE;
|
2008-10-23 13:18:18 +00:00
|
|
|
return TRUE;
|
|
|
|
}
|
|
|
|
|
2009-05-21 13:50:56 +00:00
|
|
|
bool_t
|
|
|
|
xdr_remote_domain_xml_from_native_args (XDR *xdrs, remote_domain_xml_from_native_args *objp)
|
|
|
|
{
|
|
|
|
|
|
|
|
if (!xdr_remote_nonnull_string (xdrs, &objp->nativeFormat))
|
|
|
|
return FALSE;
|
|
|
|
if (!xdr_remote_nonnull_string (xdrs, &objp->nativeConfig))
|
|
|
|
return FALSE;
|
|
|
|
if (!xdr_u_int (xdrs, &objp->flags))
|
|
|
|
return FALSE;
|
|
|
|
return TRUE;
|
|
|
|
}
|
|
|
|
|
|
|
|
bool_t
|
|
|
|
xdr_remote_domain_xml_from_native_ret (XDR *xdrs, remote_domain_xml_from_native_ret *objp)
|
|
|
|
{
|
|
|
|
|
|
|
|
if (!xdr_remote_nonnull_string (xdrs, &objp->domainXml))
|
|
|
|
return FALSE;
|
|
|
|
return TRUE;
|
|
|
|
}
|
|
|
|
|
|
|
|
bool_t
|
|
|
|
xdr_remote_domain_xml_to_native_args (XDR *xdrs, remote_domain_xml_to_native_args *objp)
|
|
|
|
{
|
|
|
|
|
|
|
|
if (!xdr_remote_nonnull_string (xdrs, &objp->nativeFormat))
|
|
|
|
return FALSE;
|
|
|
|
if (!xdr_remote_nonnull_string (xdrs, &objp->domainXml))
|
|
|
|
return FALSE;
|
|
|
|
if (!xdr_u_int (xdrs, &objp->flags))
|
|
|
|
return FALSE;
|
|
|
|
return TRUE;
|
|
|
|
}
|
|
|
|
|
|
|
|
bool_t
|
|
|
|
xdr_remote_domain_xml_to_native_ret (XDR *xdrs, remote_domain_xml_to_native_ret *objp)
|
|
|
|
{
|
|
|
|
|
|
|
|
if (!xdr_remote_nonnull_string (xdrs, &objp->nativeConfig))
|
|
|
|
return FALSE;
|
|
|
|
return TRUE;
|
|
|
|
}
|
|
|
|
|
2009-07-28 02:01:00 +00:00
|
|
|
bool_t
|
|
|
|
xdr_remote_num_of_secrets_ret (XDR *xdrs, remote_num_of_secrets_ret *objp)
|
|
|
|
{
|
|
|
|
|
|
|
|
if (!xdr_int (xdrs, &objp->num))
|
|
|
|
return FALSE;
|
|
|
|
return TRUE;
|
|
|
|
}
|
|
|
|
|
|
|
|
bool_t
|
|
|
|
xdr_remote_list_secrets_args (XDR *xdrs, remote_list_secrets_args *objp)
|
|
|
|
{
|
|
|
|
|
|
|
|
if (!xdr_int (xdrs, &objp->maxuuids))
|
|
|
|
return FALSE;
|
|
|
|
return TRUE;
|
|
|
|
}
|
|
|
|
|
|
|
|
bool_t
|
|
|
|
xdr_remote_list_secrets_ret (XDR *xdrs, remote_list_secrets_ret *objp)
|
|
|
|
{
|
|
|
|
char **objp_cpp0 = (char **) (void *) &objp->uuids.uuids_val;
|
|
|
|
|
|
|
|
if (!xdr_array (xdrs, objp_cpp0, (u_int *) &objp->uuids.uuids_len, REMOTE_SECRET_UUID_LIST_MAX,
|
|
|
|
sizeof (remote_nonnull_string), (xdrproc_t) xdr_remote_nonnull_string))
|
|
|
|
return FALSE;
|
|
|
|
return TRUE;
|
|
|
|
}
|
|
|
|
|
|
|
|
bool_t
|
Fix UUID handling in secrets/storage encryption APIs
Convert all the secret/storage encryption APIs / wire format to
handle UUIDs in raw format instead of non-canonical printable
format. Guarentees data format correctness.
* docs/schemas/storageencryption.rng: Make UUID mandatory for a secret
and validate fully
* docs/schemas/secret.rng: Fully validate UUID
* include/libvirt/libvirt.h, include/libvirt/libvirt.h.in, Add
virSecretLookupByUUID and virSecretGetUUID. Make
virSecretGetUUIDString follow normal API design pattern
* python/generator.py: Skip generation of virSecretGetUUID,
virSecretGetUUIDString and virSecretLookupByUUID
* python/libvir.c, python/libvirt-python-api.xml: Manual impl
of virSecretGetUUID,virSecretGetUUIDString and virSecretLookupByUUID
* qemud/remote.c: s/virSecretLookupByUUIDString/virSecretLookupByUUID/
Fix get_nonnull_secret/make_nonnull_secret to use unsigned char
* qemud/remote_protocol.x: Fix remote_nonnull_secret to use a
remote_uuid instead of remote_nonnull_string for UUID field.
Rename REMOTE_PROC_SECRET_LOOKUP_BY_UUID_STRING to
REMOTE_PROC_SECRET_LOOKUP_BY_UUID_STRING and make it take an
remote_uuid value
* qemud/remote_dispatch_args.h, qemud/remote_dispatch_prototypes.h,
qemud/remote_dispatch_ret.h, qemud/remote_dispatch_table.h,
qemud/remote_protocol.c, qemud/remote_protocol.h: Re-generate
* src/datatypes.h, src/datatypes.c: Store UUID in raw format instead
of printable. Change virGetSecret to use raw format UUID
* src/driver.h: Rename virDrvSecretLookupByUUIDString to
virDrvSecretLookupByUUID and use raw format UUID
* src/libvirt.c: Add virSecretLookupByUUID and virSecretGetUUID
and re-implement virSecretLookupByUUIDString and
virSecretGetUUIDString in terms of those
* src/libvirt_public.syms: Add virSecretLookupByUUID and
virSecretGetUUID
* src/remote_internal.c: Rename remoteSecretLookupByUUIDString
to remoteSecretLookupByUUID. Fix typo in args for
remoteSecretDefineXML impl. Use raw UUID format for
get_nonnull_secret and make_nonnull_secret
* src/storage_encryption_conf.c, src/storage_encryption_conf.h:
Storage UUID in raw format, and require it to be present in
XML. Use UUID parser to validate.
* secret_conf.h, secret_conf.c: Generate a UUID if none is provided.
Storage UUID in raw format.
* src/secret_driver.c: Adjust to deal with raw UUIDs. Save secrets
in a filed with printable UUID, instead of base64 UUID.
* src/virsh.c: Adjust for changed public API contract of
virSecretGetUUIDString.
* src/storage_Backend.c: DOn't undefine secret we just generated
upon successful volume creation. Fix to handle raw UUIDs. Generate
a non-clashing UUID
* src/qemu_driver.c: Change to use lookupByUUID instead of
lookupByUUIDString
2009-09-10 16:44:12 +00:00
|
|
|
xdr_remote_secret_lookup_by_uuid_args (XDR *xdrs, remote_secret_lookup_by_uuid_args *objp)
|
2009-07-28 02:01:00 +00:00
|
|
|
{
|
|
|
|
|
Fix UUID handling in secrets/storage encryption APIs
Convert all the secret/storage encryption APIs / wire format to
handle UUIDs in raw format instead of non-canonical printable
format. Guarentees data format correctness.
* docs/schemas/storageencryption.rng: Make UUID mandatory for a secret
and validate fully
* docs/schemas/secret.rng: Fully validate UUID
* include/libvirt/libvirt.h, include/libvirt/libvirt.h.in, Add
virSecretLookupByUUID and virSecretGetUUID. Make
virSecretGetUUIDString follow normal API design pattern
* python/generator.py: Skip generation of virSecretGetUUID,
virSecretGetUUIDString and virSecretLookupByUUID
* python/libvir.c, python/libvirt-python-api.xml: Manual impl
of virSecretGetUUID,virSecretGetUUIDString and virSecretLookupByUUID
* qemud/remote.c: s/virSecretLookupByUUIDString/virSecretLookupByUUID/
Fix get_nonnull_secret/make_nonnull_secret to use unsigned char
* qemud/remote_protocol.x: Fix remote_nonnull_secret to use a
remote_uuid instead of remote_nonnull_string for UUID field.
Rename REMOTE_PROC_SECRET_LOOKUP_BY_UUID_STRING to
REMOTE_PROC_SECRET_LOOKUP_BY_UUID_STRING and make it take an
remote_uuid value
* qemud/remote_dispatch_args.h, qemud/remote_dispatch_prototypes.h,
qemud/remote_dispatch_ret.h, qemud/remote_dispatch_table.h,
qemud/remote_protocol.c, qemud/remote_protocol.h: Re-generate
* src/datatypes.h, src/datatypes.c: Store UUID in raw format instead
of printable. Change virGetSecret to use raw format UUID
* src/driver.h: Rename virDrvSecretLookupByUUIDString to
virDrvSecretLookupByUUID and use raw format UUID
* src/libvirt.c: Add virSecretLookupByUUID and virSecretGetUUID
and re-implement virSecretLookupByUUIDString and
virSecretGetUUIDString in terms of those
* src/libvirt_public.syms: Add virSecretLookupByUUID and
virSecretGetUUID
* src/remote_internal.c: Rename remoteSecretLookupByUUIDString
to remoteSecretLookupByUUID. Fix typo in args for
remoteSecretDefineXML impl. Use raw UUID format for
get_nonnull_secret and make_nonnull_secret
* src/storage_encryption_conf.c, src/storage_encryption_conf.h:
Storage UUID in raw format, and require it to be present in
XML. Use UUID parser to validate.
* secret_conf.h, secret_conf.c: Generate a UUID if none is provided.
Storage UUID in raw format.
* src/secret_driver.c: Adjust to deal with raw UUIDs. Save secrets
in a filed with printable UUID, instead of base64 UUID.
* src/virsh.c: Adjust for changed public API contract of
virSecretGetUUIDString.
* src/storage_Backend.c: DOn't undefine secret we just generated
upon successful volume creation. Fix to handle raw UUIDs. Generate
a non-clashing UUID
* src/qemu_driver.c: Change to use lookupByUUID instead of
lookupByUUIDString
2009-09-10 16:44:12 +00:00
|
|
|
if (!xdr_remote_uuid (xdrs, objp->uuid))
|
2009-07-28 02:01:00 +00:00
|
|
|
return FALSE;
|
|
|
|
return TRUE;
|
|
|
|
}
|
|
|
|
|
|
|
|
bool_t
|
Fix UUID handling in secrets/storage encryption APIs
Convert all the secret/storage encryption APIs / wire format to
handle UUIDs in raw format instead of non-canonical printable
format. Guarentees data format correctness.
* docs/schemas/storageencryption.rng: Make UUID mandatory for a secret
and validate fully
* docs/schemas/secret.rng: Fully validate UUID
* include/libvirt/libvirt.h, include/libvirt/libvirt.h.in, Add
virSecretLookupByUUID and virSecretGetUUID. Make
virSecretGetUUIDString follow normal API design pattern
* python/generator.py: Skip generation of virSecretGetUUID,
virSecretGetUUIDString and virSecretLookupByUUID
* python/libvir.c, python/libvirt-python-api.xml: Manual impl
of virSecretGetUUID,virSecretGetUUIDString and virSecretLookupByUUID
* qemud/remote.c: s/virSecretLookupByUUIDString/virSecretLookupByUUID/
Fix get_nonnull_secret/make_nonnull_secret to use unsigned char
* qemud/remote_protocol.x: Fix remote_nonnull_secret to use a
remote_uuid instead of remote_nonnull_string for UUID field.
Rename REMOTE_PROC_SECRET_LOOKUP_BY_UUID_STRING to
REMOTE_PROC_SECRET_LOOKUP_BY_UUID_STRING and make it take an
remote_uuid value
* qemud/remote_dispatch_args.h, qemud/remote_dispatch_prototypes.h,
qemud/remote_dispatch_ret.h, qemud/remote_dispatch_table.h,
qemud/remote_protocol.c, qemud/remote_protocol.h: Re-generate
* src/datatypes.h, src/datatypes.c: Store UUID in raw format instead
of printable. Change virGetSecret to use raw format UUID
* src/driver.h: Rename virDrvSecretLookupByUUIDString to
virDrvSecretLookupByUUID and use raw format UUID
* src/libvirt.c: Add virSecretLookupByUUID and virSecretGetUUID
and re-implement virSecretLookupByUUIDString and
virSecretGetUUIDString in terms of those
* src/libvirt_public.syms: Add virSecretLookupByUUID and
virSecretGetUUID
* src/remote_internal.c: Rename remoteSecretLookupByUUIDString
to remoteSecretLookupByUUID. Fix typo in args for
remoteSecretDefineXML impl. Use raw UUID format for
get_nonnull_secret and make_nonnull_secret
* src/storage_encryption_conf.c, src/storage_encryption_conf.h:
Storage UUID in raw format, and require it to be present in
XML. Use UUID parser to validate.
* secret_conf.h, secret_conf.c: Generate a UUID if none is provided.
Storage UUID in raw format.
* src/secret_driver.c: Adjust to deal with raw UUIDs. Save secrets
in a filed with printable UUID, instead of base64 UUID.
* src/virsh.c: Adjust for changed public API contract of
virSecretGetUUIDString.
* src/storage_Backend.c: DOn't undefine secret we just generated
upon successful volume creation. Fix to handle raw UUIDs. Generate
a non-clashing UUID
* src/qemu_driver.c: Change to use lookupByUUID instead of
lookupByUUIDString
2009-09-10 16:44:12 +00:00
|
|
|
xdr_remote_secret_lookup_by_uuid_ret (XDR *xdrs, remote_secret_lookup_by_uuid_ret *objp)
|
2009-07-28 02:01:00 +00:00
|
|
|
{
|
|
|
|
|
|
|
|
if (!xdr_remote_nonnull_secret (xdrs, &objp->secret))
|
|
|
|
return FALSE;
|
|
|
|
return TRUE;
|
|
|
|
}
|
|
|
|
|
|
|
|
bool_t
|
|
|
|
xdr_remote_secret_define_xml_args (XDR *xdrs, remote_secret_define_xml_args *objp)
|
|
|
|
{
|
|
|
|
|
|
|
|
if (!xdr_remote_nonnull_string (xdrs, &objp->xml))
|
|
|
|
return FALSE;
|
|
|
|
if (!xdr_u_int (xdrs, &objp->flags))
|
|
|
|
return FALSE;
|
|
|
|
return TRUE;
|
|
|
|
}
|
|
|
|
|
|
|
|
bool_t
|
|
|
|
xdr_remote_secret_define_xml_ret (XDR *xdrs, remote_secret_define_xml_ret *objp)
|
|
|
|
{
|
|
|
|
|
|
|
|
if (!xdr_remote_nonnull_secret (xdrs, &objp->secret))
|
|
|
|
return FALSE;
|
|
|
|
return TRUE;
|
|
|
|
}
|
|
|
|
|
|
|
|
bool_t
|
|
|
|
xdr_remote_secret_get_xml_desc_args (XDR *xdrs, remote_secret_get_xml_desc_args *objp)
|
|
|
|
{
|
|
|
|
|
|
|
|
if (!xdr_remote_nonnull_secret (xdrs, &objp->secret))
|
|
|
|
return FALSE;
|
|
|
|
if (!xdr_u_int (xdrs, &objp->flags))
|
|
|
|
return FALSE;
|
|
|
|
return TRUE;
|
|
|
|
}
|
|
|
|
|
|
|
|
bool_t
|
|
|
|
xdr_remote_secret_get_xml_desc_ret (XDR *xdrs, remote_secret_get_xml_desc_ret *objp)
|
|
|
|
{
|
|
|
|
|
|
|
|
if (!xdr_remote_nonnull_string (xdrs, &objp->xml))
|
|
|
|
return FALSE;
|
|
|
|
return TRUE;
|
|
|
|
}
|
|
|
|
|
|
|
|
bool_t
|
|
|
|
xdr_remote_secret_set_value_args (XDR *xdrs, remote_secret_set_value_args *objp)
|
|
|
|
{
|
|
|
|
char **objp_cpp0 = (char **) (void *) &objp->value.value_val;
|
|
|
|
|
|
|
|
if (!xdr_remote_nonnull_secret (xdrs, &objp->secret))
|
|
|
|
return FALSE;
|
|
|
|
if (!xdr_bytes (xdrs, objp_cpp0, (u_int *) &objp->value.value_len, REMOTE_SECRET_VALUE_MAX))
|
|
|
|
return FALSE;
|
|
|
|
if (!xdr_u_int (xdrs, &objp->flags))
|
|
|
|
return FALSE;
|
|
|
|
return TRUE;
|
|
|
|
}
|
|
|
|
|
|
|
|
bool_t
|
|
|
|
xdr_remote_secret_get_value_args (XDR *xdrs, remote_secret_get_value_args *objp)
|
|
|
|
{
|
|
|
|
|
|
|
|
if (!xdr_remote_nonnull_secret (xdrs, &objp->secret))
|
|
|
|
return FALSE;
|
|
|
|
if (!xdr_u_int (xdrs, &objp->flags))
|
|
|
|
return FALSE;
|
|
|
|
return TRUE;
|
|
|
|
}
|
|
|
|
|
|
|
|
bool_t
|
|
|
|
xdr_remote_secret_get_value_ret (XDR *xdrs, remote_secret_get_value_ret *objp)
|
|
|
|
{
|
|
|
|
char **objp_cpp0 = (char **) (void *) &objp->value.value_val;
|
|
|
|
|
|
|
|
if (!xdr_bytes (xdrs, objp_cpp0, (u_int *) &objp->value.value_len, REMOTE_SECRET_VALUE_MAX))
|
|
|
|
return FALSE;
|
|
|
|
return TRUE;
|
|
|
|
}
|
|
|
|
|
|
|
|
bool_t
|
|
|
|
xdr_remote_secret_undefine_args (XDR *xdrs, remote_secret_undefine_args *objp)
|
|
|
|
{
|
|
|
|
|
|
|
|
if (!xdr_remote_nonnull_secret (xdrs, &objp->secret))
|
|
|
|
return FALSE;
|
|
|
|
return TRUE;
|
|
|
|
}
|
|
|
|
|
Add usage type/id as a public API property of virSecret
* include/libvirt/libvirt.h, include/libvirt/libvirt.h.in: Add
virSecretGetUsageType, virSecretGetUsageID and virLookupSecretByUsage
* python/generator.py: Mark virSecretGetUsageType, virSecretGetUsageID
as not throwing exceptions
* qemud/remote.c: Implement dispatch for virLookupSecretByUsage
* qemud/remote_protocol.x: Add usage type & ID as attributes of
remote_nonnull_secret. Add RPC calls for new public APIs
* qemud/remote_dispatch_args.h, qemud/remote_dispatch_prototypes.h,
qemud/remote_dispatch_ret.h, qemud/remote_dispatch_table.h,
qemud/remote_protocol.c, qemud/remote_protocol.h: Re-generate
* src/datatypes.c, src/datatypes.h: Add usageType and usageID as
properties of virSecretPtr
* src/driver.h: Add virLookupSecretByUsage driver entry point
* src/libvirt.c: Implement virSecretGetUsageType, virSecretGetUsageID
and virLookupSecretByUsage
* src/libvirt_public.syms: Export virSecretGetUsageType, virSecretGetUsageID
and virLookupSecretByUsage
* src/remote_internal.c: Implement virLookupSecretByUsage entry
* src/secret_conf.c, src/secret_conf.h: Remove the
virSecretUsageType enum, now in public API. Make volume
path mandatory when parsing XML
* src/secret_driver.c: Enforce usage uniqueness when defining secrets.
Implement virSecretLookupByUsage api method
* src/virsh.c: Include usage for secret-list command
2009-09-11 13:06:15 +00:00
|
|
|
bool_t
|
|
|
|
xdr_remote_secret_lookup_by_usage_args (XDR *xdrs, remote_secret_lookup_by_usage_args *objp)
|
|
|
|
{
|
|
|
|
|
|
|
|
if (!xdr_int (xdrs, &objp->usageType))
|
|
|
|
return FALSE;
|
|
|
|
if (!xdr_remote_nonnull_string (xdrs, &objp->usageID))
|
|
|
|
return FALSE;
|
|
|
|
return TRUE;
|
|
|
|
}
|
|
|
|
|
|
|
|
bool_t
|
|
|
|
xdr_remote_secret_lookup_by_usage_ret (XDR *xdrs, remote_secret_lookup_by_usage_ret *objp)
|
|
|
|
{
|
|
|
|
|
|
|
|
if (!xdr_remote_nonnull_secret (xdrs, &objp->secret))
|
|
|
|
return FALSE;
|
|
|
|
return TRUE;
|
|
|
|
}
|
|
|
|
|
2009-09-30 10:51:54 +00:00
|
|
|
bool_t
|
|
|
|
xdr_remote_domain_migrate_prepare_tunnel_args (XDR *xdrs, remote_domain_migrate_prepare_tunnel_args *objp)
|
|
|
|
{
|
|
|
|
|
|
|
|
if (!xdr_uint64_t (xdrs, &objp->flags))
|
|
|
|
return FALSE;
|
|
|
|
if (!xdr_remote_string (xdrs, &objp->dname))
|
|
|
|
return FALSE;
|
|
|
|
if (!xdr_uint64_t (xdrs, &objp->resource))
|
|
|
|
return FALSE;
|
|
|
|
if (!xdr_remote_nonnull_string (xdrs, &objp->dom_xml))
|
|
|
|
return FALSE;
|
|
|
|
return TRUE;
|
|
|
|
}
|
|
|
|
|
Implmentation of new APIs to checking state/persistence of objects
This implements the virConnectIsSecure, virConnectIsEncrypted,
virDomainIsPersistent, virDomainIsActive, virNetworkIsActive,
virNetworkIsPersistent, virStoragePoolIsActive,
virStoragePoolIsPersistent, virInterfaceIsActive APIs in
(nearly) all drivers. Exceptions are:
phyp: missing domainIsActive/Persistent
esx: missing domainIsPersistent
opennebula: missing domainIsActive/Persistent
* src/remote/remote_protocol.x: Define remote wire ABI for newly
added APIs.
* daemon/remote_dispatch*.h: Re-generated from remote_protocol.x
* src/esx/esx_driver.c, src/lxc/lxc_driver.c, src/network/bridge_driver.c,
src/opennebula/one_driver.c, src/openvz/openvz_conf.c,
src/openvz/openvz_driver.c, src/phyp/phyp_driver.c,
src/remote/remote_driver.c, src/storage/storage_driver.c,
src/test/test_driver.c, src/uml/uml_driver.c, src/vbox/vbox_tmpl.c,
src/xen/xen_driver.c, src/xen/xen_driver.h, src/xen/xen_inotify.c,
src/xen/xen_inotify.h: Implement all the new APIs where possible
2009-10-20 14:12:03 +00:00
|
|
|
bool_t
|
|
|
|
xdr_remote_is_secure_ret (XDR *xdrs, remote_is_secure_ret *objp)
|
|
|
|
{
|
|
|
|
|
|
|
|
if (!xdr_int (xdrs, &objp->secure))
|
|
|
|
return FALSE;
|
|
|
|
return TRUE;
|
|
|
|
}
|
|
|
|
|
|
|
|
bool_t
|
|
|
|
xdr_remote_domain_is_active_args (XDR *xdrs, remote_domain_is_active_args *objp)
|
|
|
|
{
|
|
|
|
|
|
|
|
if (!xdr_remote_nonnull_domain (xdrs, &objp->dom))
|
|
|
|
return FALSE;
|
|
|
|
return TRUE;
|
|
|
|
}
|
|
|
|
|
|
|
|
bool_t
|
|
|
|
xdr_remote_domain_is_active_ret (XDR *xdrs, remote_domain_is_active_ret *objp)
|
|
|
|
{
|
|
|
|
|
|
|
|
if (!xdr_int (xdrs, &objp->active))
|
|
|
|
return FALSE;
|
|
|
|
return TRUE;
|
|
|
|
}
|
|
|
|
|
|
|
|
bool_t
|
|
|
|
xdr_remote_domain_is_persistent_args (XDR *xdrs, remote_domain_is_persistent_args *objp)
|
|
|
|
{
|
|
|
|
|
|
|
|
if (!xdr_remote_nonnull_domain (xdrs, &objp->dom))
|
|
|
|
return FALSE;
|
|
|
|
return TRUE;
|
|
|
|
}
|
|
|
|
|
|
|
|
bool_t
|
|
|
|
xdr_remote_domain_is_persistent_ret (XDR *xdrs, remote_domain_is_persistent_ret *objp)
|
|
|
|
{
|
|
|
|
|
|
|
|
if (!xdr_int (xdrs, &objp->persistent))
|
|
|
|
return FALSE;
|
|
|
|
return TRUE;
|
|
|
|
}
|
|
|
|
|
|
|
|
bool_t
|
|
|
|
xdr_remote_network_is_active_args (XDR *xdrs, remote_network_is_active_args *objp)
|
|
|
|
{
|
|
|
|
|
|
|
|
if (!xdr_remote_nonnull_network (xdrs, &objp->net))
|
|
|
|
return FALSE;
|
|
|
|
return TRUE;
|
|
|
|
}
|
|
|
|
|
|
|
|
bool_t
|
|
|
|
xdr_remote_network_is_active_ret (XDR *xdrs, remote_network_is_active_ret *objp)
|
|
|
|
{
|
|
|
|
|
|
|
|
if (!xdr_int (xdrs, &objp->active))
|
|
|
|
return FALSE;
|
|
|
|
return TRUE;
|
|
|
|
}
|
|
|
|
|
|
|
|
bool_t
|
|
|
|
xdr_remote_network_is_persistent_args (XDR *xdrs, remote_network_is_persistent_args *objp)
|
|
|
|
{
|
|
|
|
|
|
|
|
if (!xdr_remote_nonnull_network (xdrs, &objp->net))
|
|
|
|
return FALSE;
|
|
|
|
return TRUE;
|
|
|
|
}
|
|
|
|
|
|
|
|
bool_t
|
|
|
|
xdr_remote_network_is_persistent_ret (XDR *xdrs, remote_network_is_persistent_ret *objp)
|
|
|
|
{
|
|
|
|
|
|
|
|
if (!xdr_int (xdrs, &objp->persistent))
|
|
|
|
return FALSE;
|
|
|
|
return TRUE;
|
|
|
|
}
|
|
|
|
|
|
|
|
bool_t
|
|
|
|
xdr_remote_storage_pool_is_active_args (XDR *xdrs, remote_storage_pool_is_active_args *objp)
|
|
|
|
{
|
|
|
|
|
|
|
|
if (!xdr_remote_nonnull_storage_pool (xdrs, &objp->pool))
|
|
|
|
return FALSE;
|
|
|
|
return TRUE;
|
|
|
|
}
|
|
|
|
|
|
|
|
bool_t
|
|
|
|
xdr_remote_storage_pool_is_active_ret (XDR *xdrs, remote_storage_pool_is_active_ret *objp)
|
|
|
|
{
|
|
|
|
|
|
|
|
if (!xdr_int (xdrs, &objp->active))
|
|
|
|
return FALSE;
|
|
|
|
return TRUE;
|
|
|
|
}
|
|
|
|
|
|
|
|
bool_t
|
|
|
|
xdr_remote_storage_pool_is_persistent_args (XDR *xdrs, remote_storage_pool_is_persistent_args *objp)
|
|
|
|
{
|
|
|
|
|
|
|
|
if (!xdr_remote_nonnull_storage_pool (xdrs, &objp->pool))
|
|
|
|
return FALSE;
|
|
|
|
return TRUE;
|
|
|
|
}
|
|
|
|
|
|
|
|
bool_t
|
|
|
|
xdr_remote_storage_pool_is_persistent_ret (XDR *xdrs, remote_storage_pool_is_persistent_ret *objp)
|
|
|
|
{
|
|
|
|
|
|
|
|
if (!xdr_int (xdrs, &objp->persistent))
|
|
|
|
return FALSE;
|
|
|
|
return TRUE;
|
|
|
|
}
|
|
|
|
|
|
|
|
bool_t
|
|
|
|
xdr_remote_interface_is_active_args (XDR *xdrs, remote_interface_is_active_args *objp)
|
|
|
|
{
|
|
|
|
|
|
|
|
if (!xdr_remote_nonnull_interface (xdrs, &objp->iface))
|
|
|
|
return FALSE;
|
|
|
|
return TRUE;
|
|
|
|
}
|
|
|
|
|
|
|
|
bool_t
|
|
|
|
xdr_remote_interface_is_active_ret (XDR *xdrs, remote_interface_is_active_ret *objp)
|
|
|
|
{
|
|
|
|
|
|
|
|
if (!xdr_int (xdrs, &objp->active))
|
|
|
|
return FALSE;
|
|
|
|
return TRUE;
|
|
|
|
}
|
|
|
|
|
2009-12-18 14:49:34 +00:00
|
|
|
bool_t
|
|
|
|
xdr_remote_cpu_compare_args (XDR *xdrs, remote_cpu_compare_args *objp)
|
|
|
|
{
|
|
|
|
|
|
|
|
if (!xdr_remote_nonnull_string (xdrs, &objp->xml))
|
|
|
|
return FALSE;
|
|
|
|
if (!xdr_u_int (xdrs, &objp->flags))
|
|
|
|
return FALSE;
|
|
|
|
return TRUE;
|
|
|
|
}
|
|
|
|
|
|
|
|
bool_t
|
|
|
|
xdr_remote_cpu_compare_ret (XDR *xdrs, remote_cpu_compare_ret *objp)
|
|
|
|
{
|
|
|
|
|
|
|
|
if (!xdr_int (xdrs, &objp->result))
|
|
|
|
return FALSE;
|
|
|
|
return TRUE;
|
|
|
|
}
|
|
|
|
|
2010-02-02 13:39:05 +00:00
|
|
|
bool_t
|
|
|
|
xdr_remote_cpu_baseline_args (XDR *xdrs, remote_cpu_baseline_args *objp)
|
|
|
|
{
|
|
|
|
char **objp_cpp0 = (char **) (void *) &objp->xmlCPUs.xmlCPUs_val;
|
|
|
|
|
|
|
|
if (!xdr_array (xdrs, objp_cpp0, (u_int *) &objp->xmlCPUs.xmlCPUs_len, REMOTE_CPU_BASELINE_MAX,
|
|
|
|
sizeof (remote_nonnull_string), (xdrproc_t) xdr_remote_nonnull_string))
|
|
|
|
return FALSE;
|
|
|
|
if (!xdr_u_int (xdrs, &objp->flags))
|
|
|
|
return FALSE;
|
|
|
|
return TRUE;
|
|
|
|
}
|
|
|
|
|
|
|
|
bool_t
|
|
|
|
xdr_remote_cpu_baseline_ret (XDR *xdrs, remote_cpu_baseline_ret *objp)
|
|
|
|
{
|
|
|
|
|
|
|
|
if (!xdr_remote_nonnull_string (xdrs, &objp->cpu))
|
|
|
|
return FALSE;
|
|
|
|
return TRUE;
|
|
|
|
}
|
|
|
|
|
2010-02-03 14:10:13 +00:00
|
|
|
bool_t
|
|
|
|
xdr_remote_domain_get_job_info_args (XDR *xdrs, remote_domain_get_job_info_args *objp)
|
|
|
|
{
|
|
|
|
|
|
|
|
if (!xdr_remote_nonnull_domain (xdrs, &objp->dom))
|
|
|
|
return FALSE;
|
|
|
|
return TRUE;
|
|
|
|
}
|
|
|
|
|
|
|
|
bool_t
|
|
|
|
xdr_remote_domain_get_job_info_ret (XDR *xdrs, remote_domain_get_job_info_ret *objp)
|
|
|
|
{
|
|
|
|
|
|
|
|
if (!xdr_int (xdrs, &objp->type))
|
|
|
|
return FALSE;
|
|
|
|
if (!xdr_uint64_t (xdrs, &objp->timeElapsed))
|
|
|
|
return FALSE;
|
|
|
|
if (!xdr_uint64_t (xdrs, &objp->timeRemaining))
|
|
|
|
return FALSE;
|
|
|
|
if (!xdr_uint64_t (xdrs, &objp->dataTotal))
|
|
|
|
return FALSE;
|
|
|
|
if (!xdr_uint64_t (xdrs, &objp->dataProcessed))
|
|
|
|
return FALSE;
|
|
|
|
if (!xdr_uint64_t (xdrs, &objp->dataRemaining))
|
|
|
|
return FALSE;
|
|
|
|
if (!xdr_uint64_t (xdrs, &objp->memTotal))
|
|
|
|
return FALSE;
|
|
|
|
if (!xdr_uint64_t (xdrs, &objp->memProcessed))
|
|
|
|
return FALSE;
|
|
|
|
if (!xdr_uint64_t (xdrs, &objp->memRemaining))
|
|
|
|
return FALSE;
|
|
|
|
if (!xdr_uint64_t (xdrs, &objp->fileTotal))
|
|
|
|
return FALSE;
|
|
|
|
if (!xdr_uint64_t (xdrs, &objp->fileProcessed))
|
|
|
|
return FALSE;
|
|
|
|
if (!xdr_uint64_t (xdrs, &objp->fileRemaining))
|
|
|
|
return FALSE;
|
|
|
|
return TRUE;
|
|
|
|
}
|
|
|
|
|
2010-02-04 16:18:57 +00:00
|
|
|
bool_t
|
|
|
|
xdr_remote_domain_abort_job_args (XDR *xdrs, remote_domain_abort_job_args *objp)
|
|
|
|
{
|
|
|
|
|
|
|
|
if (!xdr_remote_nonnull_domain (xdrs, &objp->dom))
|
|
|
|
return FALSE;
|
|
|
|
return TRUE;
|
|
|
|
}
|
|
|
|
|
2010-03-12 15:21:10 +00:00
|
|
|
bool_t
|
|
|
|
xdr_remote_domain_migrate_set_max_downtime_args (XDR *xdrs, remote_domain_migrate_set_max_downtime_args *objp)
|
|
|
|
{
|
|
|
|
|
|
|
|
if (!xdr_remote_nonnull_domain (xdrs, &objp->dom))
|
|
|
|
return FALSE;
|
|
|
|
if (!xdr_uint64_t (xdrs, &objp->downtime))
|
|
|
|
return FALSE;
|
|
|
|
if (!xdr_u_int (xdrs, &objp->flags))
|
|
|
|
return FALSE;
|
|
|
|
return TRUE;
|
|
|
|
}
|
|
|
|
|
Remote driver & daemon impl of new event API
This wires up the remote driver to handle the new events APIs.
The public API allows an application to request a callback filters
events to a specific domain object, and register multiple callbacks
for the same event type. On the wire there are two strategies for
this
- Register multiple callbacks with the remote daemon, each
with filtering as needed
- Register only one callback per event type, with no filtering
Both approaches have potential inefficiency. In the first scheme,
the same event gets sent over the wire many times if multiple
callbacks are registered. With the second scheme, unneccessary
events get sent over the wire if a per-domain filter is set on
the client. The second scheme is far easier to implement though,
so this patch takes that approach.
* daemon/dispatch.h: Don't export remoteRelayDomainEvent since it
is no longer needed for unregistering callbacks, instead the
unique callback ID is used
* daemon/libvirtd.c, daemon/libvirtd.h: Track and unregister
callbacks based on callback ID, instead of function pointer
* daemon/remote.c: Switch over to using virConnectDomainEventRegisterAny
instead of legacy virConnectDomainEventRegister function. Refactor
remoteDispatchDomainEventSend() to cope with arbitrary event types
* src/driver.h, src/driver.c: Move verify() call into source file
instead of header, to avoid polluting the global namespace with
the verify function name
* src/remote/remote_driver.c: Implement new APIs for event
registration. Refactor processCallDispatchMessage() to cope
with arbitrary incoming event types. Merge remoteDomainQueueEvent()
into processCallDispatchMessage() to avoid duplication of code.
Rename remoteDomainReadEvent() to remoteDomainReadEventLifecycle()
* src/remote/remote_protocol.x: Define wire format for the new
virConnectDomainEventRegisterAny and virConnectDomainEventDeregisterAny
functions
2010-03-18 14:56:56 +00:00
|
|
|
bool_t
|
|
|
|
xdr_remote_domain_events_register_any_args (XDR *xdrs, remote_domain_events_register_any_args *objp)
|
|
|
|
{
|
|
|
|
|
|
|
|
if (!xdr_int (xdrs, &objp->eventID))
|
|
|
|
return FALSE;
|
|
|
|
return TRUE;
|
|
|
|
}
|
|
|
|
|
|
|
|
bool_t
|
|
|
|
xdr_remote_domain_events_deregister_any_args (XDR *xdrs, remote_domain_events_deregister_any_args *objp)
|
|
|
|
{
|
|
|
|
|
|
|
|
if (!xdr_int (xdrs, &objp->eventID))
|
|
|
|
return FALSE;
|
|
|
|
return TRUE;
|
|
|
|
}
|
|
|
|
|
2010-03-18 15:25:38 +00:00
|
|
|
bool_t
|
|
|
|
xdr_remote_domain_event_reboot_msg (XDR *xdrs, remote_domain_event_reboot_msg *objp)
|
|
|
|
{
|
|
|
|
|
|
|
|
if (!xdr_remote_nonnull_domain (xdrs, &objp->dom))
|
|
|
|
return FALSE;
|
|
|
|
return TRUE;
|
|
|
|
}
|
|
|
|
|
2010-03-18 18:28:15 +00:00
|
|
|
bool_t
|
|
|
|
xdr_remote_domain_event_rtc_change_msg (XDR *xdrs, remote_domain_event_rtc_change_msg *objp)
|
|
|
|
{
|
|
|
|
|
|
|
|
if (!xdr_remote_nonnull_domain (xdrs, &objp->dom))
|
|
|
|
return FALSE;
|
|
|
|
if (!xdr_int64_t (xdrs, &objp->offset))
|
|
|
|
return FALSE;
|
|
|
|
return TRUE;
|
|
|
|
}
|
|
|
|
|
Add support for an explicit watchdog event
This introduces a new event type
VIR_DOMAIN_EVENT_ID_WATCHDOG
This event includes the action that is about to be taken
as a result of the watchdog triggering
typedef enum {
VIR_DOMAIN_EVENT_WATCHDOG_NONE = 0,
VIR_DOMAIN_EVENT_WATCHDOG_PAUSE,
VIR_DOMAIN_EVENT_WATCHDOG_RESET,
VIR_DOMAIN_EVENT_WATCHDOG_POWEROFF,
VIR_DOMAIN_EVENT_WATCHDOG_SHUTDOWN,
VIR_DOMAIN_EVENT_WATCHDOG_DEBUG,
} virDomainEventWatchdogAction;
Thus there is a new callback definition for this event type
typedef void (*virConnectDomainEventWatchdogCallback)(virConnectPtr conn,
virDomainPtr dom,
int action,
void *opaque);
* daemon/remote.c: Dispatch watchdog events to client
* examples/domain-events/events-c/event-test.c: Watch for
watchdog events
* include/libvirt/libvirt.h.in: Define new watchdg event ID
and callback signature
* src/conf/domain_event.c, src/conf/domain_event.h,
src/libvirt_private.syms: Extend API to handle watchdog events
* src/qemu/qemu_driver.c: Connect to the QEMU monitor event
for watchdogs and emit a libvirt watchdog event
* src/remote/remote_driver.c: Receive and dispatch watchdog
events to application
* src/remote/remote_protocol.x: Wire protocol definition for
watchdog events
* src/qemu/qemu_monitor.c, src/qemu/qemu_monitor.h,
src/qemu/qemu_monitor_json.c: Watch for WATCHDOG event
from QEMU monitor
2010-03-18 19:07:48 +00:00
|
|
|
bool_t
|
|
|
|
xdr_remote_domain_event_watchdog_msg (XDR *xdrs, remote_domain_event_watchdog_msg *objp)
|
|
|
|
{
|
|
|
|
|
|
|
|
if (!xdr_remote_nonnull_domain (xdrs, &objp->dom))
|
|
|
|
return FALSE;
|
|
|
|
if (!xdr_int (xdrs, &objp->action))
|
|
|
|
return FALSE;
|
|
|
|
return TRUE;
|
|
|
|
}
|
|
|
|
|
Add support for an explicit IO error event
This introduces a new event type
VIR_DOMAIN_EVENT_ID_IO_ERROR
This event includes the action that is about to be taken
as a result of the watchdog triggering
typedef enum {
VIR_DOMAIN_EVENT_IO_ERROR_NONE = 0,
VIR_DOMAIN_EVENT_IO_ERROR_PAUSE,
VIR_DOMAIN_EVENT_IO_ERROR_REPORT,
} virDomainEventIOErrorAction;
In addition it has the source path of the disk that had the
error and its unique device alias. It does not include the
target device name (/dev/sda), since this would preclude
triggering IO errors from other file backed devices (eg
serial ports connected to a file)
Thus there is a new callback definition for this event type
typedef void (*virConnectDomainEventIOErrorCallback)(virConnectPtr conn,
virDomainPtr dom,
const char *srcPath,
const char *devAlias,
int action,
void *opaque);
This is currently wired up to the QEMU block IO error events
* daemon/remote.c: Dispatch IO error events to client
* examples/domain-events/events-c/event-test.c: Watch for
IO error events
* include/libvirt/libvirt.h.in: Define new IO error event ID
and callback signature
* src/conf/domain_event.c, src/conf/domain_event.h,
src/libvirt_private.syms: Extend API to handle IO error events
* src/qemu/qemu_driver.c: Connect to the QEMU monitor event
for block IO errors and emit a libvirt IO error event
* src/remote/remote_driver.c: Receive and dispatch IO error
events to application
* src/remote/remote_protocol.x: Wire protocol definition for
IO error events
* src/qemu/qemu_monitor.c, src/qemu/qemu_monitor.h,
src/qemu/qemu_monitor_json.c: Watch for BLOCK_IO_ERROR event
from QEMU monitor
2010-03-18 19:37:44 +00:00
|
|
|
bool_t
|
|
|
|
xdr_remote_domain_event_io_error_msg (XDR *xdrs, remote_domain_event_io_error_msg *objp)
|
|
|
|
{
|
|
|
|
|
|
|
|
if (!xdr_remote_nonnull_domain (xdrs, &objp->dom))
|
|
|
|
return FALSE;
|
|
|
|
if (!xdr_remote_nonnull_string (xdrs, &objp->srcPath))
|
|
|
|
return FALSE;
|
|
|
|
if (!xdr_remote_nonnull_string (xdrs, &objp->devAlias))
|
|
|
|
return FALSE;
|
|
|
|
if (!xdr_int (xdrs, &objp->action))
|
|
|
|
return FALSE;
|
|
|
|
return TRUE;
|
|
|
|
}
|
|
|
|
|
Add support for another explicit IO error event
This introduces a new event type
VIR_DOMAIN_EVENT_ID_IO_ERROR_REASON
This event is the same as the previous VIR_DOMAIN_ID_IO_ERROR
event, but also includes a string describing the cause of
the event.
Thus there is a new callback definition for this event type
typedef void (*virConnectDomainEventIOErrorReasonCallback)(virConnectPtr conn,
virDomainPtr dom,
const char *srcPath,
const char *devAlias,
int action,
const char *reason,
void *opaque);
This is currently wired up to the QEMU block IO error events
* daemon/remote.c: Dispatch IO error events to client
* examples/domain-events/events-c/event-test.c: Watch for
IO error events
* include/libvirt/libvirt.h.in: Define new IO error event ID
and callback signature
* src/conf/domain_event.c, src/conf/domain_event.h,
src/libvirt_private.syms: Extend API to handle IO error events
* src/qemu/qemu_driver.c: Connect to the QEMU monitor event
for block IO errors and emit a libvirt IO error event
* src/remote/remote_driver.c: Receive and dispatch IO error
events to application
* src/remote/remote_protocol.x: Wire protocol definition for
IO error events
* src/qemu/qemu_monitor.c, src/qemu/qemu_monitor.h,
src/qemu/qemu_monitor_json.c: Watch for BLOCK_IO_ERROR event
from QEMU monitor
2010-03-18 19:37:44 +00:00
|
|
|
bool_t
|
|
|
|
xdr_remote_domain_event_io_error_reason_msg (XDR *xdrs, remote_domain_event_io_error_reason_msg *objp)
|
|
|
|
{
|
|
|
|
|
|
|
|
if (!xdr_remote_nonnull_domain (xdrs, &objp->dom))
|
|
|
|
return FALSE;
|
|
|
|
if (!xdr_remote_nonnull_string (xdrs, &objp->srcPath))
|
|
|
|
return FALSE;
|
|
|
|
if (!xdr_remote_nonnull_string (xdrs, &objp->devAlias))
|
|
|
|
return FALSE;
|
|
|
|
if (!xdr_int (xdrs, &objp->action))
|
|
|
|
return FALSE;
|
|
|
|
if (!xdr_remote_nonnull_string (xdrs, &objp->reason))
|
|
|
|
return FALSE;
|
|
|
|
return TRUE;
|
|
|
|
}
|
|
|
|
|
Add domain events for graphics network clients
This introduces a new event type
VIR_DOMAIN_EVENT_ID_GRAPHICS
The same event can be emitted in 3 scenarios
typedef enum {
VIR_DOMAIN_EVENT_GRAPHICS_CONNECT = 0,
VIR_DOMAIN_EVENT_GRAPHICS_INITIALIZE,
VIR_DOMAIN_EVENT_GRAPHICS_DISCONNECT,
} virDomainEventGraphicsPhase;
Connect/disconnect are triggered at socket accept/close.
The initialize phase is immediately after the protocol
setup and authentication has completed. ie when the
client is authorized and about to start interacting with
the graphical desktop
This event comes with *a lot* of potential information
- IP address, port & address family of client
- IP address, port & address family of server
- Authentication scheme (arbitrary string)
- Authenticated subject identity. A subject may have
multiple identities with some authentication schemes.
For example, vencrypt+sasl results in a x509dname
and saslUsername identities.
This results in a very complicated callback :-(
typedef enum {
VIR_DOMAIN_EVENT_GRAPHICS_ADDRESS_IPV4,
VIR_DOMAIN_EVENT_GRAPHICS_ADDRESS_IPV6,
} virDomainEventGraphicsAddressType;
struct _virDomainEventGraphicsAddress {
int family;
const char *node;
const char *service;
};
typedef struct _virDomainEventGraphicsAddress virDomainEventGraphicsAddress;
typedef virDomainEventGraphicsAddress *virDomainEventGraphicsAddressPtr;
struct _virDomainEventGraphicsSubject {
int nidentity;
struct {
const char *type;
const char *name;
} *identities;
};
typedef struct _virDomainEventGraphicsSubject virDomainEventGraphicsSubject;
typedef virDomainEventGraphicsSubject *virDomainEventGraphicsSubjectPtr;
typedef void (*virConnectDomainEventGraphicsCallback)(virConnectPtr conn,
virDomainPtr dom,
int phase,
virDomainEventGraphicsAddressPtr local,
virDomainEventGraphicsAddressPtr remote,
const char *authScheme,
virDomainEventGraphicsSubjectPtr subject,
void *opaque);
The wire protocol is similarly complex
struct remote_domain_event_graphics_address {
int family;
remote_nonnull_string node;
remote_nonnull_string service;
};
const REMOTE_DOMAIN_EVENT_GRAPHICS_IDENTITY_MAX = 20;
struct remote_domain_event_graphics_identity {
remote_nonnull_string type;
remote_nonnull_string name;
};
struct remote_domain_event_graphics_msg {
remote_nonnull_domain dom;
int phase;
remote_domain_event_graphics_address local;
remote_domain_event_graphics_address remote;
remote_nonnull_string authScheme;
remote_domain_event_graphics_identity subject<REMOTE_DOMAIN_EVENT_GRAPHICS_IDENTITY_MAX>;
};
This is currently implemented in QEMU for the VNC graphics
protocol, but designed to be usable with SPICE graphics in
the future too.
* daemon/remote.c: Dispatch graphics events to client
* examples/domain-events/events-c/event-test.c: Watch for
graphics events
* include/libvirt/libvirt.h.in: Define new graphics event ID
and callback signature
* src/conf/domain_event.c, src/conf/domain_event.h,
src/libvirt_private.syms: Extend API to handle graphics events
* src/qemu/qemu_driver.c: Connect to the QEMU monitor event
for VNC events and emit a libvirt graphics event
* src/remote/remote_driver.c: Receive and dispatch graphics
events to application
* src/remote/remote_protocol.x: Wire protocol definition for
graphics events
* src/qemu/qemu_monitor.c, src/qemu/qemu_monitor.h,
src/qemu/qemu_monitor_json.c: Watch for VNC_CONNECTED,
VNC_INITIALIZED & VNC_DISCONNETED events from QEMU monitor
2010-03-19 13:27:45 +00:00
|
|
|
bool_t
|
|
|
|
xdr_remote_domain_event_graphics_address (XDR *xdrs, remote_domain_event_graphics_address *objp)
|
|
|
|
{
|
|
|
|
|
|
|
|
if (!xdr_int (xdrs, &objp->family))
|
|
|
|
return FALSE;
|
|
|
|
if (!xdr_remote_nonnull_string (xdrs, &objp->node))
|
|
|
|
return FALSE;
|
|
|
|
if (!xdr_remote_nonnull_string (xdrs, &objp->service))
|
|
|
|
return FALSE;
|
|
|
|
return TRUE;
|
|
|
|
}
|
|
|
|
|
|
|
|
bool_t
|
|
|
|
xdr_remote_domain_event_graphics_identity (XDR *xdrs, remote_domain_event_graphics_identity *objp)
|
|
|
|
{
|
|
|
|
|
|
|
|
if (!xdr_remote_nonnull_string (xdrs, &objp->type))
|
|
|
|
return FALSE;
|
|
|
|
if (!xdr_remote_nonnull_string (xdrs, &objp->name))
|
|
|
|
return FALSE;
|
|
|
|
return TRUE;
|
|
|
|
}
|
|
|
|
|
|
|
|
bool_t
|
|
|
|
xdr_remote_domain_event_graphics_msg (XDR *xdrs, remote_domain_event_graphics_msg *objp)
|
|
|
|
{
|
|
|
|
char **objp_cpp0 = (char **) (void *) &objp->subject.subject_val;
|
|
|
|
|
|
|
|
if (!xdr_remote_nonnull_domain (xdrs, &objp->dom))
|
|
|
|
return FALSE;
|
|
|
|
if (!xdr_int (xdrs, &objp->phase))
|
|
|
|
return FALSE;
|
|
|
|
if (!xdr_remote_domain_event_graphics_address (xdrs, &objp->local))
|
|
|
|
return FALSE;
|
|
|
|
if (!xdr_remote_domain_event_graphics_address (xdrs, &objp->remote))
|
|
|
|
return FALSE;
|
|
|
|
if (!xdr_remote_nonnull_string (xdrs, &objp->authScheme))
|
|
|
|
return FALSE;
|
|
|
|
if (!xdr_array (xdrs, objp_cpp0, (u_int *) &objp->subject.subject_len, REMOTE_DOMAIN_EVENT_GRAPHICS_IDENTITY_MAX,
|
|
|
|
sizeof (remote_domain_event_graphics_identity), (xdrproc_t) xdr_remote_domain_event_graphics_identity))
|
|
|
|
return FALSE;
|
|
|
|
return TRUE;
|
|
|
|
}
|
|
|
|
|
2010-04-01 08:54:12 +00:00
|
|
|
bool_t
|
|
|
|
xdr_remote_domain_managed_save_args (XDR *xdrs, remote_domain_managed_save_args *objp)
|
|
|
|
{
|
|
|
|
|
|
|
|
if (!xdr_remote_nonnull_domain (xdrs, &objp->dom))
|
|
|
|
return FALSE;
|
|
|
|
if (!xdr_u_int (xdrs, &objp->flags))
|
|
|
|
return FALSE;
|
|
|
|
return TRUE;
|
|
|
|
}
|
|
|
|
|
|
|
|
bool_t
|
|
|
|
xdr_remote_domain_has_managed_save_image_args (XDR *xdrs, remote_domain_has_managed_save_image_args *objp)
|
|
|
|
{
|
|
|
|
|
|
|
|
if (!xdr_remote_nonnull_domain (xdrs, &objp->dom))
|
|
|
|
return FALSE;
|
|
|
|
if (!xdr_u_int (xdrs, &objp->flags))
|
|
|
|
return FALSE;
|
|
|
|
return TRUE;
|
|
|
|
}
|
|
|
|
|
|
|
|
bool_t
|
|
|
|
xdr_remote_domain_has_managed_save_image_ret (XDR *xdrs, remote_domain_has_managed_save_image_ret *objp)
|
|
|
|
{
|
|
|
|
|
|
|
|
if (!xdr_int (xdrs, &objp->ret))
|
|
|
|
return FALSE;
|
|
|
|
return TRUE;
|
|
|
|
}
|
|
|
|
|
|
|
|
bool_t
|
|
|
|
xdr_remote_domain_managed_save_remove_args (XDR *xdrs, remote_domain_managed_save_remove_args *objp)
|
|
|
|
{
|
|
|
|
|
|
|
|
if (!xdr_remote_nonnull_domain (xdrs, &objp->dom))
|
|
|
|
return FALSE;
|
|
|
|
if (!xdr_u_int (xdrs, &objp->flags))
|
|
|
|
return FALSE;
|
|
|
|
return TRUE;
|
|
|
|
}
|
|
|
|
|
2010-03-31 20:33:13 +00:00
|
|
|
bool_t
|
|
|
|
xdr_remote_domain_snapshot_create_xml_args (XDR *xdrs, remote_domain_snapshot_create_xml_args *objp)
|
|
|
|
{
|
|
|
|
|
|
|
|
if (!xdr_remote_nonnull_domain (xdrs, &objp->domain))
|
|
|
|
return FALSE;
|
|
|
|
if (!xdr_remote_nonnull_string (xdrs, &objp->xml_desc))
|
|
|
|
return FALSE;
|
|
|
|
if (!xdr_int (xdrs, &objp->flags))
|
|
|
|
return FALSE;
|
|
|
|
return TRUE;
|
|
|
|
}
|
|
|
|
|
|
|
|
bool_t
|
|
|
|
xdr_remote_domain_snapshot_create_xml_ret (XDR *xdrs, remote_domain_snapshot_create_xml_ret *objp)
|
|
|
|
{
|
|
|
|
|
|
|
|
if (!xdr_remote_nonnull_domain_snapshot (xdrs, &objp->snap))
|
|
|
|
return FALSE;
|
|
|
|
return TRUE;
|
|
|
|
}
|
|
|
|
|
|
|
|
bool_t
|
|
|
|
xdr_remote_domain_snapshot_dump_xml_args (XDR *xdrs, remote_domain_snapshot_dump_xml_args *objp)
|
|
|
|
{
|
|
|
|
|
|
|
|
if (!xdr_remote_nonnull_domain_snapshot (xdrs, &objp->snap))
|
|
|
|
return FALSE;
|
|
|
|
if (!xdr_int (xdrs, &objp->flags))
|
|
|
|
return FALSE;
|
|
|
|
return TRUE;
|
|
|
|
}
|
|
|
|
|
|
|
|
bool_t
|
|
|
|
xdr_remote_domain_snapshot_dump_xml_ret (XDR *xdrs, remote_domain_snapshot_dump_xml_ret *objp)
|
|
|
|
{
|
|
|
|
|
|
|
|
if (!xdr_remote_nonnull_string (xdrs, &objp->xml))
|
|
|
|
return FALSE;
|
|
|
|
return TRUE;
|
|
|
|
}
|
|
|
|
|
|
|
|
bool_t
|
|
|
|
xdr_remote_domain_snapshot_num_args (XDR *xdrs, remote_domain_snapshot_num_args *objp)
|
|
|
|
{
|
|
|
|
|
|
|
|
if (!xdr_remote_nonnull_domain (xdrs, &objp->domain))
|
|
|
|
return FALSE;
|
|
|
|
if (!xdr_int (xdrs, &objp->flags))
|
|
|
|
return FALSE;
|
|
|
|
return TRUE;
|
|
|
|
}
|
|
|
|
|
|
|
|
bool_t
|
|
|
|
xdr_remote_domain_snapshot_num_ret (XDR *xdrs, remote_domain_snapshot_num_ret *objp)
|
|
|
|
{
|
|
|
|
|
|
|
|
if (!xdr_int (xdrs, &objp->num))
|
|
|
|
return FALSE;
|
|
|
|
return TRUE;
|
|
|
|
}
|
|
|
|
|
|
|
|
bool_t
|
|
|
|
xdr_remote_domain_snapshot_list_names_args (XDR *xdrs, remote_domain_snapshot_list_names_args *objp)
|
|
|
|
{
|
|
|
|
|
|
|
|
if (!xdr_remote_nonnull_domain (xdrs, &objp->domain))
|
|
|
|
return FALSE;
|
|
|
|
if (!xdr_int (xdrs, &objp->nameslen))
|
|
|
|
return FALSE;
|
|
|
|
if (!xdr_int (xdrs, &objp->flags))
|
|
|
|
return FALSE;
|
|
|
|
return TRUE;
|
|
|
|
}
|
|
|
|
|
|
|
|
bool_t
|
|
|
|
xdr_remote_domain_snapshot_list_names_ret (XDR *xdrs, remote_domain_snapshot_list_names_ret *objp)
|
|
|
|
{
|
|
|
|
char **objp_cpp0 = (char **) (void *) &objp->names.names_val;
|
|
|
|
|
|
|
|
if (!xdr_array (xdrs, objp_cpp0, (u_int *) &objp->names.names_len, REMOTE_DOMAIN_SNAPSHOT_LIST_NAMES_MAX,
|
|
|
|
sizeof (remote_nonnull_string), (xdrproc_t) xdr_remote_nonnull_string))
|
|
|
|
return FALSE;
|
|
|
|
return TRUE;
|
|
|
|
}
|
|
|
|
|
|
|
|
bool_t
|
|
|
|
xdr_remote_domain_snapshot_lookup_by_name_args (XDR *xdrs, remote_domain_snapshot_lookup_by_name_args *objp)
|
|
|
|
{
|
|
|
|
|
|
|
|
if (!xdr_remote_nonnull_domain (xdrs, &objp->domain))
|
|
|
|
return FALSE;
|
|
|
|
if (!xdr_remote_nonnull_string (xdrs, &objp->name))
|
|
|
|
return FALSE;
|
|
|
|
if (!xdr_int (xdrs, &objp->flags))
|
|
|
|
return FALSE;
|
|
|
|
return TRUE;
|
|
|
|
}
|
|
|
|
|
|
|
|
bool_t
|
|
|
|
xdr_remote_domain_snapshot_lookup_by_name_ret (XDR *xdrs, remote_domain_snapshot_lookup_by_name_ret *objp)
|
|
|
|
{
|
|
|
|
|
|
|
|
if (!xdr_remote_nonnull_domain_snapshot (xdrs, &objp->snap))
|
|
|
|
return FALSE;
|
|
|
|
return TRUE;
|
|
|
|
}
|
|
|
|
|
|
|
|
bool_t
|
|
|
|
xdr_remote_domain_has_current_snapshot_args (XDR *xdrs, remote_domain_has_current_snapshot_args *objp)
|
|
|
|
{
|
|
|
|
|
|
|
|
if (!xdr_remote_nonnull_domain (xdrs, &objp->domain))
|
|
|
|
return FALSE;
|
|
|
|
if (!xdr_int (xdrs, &objp->flags))
|
|
|
|
return FALSE;
|
|
|
|
return TRUE;
|
|
|
|
}
|
|
|
|
|
|
|
|
bool_t
|
|
|
|
xdr_remote_domain_has_current_snapshot_ret (XDR *xdrs, remote_domain_has_current_snapshot_ret *objp)
|
|
|
|
{
|
|
|
|
|
|
|
|
if (!xdr_int (xdrs, &objp->result))
|
|
|
|
return FALSE;
|
|
|
|
return TRUE;
|
|
|
|
}
|
|
|
|
|
|
|
|
bool_t
|
|
|
|
xdr_remote_domain_snapshot_current_args (XDR *xdrs, remote_domain_snapshot_current_args *objp)
|
|
|
|
{
|
|
|
|
|
|
|
|
if (!xdr_remote_nonnull_domain (xdrs, &objp->domain))
|
|
|
|
return FALSE;
|
|
|
|
if (!xdr_int (xdrs, &objp->flags))
|
|
|
|
return FALSE;
|
|
|
|
return TRUE;
|
|
|
|
}
|
|
|
|
|
|
|
|
bool_t
|
|
|
|
xdr_remote_domain_snapshot_current_ret (XDR *xdrs, remote_domain_snapshot_current_ret *objp)
|
|
|
|
{
|
|
|
|
|
|
|
|
if (!xdr_remote_nonnull_domain_snapshot (xdrs, &objp->snap))
|
|
|
|
return FALSE;
|
|
|
|
return TRUE;
|
|
|
|
}
|
|
|
|
|
|
|
|
bool_t
|
|
|
|
xdr_remote_domain_revert_to_snapshot_args (XDR *xdrs, remote_domain_revert_to_snapshot_args *objp)
|
|
|
|
{
|
|
|
|
|
|
|
|
if (!xdr_remote_nonnull_domain_snapshot (xdrs, &objp->snap))
|
|
|
|
return FALSE;
|
|
|
|
if (!xdr_int (xdrs, &objp->flags))
|
|
|
|
return FALSE;
|
|
|
|
return TRUE;
|
|
|
|
}
|
|
|
|
|
|
|
|
bool_t
|
|
|
|
xdr_remote_domain_snapshot_delete_args (XDR *xdrs, remote_domain_snapshot_delete_args *objp)
|
|
|
|
{
|
|
|
|
|
|
|
|
if (!xdr_remote_nonnull_domain_snapshot (xdrs, &objp->snap))
|
|
|
|
return FALSE;
|
|
|
|
if (!xdr_int (xdrs, &objp->flags))
|
|
|
|
return FALSE;
|
|
|
|
return TRUE;
|
|
|
|
}
|
|
|
|
|
2007-06-11 11:36:17 +00:00
|
|
|
bool_t
|
|
|
|
xdr_remote_procedure (XDR *xdrs, remote_procedure *objp)
|
|
|
|
{
|
|
|
|
|
2008-04-10 16:54:54 +00:00
|
|
|
if (!xdr_enum (xdrs, (enum_t *) objp))
|
|
|
|
return FALSE;
|
|
|
|
return TRUE;
|
2007-06-11 11:36:17 +00:00
|
|
|
}
|
|
|
|
|
|
|
|
bool_t
|
2009-07-10 12:02:08 +00:00
|
|
|
xdr_remote_message_type (XDR *xdrs, remote_message_type *objp)
|
2007-06-11 11:36:17 +00:00
|
|
|
{
|
|
|
|
|
2008-04-10 16:54:54 +00:00
|
|
|
if (!xdr_enum (xdrs, (enum_t *) objp))
|
|
|
|
return FALSE;
|
|
|
|
return TRUE;
|
2007-06-11 11:36:17 +00:00
|
|
|
}
|
|
|
|
|
|
|
|
bool_t
|
|
|
|
xdr_remote_message_status (XDR *xdrs, remote_message_status *objp)
|
|
|
|
{
|
|
|
|
|
2008-04-10 16:54:54 +00:00
|
|
|
if (!xdr_enum (xdrs, (enum_t *) objp))
|
|
|
|
return FALSE;
|
|
|
|
return TRUE;
|
2007-06-11 11:36:17 +00:00
|
|
|
}
|
|
|
|
|
|
|
|
bool_t
|
|
|
|
xdr_remote_message_header (XDR *xdrs, remote_message_header *objp)
|
|
|
|
{
|
|
|
|
|
2008-04-10 16:54:54 +00:00
|
|
|
if (!xdr_u_int (xdrs, &objp->prog))
|
|
|
|
return FALSE;
|
|
|
|
if (!xdr_u_int (xdrs, &objp->vers))
|
|
|
|
return FALSE;
|
|
|
|
if (!xdr_remote_procedure (xdrs, &objp->proc))
|
|
|
|
return FALSE;
|
2009-07-10 12:02:08 +00:00
|
|
|
if (!xdr_remote_message_type (xdrs, &objp->type))
|
2008-04-10 16:54:54 +00:00
|
|
|
return FALSE;
|
|
|
|
if (!xdr_u_int (xdrs, &objp->serial))
|
|
|
|
return FALSE;
|
|
|
|
if (!xdr_remote_message_status (xdrs, &objp->status))
|
|
|
|
return FALSE;
|
|
|
|
return TRUE;
|
2007-06-11 11:36:17 +00:00
|
|
|
}
|