[libvirt] [PATCH] conf: sanitize tap and vhost paths

Martin Kletzander mkletzan at redhat.com
Mon Sep 22 14:34:59 UTC 2014


Signed-off-by: Martin Kletzander <mkletzan at redhat.com>
---
 src/conf/domain_conf.c | 11 +++++++++--
 1 file changed, 9 insertions(+), 2 deletions(-)

diff --git a/src/conf/domain_conf.c b/src/conf/domain_conf.c
index bb4a4cb..9cc118c 100644
--- a/src/conf/domain_conf.c
+++ b/src/conf/domain_conf.c
@@ -7065,8 +7065,15 @@ virDomainNetDefParseXML(virDomainXMLOptionPtr xmlopt,
                 if (virNetDevVlanParse(cur, ctxt, &def->vlan) < 0)
                     goto error;
             } else if (xmlStrEqual(cur->name, BAD_CAST "backend")) {
-                def->backend.tap = virXMLPropString(cur, "tap");
-                def->backend.vhost = virXMLPropString(cur, "vhost");
+                char *tmp = NULL;
+
+                if ((tmp = virXMLPropString(cur, "tap")))
+                    def->backend.tap = virFileSanitizePath(tmp);
+                VIR_FREE(tmp);
+
+                if ((tmp = virXMLPropString(cur, "vhost")))
+                    def->backend.vhost = virFileSanitizePath(tmp);
+                VIR_FREE(tmp);
             }
         }
         cur = cur->next;
-- 
2.1.0




More information about the libvir-list mailing list