X-Git-Url: https://git.proxmox.com/?p=pve-common.git;a=blobdiff_plain;f=src%2FPVE%2FJSONSchema.pm;fp=src%2FPVE%2FJSONSchema.pm;h=36fa994eb7e6d4bddeb2600585a085cdc7c7ba70;hp=fb58ad357f2f4449cea27e7c38eb0af1a557026d;hb=14324ea8744ccca64453bea72a746a758a5cd9b9;hpb=3b44baed32fa8630dd13191f01ba22547b3b07f7 diff --git a/src/PVE/JSONSchema.pm b/src/PVE/JSONSchema.pm index fb58ad3..36fa994 100644 --- a/src/PVE/JSONSchema.pm +++ b/src/PVE/JSONSchema.pm @@ -204,6 +204,17 @@ sub pve_verify_node_name { return $node; } +register_format('mac-addr', \&pve_verify_mac_addr); +sub pve_verify_mac_addr { + my ($mac_addr, $noerr) = @_; + + if ($mac_addr !~ m/^[0-9a-f]{2}(:[0-9a-f]{2}){5}$/i) { + return undef if $noerr; + die "value does not look like a valid MAC address\n"; + } + return $mac_addr; +} + register_format('ipv4', \&pve_verify_ipv4); sub pve_verify_ipv4 { my ($ipv4, $noerr) = @_;