diff --git a/src/conf/domain_conf.c b/src/conf/domain_conf.c index bb4a4cb9b3c395437826b8fbbd912203c8a2af63..9cc118c02e5fb4495616e737678efe0771b04b83 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;