summaryrefslogtreecommitdiff
path: root/lib/Vyatta
diff options
context:
space:
mode:
authorStephen Hemminger <stephen.hemminger@vyatta.com>2009-02-05 11:35:30 -0800
committerStephen Hemminger <stephen.hemminger@vyatta.com>2009-02-05 11:35:30 -0800
commitb4b78cee341f07dd3fec1bc90c7310e6c2593d09 (patch)
tree85fb26f3f2c8ce15727c25539f7e68b1390e283a /lib/Vyatta
parent43c8d9ed9b30c21f3484665b174974f7e74d4f1d (diff)
parentd2418b63d68d5bb562e64e322244f6b83af18620 (diff)
downloadvyatta-cfg-b4b78cee341f07dd3fec1bc90c7310e6c2593d09.tar.gz
vyatta-cfg-b4b78cee341f07dd3fec1bc90c7310e6c2593d09.zip
Merge branch 'jenner' of suva.vyatta.com:/git/vyatta-cfg into jenner
Diffstat (limited to 'lib/Vyatta')
-rwxr-xr-xlib/Vyatta/TypeChecker.pm16
1 files changed, 16 insertions, 0 deletions
diff --git a/lib/Vyatta/TypeChecker.pm b/lib/Vyatta/TypeChecker.pm
index 37f365d..89b8932 100755
--- a/lib/Vyatta/TypeChecker.pm
+++ b/lib/Vyatta/TypeChecker.pm
@@ -67,6 +67,8 @@ my %type_handler = (
'ipv6_negate' => \&validate_ipv6_negate,
'ipv6net' => \&validate_ipv6net,
'ipv6net_negate' => \&validate_ipv6net_negate,
+ 'hex16' => \&validate_hex_16_bits,
+ 'hex32' => \&validate_hex_32_bits,
);
sub validate_ipv4 {
@@ -222,6 +224,20 @@ sub validate_ipv6net_negate {
return validate_ipv6net($value);
}
+# Validate a 16-bit hex value, no leading "0x"
+sub validate_hex_16_bits {
+ my $value = shift;
+ $value = lc $value;
+ return 1 if ($value =~ /^[0-9a-f]{4}$/)
+}
+
+# Validate a 32-bit hex value, no leading "0x"
+sub validate_hex_32_bits {
+ my $value = shift;
+ $value = lc $value;
+ return 1 if ($value =~ /^[0-9a-f]{8}$/)
+}
+
sub validateType {
my ($type, $value, $quiet) = @_;
if (!defined($type) || !defined($value)) {