summaryrefslogtreecommitdiff
path: root/src/validators/numeric
diff options
context:
space:
mode:
authorDaniil Baturin <daniil@vyos.io>2020-05-07 23:00:46 +0300
committerDaniil Baturin <daniil@vyos.io>2020-05-07 23:00:46 +0300
commit29dee3abb55d0f0c6b91b311f30521b45d7e46b6 (patch)
tree04c0f50ecaadc39e45f92113285162c53b5ad11b /src/validators/numeric
parente3064f763f1976993a616e141dd9ce39165f6fe3 (diff)
downloadvyos-1x-29dee3abb55d0f0c6b91b311f30521b45d7e46b6.tar.gz
vyos-1x-29dee3abb55d0f0c6b91b311f30521b45d7e46b6.zip
T2431: use native versions of validate-value and numeric validator.
Diffstat (limited to 'src/validators/numeric')
-rwxr-xr-xsrc/validators/numeric78
1 files changed, 0 insertions, 78 deletions
diff --git a/src/validators/numeric b/src/validators/numeric
deleted file mode 100755
index 2cd5178b9..000000000
--- a/src/validators/numeric
+++ /dev/null
@@ -1,78 +0,0 @@
-#!/usr/bin/env python3
-#
-# numeric value validator
-#
-# Copyright (C) 2017 VyOS maintainers and contributors
-#
-# This program is free software; you can redistribute it and/or
-# modify it under the terms of the GNU General Public License
-# as published by the Free Software Foundation; either version 2
-# of the License, or (at your option) any later version.
-#
-# This program is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-# GNU General Public License for more details.
-#
-# You should have received a copy of the GNU General Public License
-# along with this program; If not, see <http://www.gnu.org/licenses/>.
-
-import sys
-import argparse
-
-parser = argparse.ArgumentParser()
-parser.add_argument("-f", "--float", action="store_true", help="Accept floating point values")
-group = parser.add_mutually_exclusive_group()
-group.add_argument("-r", "--range", type=str, help="Check if the number is within range (inclusive), example: 1024-65535", action='append')
-group.add_argument("-n", "--non-negative", action="store_true", help="Check if the number is non-negative (>= 0)")
-group.add_argument("-p", "--positive", action="store_true", help="Check if the number is positive (> 0)")
-parser.add_argument("number", type=str, help="Number to validate")
-
-args = parser.parse_args()
-
-# Try to load the argument
-number = None
-if args.float:
- try:
- number = float(args.number)
- except:
- print("{0} is not a valid floating point number".format(args.number), file=sys.stderr)
- sys.exit(1)
-else:
- try:
- number = int(args.number)
- except:
- print("{0} is not a valid integer number".format(args.number), file=sys.stderr)
- sys.exit(1)
-
-if args.range:
- valid = False
- for r in args.range:
- try:
- list = r.split('-')
- lower = int(list[0])
- upper = int(list[1])
- except:
- print("{0} is not a valid number range",format(args.range), file=sys.stderr)
- sys.exit(1)
-
- if (number >= lower) and (number <= upper):
- valid = True
- # end for
-
- if not valid:
- if len(args.range) > 1:
- err_msg = "Number {0} is not in any of the ranges {1}".format(number, args.range)
- else:
- err_msg = "Number {0} is not in the range {1}".format(number, args.range[0])
- print(err_msg, file=sys.stderr)
- sys.exit(1)
-elif args.non_negative:
- if number < 0:
- print("Number should be non-negative", file=sys.stderr)
- sys.exit(1)
-elif args.positive:
- if number <= 0:
- print("Number should be positive", file=sys.stderr)
- sys.exit(1)
-