From: Peter Krempa Date: Wed, 18 May 2022 08:46:52 +0000 (+0200) Subject: util: typedparam: Introduce virTypedParamListFromParams X-Git-Tag: v8.4.0-rc1~116 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=45064119c168aa277ab1d9a436103085b709ffdf;p=thirdparty%2Flibvirt.git util: typedparam: Introduce virTypedParamListFromParams The helper constructs a virTypedParamList from loose params. Signed-off-by: Peter Krempa Reviewed-by: Pavel Hrdina --- diff --git a/src/libvirt_private.syms b/src/libvirt_private.syms index d95c181793..3711e33cf5 100644 --- a/src/libvirt_private.syms +++ b/src/libvirt_private.syms @@ -3493,6 +3493,7 @@ virTypedParamListAddString; virTypedParamListAddUInt; virTypedParamListAddULLong; virTypedParamListFree; +virTypedParamListFromParams; virTypedParamListStealParams; virTypedParamsCheck; virTypedParamsCopy; diff --git a/src/util/virtypedparam.c b/src/util/virtypedparam.c index aa6a871049..2d7e4ab354 100644 --- a/src/util/virtypedparam.c +++ b/src/util/virtypedparam.c @@ -738,6 +738,19 @@ virTypedParamListStealParams(virTypedParamList *list, return ret; } +virTypedParamList * +virTypedParamListFromParams(virTypedParameterPtr *params, + size_t nparams) +{ + virTypedParamList *l = g_new0(virTypedParamList, 1); + + l->par = g_steal_pointer(params); + l->npar = nparams; + l->par_alloc = nparams; + + return l; +} + static int G_GNUC_PRINTF(2, 0) virTypedParamSetNameVPrintf(virTypedParameterPtr par, diff --git a/src/util/virtypedparam.h b/src/util/virtypedparam.h index f4b3921c38..c4bc58ee8f 100644 --- a/src/util/virtypedparam.h +++ b/src/util/virtypedparam.h @@ -138,6 +138,10 @@ G_DEFINE_AUTOPTR_CLEANUP_FUNC(virTypedParamList, virTypedParamListFree); size_t virTypedParamListStealParams(virTypedParamList *list, virTypedParameterPtr *params); +virTypedParamList * +virTypedParamListFromParams(virTypedParameterPtr *params, + size_t nparams); + int virTypedParamListAddInt(virTypedParamList *list, int value, const char *namefmt,