]> git.ipfire.org Git - thirdparty/libvirt.git/commitdiff
viruri: Introduce virURIParamsSetIgnore()
authorMichal Privoznik <mprivozn@redhat.com>
Fri, 3 Feb 2023 14:10:23 +0000 (15:10 +0100)
committerMichal Privoznik <mprivozn@redhat.com>
Wed, 8 Feb 2023 15:50:45 +0000 (16:50 +0100)
The aim of this helper is to manipulate the .ignore value for
given list of parameters. For instance:

  virURIParamsSetIgnore(uri, false, {"mode", "socket", NULL});

Signed-off-by: Michal Privoznik <mprivozn@redhat.com>
Reviewed-by: Peter Krempa <pkrempa@redhat.com>
src/libvirt_private.syms
src/util/viruri.c
src/util/viruri.h

index 7ca8b472be928a3991d8881f16042a10fd6673a5..97c3d86217a9a2443dd96d4fb9ce3e08c17f1425 100644 (file)
@@ -3560,6 +3560,7 @@ virURIFormat;
 virURIFormatParams;
 virURIFree;
 virURIGetParam;
+virURIParamsSetIgnore;
 virURIParse;
 virURIResolveAlias;
 
index 54db0bda06edf2c43838c991b90faec25e67a6fa..3af2e5456585c0570bae75ea6a84f335228114f1 100644 (file)
@@ -422,3 +422,21 @@ virURICheckUnixSocket(virURI *uri)
 
     return false;
 }
+
+
+void
+virURIParamsSetIgnore(virURI *uri,
+                      bool ignore,
+                      const char *names[])
+{
+    size_t i;
+
+    for (i = 0; i < uri->paramsCount; i++) {
+        size_t j;
+
+        for (j = 0; names[j]; j++) {
+            if (STRCASEEQ(uri->params[i].name, names[j]))
+                uri->params[i].ignore = ignore;
+        }
+    }
+}
index 4f27fa26d23bce6d2d76d82c440f6d99167c7a13..ad00570b7f0d86b26f6f444f26f35d7eac9c9c3e 100644 (file)
@@ -61,4 +61,6 @@ const char *virURIGetParam(virURI *uri, const char *name);
 
 bool virURICheckUnixSocket(virURI *uri);
 
+void virURIParamsSetIgnore(virURI *uri, bool ignore, const char *names[]);
+
 #define VIR_URI_SERVER(uri) ((uri) && (uri)->server ? (uri)->server : "localhost")