diff -u -p -r1.87 xend_internal.c
--- xend_internal.c 23 Jan 2007 14:39:45 -0000 1.87
+++ xend_internal.c 7 Feb 2007 17:48:19 -0000
@@ -742,51 +742,6 @@ sexpr_u64(struct sexpr *sexpr, const cha
return 0;
}
-static int
-sexpr_strlen(struct sexpr *sexpr, const char *path)
-{
- const char *r = sexpr_node(sexpr, path);
-
- return r ? (strlen(r) + 1) : 0;
-}
-
-static const char *
-sexpr_strcpy(char **ptr, struct sexpr *node, const char *path)
-{
- const char *ret = sexpr_node(node, path);
-
- if (ret) {
- strcpy(*ptr, ret);
- ret = *ptr;
- *ptr += (strlen(ret) + 1);
- }
- return ret;
-}
-
-
-/**
- * sexpr_node_system:
- * @sexpr: an S-Expression
- * @name: the name for the value
- *
- * convenience function to lookup a value describing the kind of system
- * from the S-Expression
- *
- * Returns the value found or 0 if not found (but may not be an error)
- */
-static enum xend_node_system
-sexpr_node_system(struct sexpr *node, const char *path)
-{
- const char *syst = sexpr_node(node, path);
-
- if (syst) {
- if (strcmp(syst, "Linux") == 0) {
- return XEND_SYSTEM_LINUX;
- }
- }
-
- return XEND_DEFAULT;
-}
/**
* sexpr_uuid:
@@ -940,48 +895,6 @@ xend_wait_for_devices(virConnectPtr xend
}
-/**
- * xend_rename:
- * @xend: pointer to the Xem Daemon block
- * @old: old name for the domain
- * @new: new name for the domain
- *
- * Rename the domain
- *
- * Returns 0 in case of success, -1 (with errno) in case of error.
- */
-int
-xend_rename(virConnectPtr xend, const char *old, const char *new)
-{
- if ((xend == NULL) || (old == NULL) || (new == NULL)) {
- /* this should be caught at the interface but ... */
- virXendError(xend, VIR_ERR_INVALID_ARG, __FUNCTION__);
- return (-1);
- }
- return xend_op(xend, old, "op", "rename", "name", new, NULL);
-}
-
-
-/**
- * xend_sysrq:
- * @xend: pointer to the Xem Daemon block
- * @name: name for the domain
- * @key: the SysReq key
- *
- * Send a SysReq key which is used to debug Linux kernels running in the domain
- *
- * Returns 0 in case of success, -1 (with errno) in case of error.
- */
-int
-xend_sysrq(virConnectPtr xend, const char *name, const char *key)
-{
- if ((xend == NULL) || (name == NULL) || (key == NULL)) {
- /* this should be caught at the interface but ... */
- virXendError(xend, VIR_ERR_INVALID_ARG, __FUNCTION__);
- return (-1);
- }
- return xend_op(xend, name, "op", "sysrq", "key", key, NULL);
-}
#endif /* PROXY */
@@ -1186,91 +1099,6 @@ error:
return (-1);
}
-/**
- * xend_get_node:
- * @xend: A xend instance
- *
- * This method returns information about the physical host
- * machine running Xen.
- *
- * Returns node info on success; NULL (with errno) on error
- */
-struct xend_node *
-xend_get_node(virConnectPtr xend)
-{
- struct sexpr *root;
- struct xend_node *node = NULL;
- size_t size;
- char *ptr;
-
- root = sexpr_get(xend, "/xend/node/");
- if (root == NULL)
- goto error;
-
- size = sizeof(struct xend_node);
- size += sexpr_strlen(root, "node/host");
- size += sexpr_strlen(root, "node/release");
- size += sexpr_strlen(root, "node/version");
- size += sexpr_strlen(root, "node/machine");
- size += sexpr_strlen(root, "node/hw_caps");
- size += sexpr_strlen(root, "node/xen_caps");
- size += sexpr_strlen(root, "node/platform_params");
- size += sexpr_strlen(root, "node/xen_changeset");
- size += sexpr_strlen(root, "node/cc_compiler");
- size += sexpr_strlen(root, "node/cc_compile_by");
- size += sexpr_strlen(root, "node/cc_compile_domain");
- size += sexpr_strlen(root, "node/cc_compile_date");
-
- ptr = malloc(size);
- if (ptr == NULL)
- goto error;
-
- node = (struct xend_node *) ptr;
- ptr += sizeof(struct xend_node);
-
- node->system = sexpr_node_system(root, "node/system");
- node->host = sexpr_strcpy(&ptr, root, "node/host");
- node->release = sexpr_strcpy(&ptr, root, "node/release");
- node->version = sexpr_strcpy(&ptr, root, "node/version");
- node->machine = sexpr_strcpy(&ptr, root, "node/machine");
- node->nr_cpus = sexpr_int(root, "node/nr_cpus");
- node->nr_nodes = sexpr_int(root, "node/nr_nodes");
- node->sockets_per_node = sexpr_int(root, "node/sockets_per_node");
- node->cores_per_socket = sexpr_int(root, "node/cores_per_socket");
- node->threads_per_core = sexpr_int(root, "node/threads_per_core");
- node->cpu_mhz = sexpr_int(root, "node/cpu_mhz");
- node->hw_caps = sexpr_strcpy(&ptr, root, "node/hw_caps");
- node->total_memory = sexpr_u64(root, "node/total_memory") << 12;
- node->free_memory = sexpr_u64(root, "node/free_memory") << 12;
- node->xen_major = sexpr_int(root, "node/xen_major");
- node->xen_minor = sexpr_int(root, "node/xen_minor");
- {
- const char *tmp;
-
- tmp = sexpr_node(root, "node/xen_extra");
- if (tmp) {
- if (*tmp == '.')
- tmp++;
- node->xen_extra = atoi(tmp);
- } else {
- node->xen_extra = 0;
- }
- }
- node->xen_caps = sexpr_strcpy(&ptr, root, "node/xen_caps");
- node->platform_params =
- sexpr_strcpy(&ptr, root, "node/platform_params");
- node->xen_changeset = sexpr_strcpy(&ptr, root, "node/xen_changeset");
- node->cc_compiler = sexpr_strcpy(&ptr, root, "node/cc_compiler");
- node->cc_compile_by = sexpr_strcpy(&ptr, root, "node/cc_compile_by");
- node->cc_compile_domain =
- sexpr_strcpy(&ptr, root, "node/cc_compile_domain");
- node->cc_compile_date =
- sexpr_strcpy(&ptr, root, "node/cc_compile_date");
-
- error:
- sexpr_free(root);
- return node;
-}
static int
xend_detect_config_version(virConnectPtr conn) {
diff -u -p -r1.28 xend_internal.h
--- xend_internal.h 14 Dec 2006 01:56:14 -0000 1.28
+++ xend_internal.h 7 Feb 2007 17:48:19 -0000
@@ -24,425 +24,6 @@
extern "C" {
#endif
-/**
- Use the default setting as determined by Xend.
-*/
-#define XEND_DEFAULT 0
-
-/**
- This structure represents a virtual block device.
-*/
- struct xend_device_vbd {
-
- /**
- The domain ID of the backend.
-
- Required.
- */
- int backend;
-
- /**
- A URI representing the device. This is typically in the form
- file:/path/to/image or phy:/dev/device
-
- Required.
- */
- const char *uname;
-
- /**
- The name (or number) of the device to expose to the frontend.
-
- Required.
- */
- const char *dev;
-
- /**
- A flag specifying the permissions to expose the device with.
-
- Required.
- */
- virDeviceMode mode;
- };
-
-/**
- This structure represents a range of PIO to enable for a guest.
-*/
- struct xend_device_ioport {
-
- /**
- The beginning address of an ioport range to enable.
-
- Required.
- */
- uint16_t from;
-
- /**
- The ending address of an ioport range to enable.
-
- Required.
- */
- uint16_t to;
- };
-
-/**
- This structure represents a virtual network interface configuration.
-*/
- struct xend_device_vif {
-
- /**
- A string representing the domain that will serve as the backend for
- this device.
-
- Required.
- */
- int backend;
-
- /**
- The name of the bridge device to pass to the network script.
-
- Optional.
- */
- const char *bridge;
-
- /**
- The ip address to configure the virtal network device with.
-
- Optional.
- */
- const char *ip;
-
- /**
- The mac address to use for the virtual network device.
-
- Required.
- */
- uint8_t mac[6];
-
- /**
- The path to the network script that is to be used for initializing
- the network device.
-
- Optional.
- */
- const char *script;
-
- /**
- The name of the vif. The primary use for this is to allow the user
- to operate on vifs by name.
-
- Optional.
- */
- const char *vifname;
- };
-
- struct xend_domain_live {
-
- /**
- true is domain is currently scheduled.
- */
- bool running;
-
- /**
- true is domain has crashed.
- */
- bool crashed;
-
- /**
- true if domain has been shutdown.
- */
- bool poweroff;
-
- /**
- true if domain has requested a reboot.
- */
- bool reboot;
-
- /**
- true if domain has requested a suspend.
- */
- bool suspend;
-
- /**
- true if domain is blocked on IO
- */
- bool blocked;
-
- /**
- true if domain has been destroyed but resources are not
- fully deallocated.
- */
- bool dying;
-
- /**
- true if domain is paused.
- */
- bool paused;
-
- /**
- the amount of time the domain has been running (in seconds)
- */
- double cpu_time;
-
- /**
- the wall clock time since the domain was created (in seconds)
- */
- double up_time;
-
- /**
- the time (in seconds since epoch) the domain was created
- */
- double start_time;
-
- /**
- the number of enabled VCPUs
- */
- int online_vcpus;
-
- /**
- the total number of available VCPUs
- */
- int vcpu_avail;
-
- /**
- the domain id number
- */
- int id;
- };
-
-/**
- This structure represents the configuration of a domain. It's primary
- purpose (currently) is for domain creation.
-*/
- struct xend_domain {
-
- /**
- The name of the domain.
-
- Required.
- */
- const char *name;
-
- /**
- The amount of memory to assign to the domain before creation.
-
- Required.
- */
- uint64_t memory;
-
- /**
- The maximum amount of memory that can be given to the domain
- while it's running. Please note that a domain can increase its
- memory on its own while running up to this value.
-
- Required.
- */
- uint64_t max_memory;
-
- /**
- The uuid to use to identify the domain. This is compatible with
- libuuid's uuid_t and should be able to be used interchangably.
-
- Optional.
- */
- unsigned char *uuid;
-
- /**
- The ssidref to assign to the domain.
-
- Optional.
- */
- int ssidref;
-
- /**
- The action to perform when the domain powers off.
-
- Optional.
- */
- virDomainRestart on_poweroff;
-
- /**
- The action to perform when the domain reboots.
-
- Optional.
- */
- virDomainRestart on_reboot;
-
- /**
- The action to perform when the domain crashes.
-
- Optional.
- */
- virDomainRestart on_crash;
-
- /**
- The number of VCPUs to assign to the domain.
-
- Required.
- */
- int vcpus;
-
- /* FIXME cpus */
-
- virDomainKernel image;
-
- /**
- The number of VBDs pointed to be vbds.
-
- Optional.
- */
- size_t n_vbds;
- struct xend_device_vbd *vbds;
-
- /**
- The number of IO port ranges pointed to by ioports.
-
- Optional.
- */
- size_t n_ioports;
- struct xend_device_ioport *ioports;
-
- /**
- The number of VIFs pointed to be vifs.
-
- Optional.
- */
- size_t n_vifs;
- struct xend_device_vif *vifs;
-
- /**
- A pointer to run-time information about the domain.
-
- Only set by xen_get_domain().
- */
- struct xend_domain_live *live;
- };
-
- enum xend_node_system {
- XEND_SYSTEM_LINUX = 1,
- };
-
- struct xend_node {
-
- /**
- An enumeration value specifying the host system.
- */
- enum xend_node_system system;
-
- /**
- The DNS host name.
- */
- const char *host;
-
- /**
- The dom0 kernel release string.
- */
- const char *release;
-
- /**
- The result of uname -v.
- */
- const char *version;
-
- /**
- The machine type.
- */
- const char *machine;
-
- /**
- The number of physical cpus.
- */
- int nr_cpus;
-
- /**
- The number of NUMA nodes.
- */
- int nr_nodes;
-
- /**
- The number of sockets per NUMA node.
- */
- int sockets_per_node;
-
- /**
- The number of cores per NUMA socket.
- */
- int cores_per_socket;
-
- /**
- The number of hyperthreads per core.
- */
- int threads_per_core;
-
- /**
- The clock rating (in megahertz) of each core.
- */
- int cpu_mhz;
-
- /**
- I honestly don't know what this is.
- */
- const char *hw_caps;
-
- /**
- The total memory (in bytes).
- */
- uint64_t total_memory;
-
- /**
- The free memory (in bytes).
- */
- uint64_t free_memory;
-
- /**
- The Xen major version number.
- */
- int xen_major;
-
- /**
- The Xen minor version number.
- */
- int xen_minor;
-
- /**
- The Xen extra version number.
- */
- int xen_extra;
-
- /**
- A string descirbing the Xen platform.
- */
- const char *xen_caps;
-
- /**
- Dunno.
- */
- const char *platform_params;
-
- /**
- The build changeset.
- */
- const char *xen_changeset;
-
- /**
- The compiler version.
- */
- const char *cc_compiler;
-
- /**
- The user that compiled this binary.
- */
- const char *cc_compile_by;
-
- /**
- The system this binary was built on.
- */
- const char *cc_compile_domain;
-
- /**
- The date that this binary was built on.
- */
- const char *cc_compile_date;
- };
/**
* \brief Setup the connection to a xend instance via TCP
@@ -486,28 +67,6 @@ int xenDaemonOpen_unix(virConnectPtr xen
*/
int xend_wait_for_devices(virConnectPtr xend, const char *name);
-/**
- * \brief Rename a domain
- * \param xend A xend instance
- * \param oldname The domain's name
- * \param name The new name
- * \return 0 for success; -1 (with errno) on error
- *
- * This method allows a domain to have its name changed after creation.
- */
- int xend_rename(virConnectPtr xend, const char *oldname,
- const char *name);
-
-/**
- * \brief Sends a SYSRQ to a domain
- * \param xend A xend instance
- * \param name The domain's name
- * \param key The key that was held during the SYSRQ
- * \return 0 for success; -1 (with errno) on error
- *
- * This method simulates the pressing of a SYSRQ sequence.
- */
- int xend_sysrq(virConnectPtr xend, const char *name, const char *key);
/**
* \brief Create a new domain
diff -u -p -r1.57 xml.c
--- xml.c 7 Feb 2007 13:50:18 -0000 1.57
+++ xml.c 7 Feb 2007 17:48:23 -0000
@@ -209,366 +209,6 @@ virBufferStrcat(virBufferPtr buf, ...)
return 0;
}
-#if 0
-
-/*
- * This block of function are now implemented by a xend poll in
- * xend_internal.c instead of querying the Xen store, code is kept
- * for reference of in case Xend may not be available in the future ...
- */
-
-/**
- * virDomainGetXMLDevice:
- * @domain: a domain object
- * @sub: the xenstore subsection 'vbd', 'vif', ...
- * @dev: the xenstrore internal device number
- * @name: the value's name
- *
- * Extract one information the device used by the domain from xensttore
- *
- * Returns the new string or NULL in case of error
- */
-static char *
-virDomainGetXMLDeviceInfo(virDomainPtr domain, const char *sub,
- long dev, const char *name)
-{
- char s[256];
- unsigned int len = 0;
-
- snprintf(s, 255, "/local/domain/0/backend/%s/%d/%ld/%s",
- sub, domain->id, dev, name);
- s[255] = 0;
-
- return xs_read(domain->conn->xshandle, 0, &s[0], &len);
-}
-
-/**
- * virDomainGetXMLDevice:
- * @domain: a domain object
- * @buf: the output buffer object
- * @dev: the xenstrore internal device number
- *
- * Extract and dump in the buffer information on the device used by the domain
- *
- * Returns 0 in case of success, -1 in case of failure
- */
-static int
-virDomainGetXMLDevice(virDomainPtr domain, virBufferPtr buf, long dev)
-{
- char *type, *val;
-
- type = virDomainGetXMLDeviceInfo(domain, "vbd", dev, "type");
- if (type == NULL)
- return (-1);
- if (!strcmp(type, "file")) {
- virBufferVSprintf(buf, " \n");
- val = virDomainGetXMLDeviceInfo(domain, "vbd", dev, "params");
- if (val != NULL) {
- virBufferVSprintf(buf, " \n", val);
- free(val);
- }
- val = virDomainGetXMLDeviceInfo(domain, "vbd", dev, "dev");
- if (val != NULL) {
- char *tmp = val;
- if (!strncmp(tmp, "ioemu:", 6))
- tmp += 6;
- virBufferVSprintf(buf, " \n", tmp);
- free(val);
- }
- val = virDomainGetXMLDeviceInfo(domain, "vbd", dev, "read-only");
- if (val != NULL) {
- virBufferVSprintf(buf, " \n", val);
- free(val);
- }
- virBufferAdd(buf, " \n", 12);
- } else if (!strcmp(type, "phy")) {
- virBufferVSprintf(buf, " \n");
- val = virDomainGetXMLDeviceInfo(domain, "vbd", dev, "params");
- if (val != NULL) {
- virBufferVSprintf(buf, " \n", val);
- free(val);
- }
- val = virDomainGetXMLDeviceInfo(domain, "vbd", dev, "dev");
- if (val != NULL) {
- char *tmp = val;
- if (!strncmp(tmp, "ioemu:", 6))
- tmp += 6;
- virBufferVSprintf(buf, " \n", tmp);
- free(val);
- }
- val = virDomainGetXMLDeviceInfo(domain, "vbd", dev, "read-only");
- if (val != NULL) {
- virBufferVSprintf(buf, " \n", val);
- free(val);
- }
- virBufferAdd(buf, " \n", 12);
- } else {
- TODO fprintf(stderr, "Don't know how to handle device type %s\n",
- type);
- }
- free(type);
-
- return (0);
-}
-
-/**
- * virDomainGetXMLDevices:
- * @domain: a domain object
- * @buf: the output buffer object
- *
- * Extract the devices used by the domain and dumps then in the buffer
- *
- * Returns 0 in case of success, -1 in case of failure
- */
-static int
-virDomainGetXMLDevices(virDomainPtr domain, virBufferPtr buf)
-{
- int ret = -1;
- unsigned int num, i;
- long id;
- char **list = NULL, *endptr;
- char backend[200];
- virConnectPtr conn;
-
- if (!VIR_IS_CONNECTED_DOMAIN(domain))
- return (-1);
-
- conn = domain->conn;
-
- snprintf(backend, 199, "/local/domain/0/backend/vbd/%d",
- virDomainGetID(domain));
- backend[199] = 0;
- list = xs_directory(conn->xshandle, 0, backend, &num);
- ret = 0;
- if (list == NULL)
- goto done;
-
- for (i = 0; i < num; i++) {
- id = strtol(list[i], &endptr, 10);
- if ((endptr == list[i]) || (*endptr != 0)) {
- ret = -1;
- goto done;
- }
- virDomainGetXMLDevice(domain, buf, id);
- }
-
- done:
- if (list != NULL)
- free(list);
-
- return (ret);
-}
-
-/**
- * virDomainGetXMLInterface:
- * @domain: a domain object
- * @buf: the output buffer object
- * @dev: the xenstrore internal device number
- *
- * Extract and dump in the buffer information on the interface used by
- * the domain
- *
- * Returns 0 in case of success, -1 in case of failure
- */
-static int
-virDomainGetXMLInterface(virDomainPtr domain, virBufferPtr buf, long dev)
-{
- char *type, *val;
-
- type = virDomainGetXMLDeviceInfo(domain, "vif", dev, "bridge");
- if (type == NULL) {
- virBufferVSprintf(buf, " \n");
- val = virDomainGetXMLDeviceInfo(domain, "vif", dev, "mac");
- if (val != NULL) {
- virBufferVSprintf(buf, " \n", val);
- free(val);
- }
- val = virDomainGetXMLDeviceInfo(domain, "vif", dev, "script");
- if (val != NULL) {
- virBufferVSprintf(buf, " \n", val);
- free(val);
- }
- virBufferAdd(buf, " \n", 17);
- } else {
- virBufferVSprintf(buf, " \n");
- virBufferVSprintf(buf, " \n", type);
- val = virDomainGetXMLDeviceInfo(domain, "vif", dev, "mac");
- if (val != NULL) {
- virBufferVSprintf(buf, " \n", val);
- free(val);
- }
- val = virDomainGetXMLDeviceInfo(domain, "vif", dev, "script");
- if (val != NULL) {
- virBufferVSprintf(buf, " \n", val);
- free(val);
- }
- virBufferAdd(buf, " \n", 17);
- }
- free(type);
-
- return (0);
-}
-
-/**
- * virDomainGetXMLInterfaces:
- * @domain: a domain object
- * @buf: the output buffer object
- *
- * Extract the interfaces used by the domain and dumps then in the buffer
- *
- * Returns 0 in case of success, -1 in case of failure
- */
-static int
-virDomainGetXMLInterfaces(virDomainPtr domain, virBufferPtr buf)
-{
- int ret = -1;
- unsigned int num, i;
- long id;
- char **list = NULL, *endptr;
- char backend[200];
- virConnectPtr conn;
-
- if (!VIR_IS_CONNECTED_DOMAIN(domain))
- return (-1);
-
- conn = domain->conn;
-
- snprintf(backend, 199, "/local/domain/0/backend/vif/%d",
- virDomainGetID(domain));
- backend[199] = 0;
- list = xs_directory(conn->xshandle, 0, backend, &num);
- ret = 0;
- if (list == NULL)
- goto done;
-
- for (i = 0; i < num; i++) {
- id = strtol(list[i], &endptr, 10);
- if ((endptr == list[i]) || (*endptr != 0)) {
- ret = -1;
- goto done;
- }
- virDomainGetXMLInterface(domain, buf, id);
- }
-
- done:
- if (list != NULL)
- free(list);
-
- return (ret);
-}
-
-
-
-
-/**
- * virDomainGetXMLBoot:
- * @domain: a domain object
- * @buf: the output buffer object
- *
- * Extract the boot information used to start that domain
- *
- * Returns 0 in case of success, -1 in case of failure
- */
-static int
-virDomainGetXMLBoot(virDomainPtr domain, virBufferPtr buf)
-{
- char *vm, *str;
-
- if (!VIR_IS_DOMAIN(domain))
- return (-1);
-
- vm = virDomainGetVM(domain);
- if (vm == NULL)
- return (-1);
-
- virBufferAdd(buf, " \n", 7);
- str = virDomainGetVMInfo(domain, vm, "image/ostype");
- if (str != NULL) {
- virBufferVSprintf(buf, " %s\n", str);
- free(str);
- }
- str = virDomainGetVMInfo(domain, vm, "image/kernel");
- if (str != NULL) {
- virBufferVSprintf(buf, " %s\n", str);
- free(str);
- }
- str = virDomainGetVMInfo(domain, vm, "image/ramdisk");
- if (str != NULL) {
- if (str[0] != 0)
- virBufferVSprintf(buf, " %s\n", str);
- free(str);
- }
- str = virDomainGetVMInfo(domain, vm, "image/cmdline");
- if (str != NULL) {
- if (str[0] != 0)
- virBufferVSprintf(buf, " %s\n", str);
- free(str);
- }
- virBufferAdd(buf, " \n", 8);
-
- free(vm);
- return (0);
-}
-
-/**
- * virDomainGetXMLDesc:
- * @domain: a domain object
- * @flags: and OR'ed set of extraction flags, not used yet
- *
- * Provide an XML description of the domain. NOTE: this API is subject
- * to changes.
- *
- * Returns a 0 terminated UTF-8 encoded XML instance, or NULL in case of error.
- * the caller must free() the returned value.
- */
-char *
-virDomainGetXMLDesc(virDomainPtr domain, int flags)
-{
- char *ret = NULL;
- unsigned char uuid[VIR_UUID_BUFLEN];
- virBuffer buf;
- virDomainInfo info;
-
- if (!VIR_IS_DOMAIN(domain))
- return (NULL);
- if (flags != 0)
- return (NULL);
- if (virDomainGetInfo(domain, &info) < 0)
- return (NULL);
-
- ret = malloc(1000);
- if (ret == NULL)
- return (NULL);
- buf.content = ret;
- buf.size = 1000;
- buf.use = 0;
-
- virBufferVSprintf(&buf, "\n",
- virDomainGetID(domain));
- virBufferVSprintf(&buf, " %s\n",
- virDomainGetName(domain));
- if (virDomainGetUUID(domain, &uuid[0]) == 0) {
- virBufferVSprintf(&buf,
- " %02x%02x%02x%02x%02x%02x%02x%02x%02x%02x%02x%02x%02x%02x%02x%02x\n",
- uuid[0], uuid[1], uuid[2], uuid[3],
- uuid[4], uuid[5], uuid[6], uuid[7],
- uuid[8], uuid[9], uuid[10], uuid[11],
- uuid[12], uuid[13], uuid[14], uuid[15]);
- }
- virDomainGetXMLBoot(domain, &buf);
- virBufferVSprintf(&buf, " %lu\n", info.maxMem);
- virBufferVSprintf(&buf, " %d\n", (int) info.nrVirtCpu);
- virBufferAdd(&buf, " \n", 12);
- virDomainGetXMLDevices(domain, &buf);
- virDomainGetXMLInterfaces(domain, &buf);
- virBufferAdd(&buf, " \n", 13);
- virBufferAdd(&buf, "\n", 10);
-
- buf.content[buf.use] = 0;
- return (ret);
-}
-
-#endif /* 0 - UNUSED */
#ifndef PROXY
/**