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

[libvirt] [PATCHv2 1/2] virDomainSaveXML: Reject domains which name contain '/'



Similarly to 790f912b4 which rejects snapshots names containing,
this commit changes virDomainSaveXML to reject domains with a '/'
in their name. The domain name is used as a filename, so this
leads to unexpected results when used in combination with '..'
---
 src/conf/domain_conf.c | 7 +++++++
 1 file changed, 7 insertions(+)

diff --git a/src/conf/domain_conf.c b/src/conf/domain_conf.c
index 85a798d..13f4bc0 100644
--- a/src/conf/domain_conf.c
+++ b/src/conf/domain_conf.c
@@ -14728,6 +14728,13 @@ int virDomainSaveXML(const char *configDir,
     char *configFile = NULL;
     int ret = -1;
 
+    if (strchr(def->name, '/')) {
+        virReportError(VIR_ERR_XML_DETAIL,
+                       _("invalid domain name '%s': name can't contain '/'"),
+                       def->name);
+        goto cleanup;
+    }
+
     if ((configFile = virDomainConfigFile(configDir, def->name)) == NULL)
         goto cleanup;
 
-- 
1.8.1


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