[PATCH 09/10] viruri: Introduce virURIParamsSetIgnore()

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



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@xxxxxxxxxx>
---
 src/libvirt_private.syms |  1 +
 src/util/viruri.c        | 18 ++++++++++++++++++
 src/util/viruri.h        |  2 ++
 3 files changed, 21 insertions(+)

diff --git a/src/libvirt_private.syms b/src/libvirt_private.syms
index 7ca8b472be..97c3d86217 100644
--- a/src/libvirt_private.syms
+++ b/src/libvirt_private.syms
@@ -3560,6 +3560,7 @@ virURIFormat;
 virURIFormatParams;
 virURIFree;
 virURIGetParam;
+virURIParamsSetIgnore;
 virURIParse;
 virURIResolveAlias;
 
diff --git a/src/util/viruri.c b/src/util/viruri.c
index 79492e87ce..85a9355918 100644
--- a/src/util/viruri.c
+++ b/src/util/viruri.c
@@ -409,3 +409,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;
+        }
+    }
+}
diff --git a/src/util/viruri.h b/src/util/viruri.h
index 7e4f95a2b1..de59e7f0f8 100644
--- a/src/util/viruri.h
+++ b/src/util/viruri.h
@@ -61,6 +61,8 @@ 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")
 
 /* helper macros to ease extraction of arguments from the URI */
-- 
2.39.1




[Index of Archives]     [Virt Tools]     [Libvirt Users]     [Lib OS Info]     [Fedora Users]     [Fedora Desktop]     [Fedora SELinux]     [Big List of Linux Books]     [Yosemite News]     [KDE Users]     [Fedora Tools]

  Powered by Linux