]> git.proxmox.com Git - pve-manager.git/commitdiff
fix #2267: delete address(6) and netmas(6) with cidr(6)
authorDominik Csapak <d.csapak@proxmox.com>
Mon, 8 Jul 2019 14:29:18 +0000 (16:29 +0200)
committerThomas Lamprecht <t.lamprecht@proxmox.com>
Mon, 8 Jul 2019 17:20:39 +0000 (19:20 +0200)
otherwise a user cannot delete an ip from an interface

Signed-off-by: Dominik Csapak <d.csapak@proxmox.com>
(cherry picked from commit b350268a1b59ed6513d5ad7b05bee3f55ca5afab)
Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
PVE/API2/Network.pm

index 7919756c6af919401e6c7f890a5f0b9dd511d6bb..df9c91b3c1759f04cc4655dd3a4bb6c7d949bdfb 100644 (file)
@@ -435,6 +435,13 @@ __PACKAGE__->register_method({
                delete $ifaces->{$iface}->{$k};
                @$families = grep(!/^inet$/, @$families) if $k eq 'address';
                @$families = grep(!/^inet6$/, @$families) if $k eq 'address6';
+               if ($k eq 'cidr') {
+                   delete $ifaces->{$iface}->{netmask};
+                   delete $ifaces->{$iface}->{address};
+               } elsif ($k eq 'cidr6') {
+                   delete $ifaces->{$iface}->{netmask6};
+                   delete $ifaces->{$iface}->{address6};
+               }
            }
 
            $map_cidr_to_address_netmask->($param);