]> git.proxmox.com Git - qemu-server.git/blobdiff - PVE/API2/Qemu.pm
Allow VMAdmin to delete disk with Datastore.AllocateSpace permissions
[qemu-server.git] / PVE / API2 / Qemu.pm
index a7014867531c45124f58f498d301e431a3bdee29..bf16bf23c2c4b435ddfe5e410f04142a82251dd9 100644 (file)
@@ -697,7 +697,7 @@ my $vmconfig_delete_option = sub {
 
        my $drive = PVE::QemuServer::parse_drive($opt, $conf->{$opt});
        if (my $sid = &$test_deallocate_drive($storecfg, $vmid, $opt, $drive, $force)) {
-           $rpcenv->check($authuser, "/storage/$sid", ['Datastore.Allocate']);
+           $rpcenv->check($authuser, "/storage/$sid", ['Datastore.AllocateSpace']);
        }
     }
 
@@ -1302,7 +1302,7 @@ __PACKAGE__->register_method({
 
            my $cmd;
 
-           if ($conf->{vga} =~ m/^serial\d+$/) {
+           if ($conf->{vga} && ($conf->{vga} =~ m/^serial\d+$/)) {
 
                my $termcmd = [ '/usr/sbin/qm', 'terminal', $vmid, '-iface', $conf->{vga} ];
                #my $termcmd = "/usr/bin/qm terminal -iface $conf->{vga}";
@@ -1551,7 +1551,7 @@ __PACKAGE__->register_method({
        # read spice ticket from STDIN
        my $spice_ticket;
        if ($stateuri && ($stateuri eq 'tcp') && $migratedfrom && ($rpcenv->{type} eq 'cli')) {
-           if (my $line = <>) {
+           if (defined(my $line = <>)) {
                chomp $line;
                $spice_ticket = $line;
            }