From 1cc57778744e00816eef3b653ac418cdd5cb2cec Mon Sep 17 00:00:00 2001 From: Peter Krempa Date: Fri, 3 Jun 2022 12:39:38 +0200 Subject: [PATCH] conf: Extract formatting of NVRAM out of virDomainLoaderDefFormat MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Introduce virDomainLoaderDefFormatNvram and extract the code to it so that it's self-contained in upcoming patches adding more complex logic. Signed-off-by: Peter Krempa Reviewed-by: Ján Tomko Tested-by: Rohit Kumar --- src/conf/domain_conf.c | 27 +++++++++++++++++++-------- 1 file changed, 19 insertions(+), 8 deletions(-) diff --git a/src/conf/domain_conf.c b/src/conf/domain_conf.c index 6f23a2c3b4..21e383c148 100644 --- a/src/conf/domain_conf.c +++ b/src/conf/domain_conf.c @@ -27160,14 +27160,30 @@ virDomainHugepagesFormat(virBuffer *buf, virBufferAddLit(buf, "\n"); } + +static void +virDomainLoaderDefFormatNvram(virBuffer *buf, + virDomainLoaderDef *loader) +{ + g_auto(virBuffer) attrBuf = VIR_BUFFER_INITIALIZER; + g_auto(virBuffer) childBuf = VIR_BUFFER_INITIALIZER; + + virBufferEscapeString(&attrBuf, " template='%s'", loader->nvramTemplate); + if (loader->nvram) { + if (loader->nvram->type == VIR_STORAGE_TYPE_FILE) + virBufferEscapeString(&childBuf, "%s", loader->nvram->path); + } + + virXMLFormatElementInternal(buf, "nvram", &attrBuf, &childBuf, false, false); +} + + static void virDomainLoaderDefFormat(virBuffer *buf, virDomainLoaderDef *loader) { g_auto(virBuffer) loaderAttrBuf = VIR_BUFFER_INITIALIZER; g_auto(virBuffer) loaderChildBuf = VIR_BUFFER_INITIALIZER; - g_auto(virBuffer) nvramAttrBuf = VIR_BUFFER_INITIALIZER; - g_auto(virBuffer) nvramChildBuf = VIR_BUFFER_INITIALIZER; if (loader->readonly != VIR_TRISTATE_BOOL_ABSENT) virBufferAsprintf(&loaderAttrBuf, " readonly='%s'", @@ -27185,12 +27201,7 @@ virDomainLoaderDefFormat(virBuffer *buf, virXMLFormatElementInternal(buf, "loader", &loaderAttrBuf, &loaderChildBuf, false, false); - virBufferEscapeString(&nvramAttrBuf, " template='%s'", loader->nvramTemplate); - if (loader->nvram) { - if (loader->nvram->type == VIR_STORAGE_TYPE_FILE) - virBufferEscapeString(&nvramChildBuf, "%s", loader->nvram->path); - } - virXMLFormatElementInternal(buf, "nvram", &nvramAttrBuf, &nvramChildBuf, false, false); + virDomainLoaderDefFormatNvram(buf, loader); } static void