]> git.proxmox.com Git - qemu-server.git/commitdiff
fix serial/parallel/numa permissions
authorDominik Csapak <d.csapak@proxmox.com>
Wed, 1 Jun 2016 10:37:20 +0000 (12:37 +0200)
committerDietmar Maurer <dietmar@proxmox.com>
Wed, 1 Jun 2016 10:56:54 +0000 (12:56 +0200)
moved numa\d+ persmission to VM.Config.CPU
and serial/parallel to root since it accesses the host hardware

also renamed remainingoptions to generaloptions to
reduce confusion, since the real remaining options
(those that we do not specify) require root

Signed-off-by: Dominik Csapak <d.csapak@proxmox.com>
PVE/API2/Qemu.pm

index fc225197169156ac77f2282b50db922c21355456..aadfde5833e5ddd2698661dbc571d601bc9c5304 100644 (file)
@@ -205,7 +205,7 @@ my $hwtypeoptions = {
     'watchdog' => 1,
 };
 
-my $remainingoptions = {
+my $generaloptions = {
     'agent' => 1,
     'autostart' => 1,
     'bios' => 1,
@@ -244,13 +244,13 @@ my $check_vm_modify_config_perm = sub {
        next if PVE::QemuServer::is_valid_drivename($opt);
        next if $opt eq 'cdrom';
 
-       if ($cpuoptions->{$opt}) {
+       if ($cpuoptions->{$opt} || $opt =~ m/^numa\d+$/) {
            $rpcenv->check_vm_perm($authuser, $vmid, $pool, ['VM.Config.CPU']);
        } elsif ($memoryoptions->{$opt}) {
            $rpcenv->check_vm_perm($authuser, $vmid, $pool, ['VM.Config.Memory']);
        } elsif ($hwtypeoptions->{$opt}) {
            $rpcenv->check_vm_perm($authuser, $vmid, $pool, ['VM.Config.HWType']);
-       } elsif ($remainingoptions->{$opt} || $opt =~ m/^(numa|parallell|serial)\d+$/) {
+       } elsif ($generaloptions->{$opt}) {
            $rpcenv->check_vm_perm($authuser, $vmid, $pool, ['VM.Config.Options']);
            # special case for startup since it changes host behaviour
            if ($opt eq 'startup') {