diff options
author | Christian Poessinger <christian@poessinger.com> | 2022-10-07 07:34:43 +0200 |
---|---|---|
committer | GitHub <noreply@github.com> | 2022-10-07 07:34:43 +0200 |
commit | 4608001b073f10310b8753c4d7d850af3ec001fb (patch) | |
tree | 6b1f1e912830a2b334f82431e92d0360c23533ca | |
parent | 067cc12d0e6e52044df48f6f612cb4db1d4ad80c (diff) | |
parent | 23f7ef7e9e79b1f159c3e874c2237b5b804d9380 (diff) | |
download | vyos-1x-4608001b073f10310b8753c4d7d850af3ec001fb.tar.gz vyos-1x-4608001b073f10310b8753c4d7d850af3ec001fb.zip |
Merge pull request #1569 from dmbaturin/radius-rate-limit-comp
T4726: add completion help and validation for accel-ppp vendor option
-rw-r--r-- | interface-definitions/include/accel-ppp/radius-additions-rate-limit.xml.i | 12 | ||||
-rw-r--r-- | interface-definitions/vpn-l2tp.xml.in | 24 | ||||
-rwxr-xr-x | src/validators/accel-radius-dictionary | 13 |
3 files changed, 23 insertions, 26 deletions
diff --git a/interface-definitions/include/accel-ppp/radius-additions-rate-limit.xml.i b/interface-definitions/include/accel-ppp/radius-additions-rate-limit.xml.i index 738c0a634..b8dbe73b2 100644 --- a/interface-definitions/include/accel-ppp/radius-additions-rate-limit.xml.i +++ b/interface-definitions/include/accel-ppp/radius-additions-rate-limit.xml.i @@ -6,18 +6,24 @@ <children> <leafNode name="attribute"> <properties> - <help>Specifies which RADIUS attribute contains rate information</help> + <help>RADIUS attribute that contains rate information</help> </properties> <defaultValue>Filter-Id</defaultValue> </leafNode> <leafNode name="vendor"> <properties> - <help>Specifies the vendor dictionary. (dictionary needs to be in /usr/share/accel-ppp/radius)</help> + <help>Vendor dictionary</help> + <completionHelp> + <list>alcatel cisco microsoft mikrotik</list> + </completionHelp> + <constraint> + <validator name="accel-radius-dictionary" /> + </constraint> </properties> </leafNode> <leafNode name="enable"> <properties> - <help>Enables Bandwidth shaping via RADIUS</help> + <help>Enable bandwidth shaping via RADIUS</help> <valueless /> </properties> </leafNode> diff --git a/interface-definitions/vpn-l2tp.xml.in b/interface-definitions/vpn-l2tp.xml.in index fd70a76dc..cb5900e0d 100644 --- a/interface-definitions/vpn-l2tp.xml.in +++ b/interface-definitions/vpn-l2tp.xml.in @@ -238,29 +238,7 @@ </leafNode> </children> </node> - <node name="rate-limit"> - <properties> - <help>Upload/Download speed limits</help> - </properties> - <children> - <leafNode name="attribute"> - <properties> - <help>Specifies which radius attribute contains rate information</help> - </properties> - </leafNode> - <leafNode name="vendor"> - <properties> - <help>Specifies the vendor dictionary. (dictionary needs to be in /usr/share/accel-ppp/radius)</help> - </properties> - </leafNode> - <leafNode name="enable"> - <properties> - <help>Enables Bandwidth shaping via RADIUS</help> - <valueless /> - </properties> - </leafNode> - </children> - </node> + #include <include/accel-ppp/radius-additions-rate-limit.xml.i> </children> </node> </children> diff --git a/src/validators/accel-radius-dictionary b/src/validators/accel-radius-dictionary new file mode 100755 index 000000000..05287e770 --- /dev/null +++ b/src/validators/accel-radius-dictionary @@ -0,0 +1,13 @@ +#!/bin/sh + +DICT_PATH=/usr/share/accel-ppp/radius +NAME=$1 + +if [ -n "$NAME" -a -e $DICT_PATH/dictionary.$NAME ]; then + exit 0 +else + echo "$NAME is not a valid RADIUS dictionary name" + echo "Please make sure that $DICT_PATH/dictionary.$NAME file exists" + exit 1 +fi + |