summaryrefslogtreecommitdiff
path: root/scripts/vyatta-qos-util.pl
diff options
context:
space:
mode:
Diffstat (limited to 'scripts/vyatta-qos-util.pl')
-rwxr-xr-xscripts/vyatta-qos-util.pl44
1 files changed, 44 insertions, 0 deletions
diff --git a/scripts/vyatta-qos-util.pl b/scripts/vyatta-qos-util.pl
new file mode 100755
index 0000000..5dd869f
--- /dev/null
+++ b/scripts/vyatta-qos-util.pl
@@ -0,0 +1,44 @@
+#!/usr/bin/perl
+#
+# Utility routines for validating input
+# These functions don't change existing QoS parameters
+#
+
+use lib "/opt/vyatta/share/perl5/";
+use VyattaQosUtil;
+use Getopt::Long;
+
+GetOptions(
+ "rate=s" => \$rate,
+ "burst=s" => \$burst,
+ "protocol=s" => \$protocol,
+ "dsfield=s" => \$dsfield,
+);
+
+if ( defined $rate ) {
+ my $r = VyattaQosUtil::getRate($rate);
+ exit 0;
+}
+
+if ( defined $burst ) {
+ my $b = VyattaQosUtil::getSize($burst);
+ exit 0;
+}
+
+if ( defined $protocol ) {
+ my $p = VyattaQosUtil::getProtocol($protocol);
+ exit 0;
+}
+
+if ( defined $dsfield ) {
+ my $d = VyattaQosUtil::getDsfield($dsfield);
+ exit 0;
+}
+
+print <<EOF;
+usage: vyatta-qos-util.pl --rate rate
+ vyatta-qos-util.pl --burst size
+ vyatta-qos-util.pl --protocol protocol
+ vyatta-qos-util.pl --dsfield tos|dsfield
+EOF
+exit 1;