After the previous commit, wherever we had:
start_element ("foo") {
string ("bar");
} end_element ();
this can now be replaced by:
single_element ("foo", "bar");
---
common/utils/libxml2-writer-macros.h | 2 +-
lib/launch-libvirt.c | 78 ++++++++--------------------
p2v/physical-xml.c | 15 ++----
3 files changed, 26 insertions(+), 69 deletions(-)
diff --git a/common/utils/libxml2-writer-macros.h b/common/utils/libxml2-writer-macros.h
index d74dcd465..a99b245bb 100644
--- a/common/utils/libxml2-writer-macros.h
+++ b/common/utils/libxml2-writer-macros.h
@@ -86,7 +86,7 @@
*
* which produces C<<< <name>text</name> >>>
*/
-#define single_element(element, str) \
+#define single_element(element,str) \
do { \
start_element ((element)) { \
string ((str)); \
diff --git a/lib/launch-libvirt.c b/lib/launch-libvirt.c
index f80932001..bf6b01c49 100644
--- a/lib/launch-libvirt.c
+++ b/lib/launch-libvirt.c
@@ -1053,10 +1053,7 @@ construct_libvirt_xml_name (guestfs_h *g,
const struct libvirt_xml_params *params,
xmlTextWriterPtr xo)
{
- start_element ("name") {
- string (params->data->name);
- } end_element ();
-
+ single_element ("name", params->data->name);
return 0;
}
@@ -1087,17 +1084,12 @@ construct_libvirt_xml_cpu (guestfs_h *g,
attribute ("fallback", "allow");
} end_element ();
}
- else {
- start_element ("model") {
- string (cpu_model);
- } end_element ();
- }
+ else
+ single_element ("model", cpu_model);
} end_element ();
}
- start_element ("vcpu") {
- string_format ("%d", g->smp);
- } end_element ();
+ single_element_format ("vcpu", "%d", g->smp);
start_element ("clock") {
attribute ("offset", "utc");
@@ -1158,24 +1150,13 @@ construct_libvirt_xml_boot (guestfs_h *g,
string (params->data->uefi_code);
} end_element ();
- if (params->data->uefi_vars) {
- start_element ("nvram") {
- string (params->data->uefi_vars);
- } end_element ();
- }
+ if (params->data->uefi_vars)
+ single_element ("nvram", params->data->uefi_vars);
}
- start_element ("kernel") {
- string (params->kernel);
- } end_element ();
-
- start_element ("initrd") {
- string (params->initrd);
- } end_element ();
-
- start_element ("cmdline") {
- string (cmdline);
- } end_element ();
+ single_element ("kernel", params->kernel);
+ single_element ("initrd", params->initrd);
+ single_element ("cmdline", cmdline);
#if defined(__i386__) || defined(__x86_64__)
if (g->verbose) {
@@ -1210,12 +1191,8 @@ construct_libvirt_xml_seclabel (guestfs_h *g,
attribute ("type", "static");
attribute ("model", "selinux");
attribute ("relabel", "yes");
- start_element ("label") {
- string (params->data->selinux_label);
- } end_element ();
- start_element ("imagelabel") {
- string (params->data->selinux_imagelabel);
- } end_element ();
+ single_element ("label", params->data->selinux_label);
+ single_element ("imagelabel", params->data->selinux_imagelabel);
} end_element ();
}
@@ -1228,10 +1205,7 @@ construct_libvirt_xml_lifecycle (guestfs_h *g,
const struct libvirt_xml_params *params,
xmlTextWriterPtr xo)
{
- start_element ("on_reboot") {
- string ("destroy");
- } end_element ();
-
+ single_element ("on_reboot", "destroy");
return 0;
}
@@ -1249,20 +1223,14 @@ construct_libvirt_xml_devices (guestfs_h *g,
/* Path to hypervisor. Only write this if the user has changed the
* default, otherwise allow libvirt to choose the best one.
*/
- if (is_custom_hv (g)) {
- start_element ("emulator") {
- string (g->hv);
- } end_element ();
- }
+ if (is_custom_hv (g))
+ single_element ("emulator", g->hv);
#if defined(__arm__)
/* Hopefully temporary hack to make ARM work (otherwise libvirt
* chooses to run /usr/bin/qemu-kvm).
*/
- else {
- start_element ("emulator") {
- string (QEMU);
- } end_element ();
- }
+ else
+ single_element ("emulator", QEMU);
#endif
/* Add a random number generator (backend for virtio-rng). This
@@ -1533,11 +1501,8 @@ construct_libvirt_xml_disk (guestfs_h *g,
return -1;
}
- if (drv->disk_label) {
- start_element ("serial") {
- string (drv->disk_label);
- } end_element ();
- }
+ if (drv->disk_label)
+ single_element ("serial", drv->disk_label);
if (construct_libvirt_xml_disk_address (g, xo, drv_index) == -1)
return -1;
@@ -1786,10 +1751,9 @@ construct_libvirt_xml_secret (guestfs_h *g,
start_element ("secret") {
attribute ("ephemeral", "yes");
attribute ("private", "yes");
- start_element ("description") {
- string_format ("guestfs secret associated with %s %s",
- data->name, drv->src.u.path);
- } end_element ();
+ single_element_format ("description",
+ "guestfs secret associated with %s %s",
+ data->name, drv->src.u.path);
} end_element ();
return 0;
diff --git a/p2v/physical-xml.c b/p2v/physical-xml.c
index b2169fc83..7d80ab9c5 100644
--- a/p2v/physical-xml.c
+++ b/p2v/physical-xml.c
@@ -97,9 +97,7 @@ generate_physical_xml (struct config *config, struct data_conn
*data_conns,
start_element ("domain") {
attribute ("type", "physical");
- start_element ("name") {
- string (config->guestname);
- } end_element ();
+ single_element ("name", config->guestname);
start_element ("memory") {
attribute ("unit", "KiB");
@@ -111,20 +109,15 @@ generate_physical_xml (struct config *config, struct data_conn
*data_conns,
string_format ("%" PRIu64, memkb);
} end_element ();
- start_element ("vcpu") {
- string_format ("%d", config->vcpus);
- } end_element ();
+ single_element_format ("vcpu", "%d", config->vcpus);
if (config->cpu.vendor || config->cpu.model ||
config->cpu.sockets || config->cpu.cores || config->cpu.threads) {
/*
https://libvirt.org/formatdomain.html#elementsCPU */
start_element ("cpu") {
attribute ("match", "minimum");
- if (config->cpu.vendor) {
- start_element ("vendor") {
- string (config->cpu.vendor);
- } end_element ();
- }
+ if (config->cpu.vendor)
+ single_element ("vendor", config->cpu.vendor);
if (config->cpu.model) {
start_element ("model") {
attribute ("fallback", "allow");
--
2.19.0.rc0