
On Thu, 2015-07-09 at 17:19 +0800, zhang bo wrote:
linux-ZyvZnF:~ # virsh list --all Id Name State ---------------------------------------------------- - redhat7;reboot shut off - oscar-vm-5 shut off
As shown above, 1 we use command "virsh define a.xml" to define a guest with a name containing ';', that's 'redhat7;reboot' 2 then we start the guest: "virsh start redhat7;reboot" 3 shell consider the command as a) run "virsh start redhat7", failed b) run "reboot", to reboot the host And *the host get rebooted*.
shall libvirtd do the guest-name-validation work? Or other suggustions?
Proper usage of string escaping is the user's responsibility. Unfortunately a lot of shell scripts get this wrong, leading to more or less catastrophic results. The same reasoning, by the way, applies to file names, and eg. the Nautilus file manager happily allows me to use foo;reboot as name when creating or renaming files... Cheers. -- Andrea Bolognani Software Engineer - Virtualization Team