add new option : spice: 1 this enable spice (currently without tls on socket), and force vga=qxl
Signed-off-by: Alexandre Derumier <aderum...@odiso.com> --- PVE/QemuServer.pm | 34 ++++++++++++++++++++++++++++++++++ 1 file changed, 34 insertions(+) diff --git a/PVE/QemuServer.pm b/PVE/QemuServer.pm index d2b942f..25f163d 100644 --- a/PVE/QemuServer.pm +++ b/PVE/QemuServer.pm @@ -332,6 +332,12 @@ EODESC type => 'boolean', description => "Freeze CPU at startup (use 'c' monitor command to start execution).", }, + spice => { + optional => 1, + type => 'boolean', + description => "Enable/disable Spice Console.", + default => 1, + }, vga => { optional => 1, type => 'string', @@ -2349,6 +2355,8 @@ sub config_to_command { } } + $vga = 'qxl' if $conf->{spice}; + push @$cmd, '-vga', $vga if $vga; # for kvm 77 and later # time drift fix @@ -2414,6 +2422,26 @@ sub config_to_command { push @$devices, '-device', 'virtserialport,chardev=qga0,name=org.qemu.guest_agent.0'; } + if($conf->{spice}){ + my $pciaddr = print_pci_addr("spice", $bridges); + + #tls support + + my $x509 = "x509-key-file=/etc/pve/local/pve-ssl.key"; + $x509 .= ",x509-cert-file=/etc/pve/local/pve-ssl.pem"; + $x509 .= ",x509-cacert-file=/etc/pve/pve-root-ca.pem"; + + #push @$cmd, '-spice',"port=60100,tls-port=60101,disable-ticketing,$x509,tls-ciphers=DES-CBC3-SHA"; + #push @$cmd, '-spice',"unix=$socket,$x509,tls-ciphers=DES-CBC3-SHA"; + + my $socket = spice_socket($vmid); + + push @$cmd, '-spice',"disable-ticketing,unix=$socket"; + push @$cmd, '-device',"virtio-serial,id=spice$pciaddr"; + push @$cmd, '-chardev',"spicevmc,id=vdagent,name=vdagent"; + push @$cmd, '-device',"virtserialport,chardev=vdagent,name=com.redhat.spice.0"; + } + # enable balloon by default, unless explicitly disabled if (!defined($conf->{balloon}) || $conf->{balloon}) { $pciaddr = print_pci_addr("balloon0", $bridges); @@ -2537,6 +2565,11 @@ sub vnc_socket { return "${var_run_tmpdir}/$vmid.vnc"; } +sub spice_socket { + my ($vmid) = @_; + return "${var_run_tmpdir}/$vmid.spice"; +} + sub qmp_socket { my ($vmid) = @_; return "${var_run_tmpdir}/$vmid.qmp"; @@ -3405,6 +3438,7 @@ sub print_pci_addr { scsihw1 => { bus => 0, addr => 6 }, ahci0 => { bus => 0, addr => 7 }, qga0 => { bus => 0, addr => 8 }, + spice => { bus => 0, addr => 9 }, virtio0 => { bus => 0, addr => 10 }, virtio1 => { bus => 0, addr => 11 }, virtio2 => { bus => 0, addr => 12 }, -- 1.7.10.4 _______________________________________________ pve-devel mailing list pve-devel@pve.proxmox.com http://pve.proxmox.com/cgi-bin/mailman/listinfo/pve-devel