]> xenbits.xensource.com Git - libvirt.git/commitdiff
qemu: command: escape commas in chardev socket path
authorCole Robinson <crobinso@redhat.com>
Fri, 22 Apr 2016 22:27:44 +0000 (18:27 -0400)
committerCole Robinson <crobinso@redhat.com>
Mon, 16 May 2016 14:30:38 +0000 (10:30 -0400)
After this, a default virt-manager VM will startup with a comma
in the VM name:

https://bugzilla.redhat.com/show_bug.cgi?id=639926

src/qemu/qemu_command.c
tests/qemuxml2argvdata/qemuxml2argv-name-escape.args

index dfe773896e9854c61bd2708a1bfed04b6b3876ee..7b54242d487e1d9173e64b0c0d197a4692e68892 100644 (file)
@@ -4912,11 +4912,10 @@ qemuBuildChrChardevStr(virLogManagerPtr logManager,
         break;
 
     case VIR_DOMAIN_CHR_TYPE_UNIX:
-        virBufferAsprintf(&buf,
-                          "socket,id=char%s,path=%s%s",
-                          alias,
-                          dev->data.nix.path,
-                          dev->data.nix.listen ? ",server,nowait" : "");
+        virBufferAsprintf(&buf, "socket,id=char%s,path=", alias);
+        qemuBufferEscapeComma(&buf, dev->data.nix.path);
+        if (dev->data.nix.listen)
+            virBufferAddLit(&buf, ",server,nowait");
         break;
 
     case VIR_DOMAIN_CHR_TYPE_SPICEVMC:
index ffec3f4d1276371d7d6bf91ad1eb6067d10d8c7b..b50b8c4afb59aa641e75dc352f17310a5412794d 100644 (file)
@@ -14,7 +14,7 @@ bar/master-key.aes \
 -smp 1 \
 -uuid c7a5fdbd-edaf-9455-926a-d65c16db1809 \
 -nodefaults \
--chardev socket,id=charmonitor,path=/tmp/lib/domain--1-foo,bar/monitor.sock,\
+-chardev socket,id=charmonitor,path=/tmp/lib/domain--1-foo,,bar/monitor.sock,\
 server,nowait \
 -mon chardev=charmonitor,id=monitor,mode=readline \
 -no-acpi \