}
return $ipv4;
}
+
+my $ipv4_mask_hash = {
+ '128.0.0.0' => 1,
+ '192.0.0.0' => 2,
+ '224.0.0.0' => 3,
+ '240.0.0.0' => 4,
+ '248.0.0.0' => 5,
+ '252.0.0.0' => 6,
+ '254.0.0.0' => 7,
+ '255.0.0.0' => 8,
+ '255.128.0.0' => 9,
+ '255.192.0.0' => 10,
+ '255.224.0.0' => 11,
+ '255.240.0.0' => 12,
+ '255.248.0.0' => 13,
+ '255.252.0.0' => 14,
+ '255.254.0.0' => 15,
+ '255.255.0.0' => 16,
+ '255.255.128.0' => 17,
+ '255.255.192.0' => 18,
+ '255.255.224.0' => 19,
+ '255.255.240.0' => 20,
+ '255.255.248.0' => 21,
+ '255.255.252.0' => 22,
+ '255.255.254.0' => 23,
+ '255.255.255.0' => 24,
+ '255.255.255.128' => 25,
+ '255.255.255.192' => 26,
+ '255.255.255.224' => 27,
+ '255.255.255.240' => 28,
+ '255.255.255.248' => 29,
+ '255.255.255.252' => 30
+};
+
register_format('ipv4mask', \&pve_verify_ipv4mask);
sub pve_verify_ipv4mask {
my ($mask, $noerr) = @_;
- if ($mask !~ m/^255\.255\.(\d{1,3})\.(\d{1,3})$/ ||
- !(($1 <= 255) && ($2 <= 255))) {
+ if (!defined($ipv4_mask_hash->{$mask})) {
return undef if $noerr;
die "value does not look like a valid IP netmask\n";
}
+libpve-common-perl (1.0-47) unstable; urgency=low
+
+ * fix bug #335: correctly verify ipv4 network masks
+
+ -- Proxmox Support Team <support@proxmox.com> Fri, 22 Feb 2013 09:13:35 +0100
+
libpve-common-perl (1.0-46) unstable; urgency=low
* revert vlan changes