summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorNicolas Fort <nicolasfort1988@gmail.com>2023-07-31 16:51:52 +0000
committerNicolas Fort <nicolasfort1988@gmail.com>2023-07-31 16:54:05 +0000
commitbefd4045b59f6182591daa9f19702404791303ae (patch)
treecbda7b6183ba303f0bcf3b2131311f4fb2227a4a
parent1ee3801de4fbc78bbb6cbd49719c855ec33f0f31 (diff)
downloadvyos-1x-befd4045b59f6182591daa9f19702404791303ae.tar.gz
vyos-1x-befd4045b59f6182591daa9f19702404791303ae.zip
T5406: webproxy op-mode command: add vrf support for blacklist update command
-rw-r--r--op-mode-definitions/webproxy.xml.in11
-rwxr-xr-xsrc/op_mode/webproxy_update_blacklist.sh9
2 files changed, 19 insertions, 1 deletions
diff --git a/op-mode-definitions/webproxy.xml.in b/op-mode-definitions/webproxy.xml.in
index 4e555c3d9..57df44ff8 100644
--- a/op-mode-definitions/webproxy.xml.in
+++ b/op-mode-definitions/webproxy.xml.in
@@ -87,6 +87,17 @@
<help>Update the webproxy blacklist database</help>
</properties>
<command>sudo ${vyos_op_scripts_dir}/webproxy_update_blacklist.sh --update-blacklist</command>
+ <children>
+ <tagNode name="vrf">
+ <properties>
+ <help>Update webproxy blacklist database via specified VRF</help>
+ <completionHelp>
+ <path>vrf name</path>
+ </completionHelp>
+ </properties>
+ <command>sudo ${vyos_op_scripts_dir}/webproxy_update_blacklist.sh --update-blacklist --vrf "${5}" </command>
+ </tagNode>
+ </children>
</node>
</children>
</node>
diff --git a/src/op_mode/webproxy_update_blacklist.sh b/src/op_mode/webproxy_update_blacklist.sh
index 4fb9a54c6..05ea86f9e 100755
--- a/src/op_mode/webproxy_update_blacklist.sh
+++ b/src/op_mode/webproxy_update_blacklist.sh
@@ -45,6 +45,9 @@ do
--auto-update-blacklist)
auto="yes"
;;
+ --vrf)
+ vrf="yes"
+ ;;
(-*) echo "$0: error - unrecognized option $1" 1>&2; exit 1;;
(*) break;;
esac
@@ -76,7 +79,11 @@ fi
if [[ -n $update ]] && [[ $update -eq "yes" ]]; then
tmp_blacklists='/tmp/blacklists.gz'
- curl -o $tmp_blacklists $blacklist_url
+ if [[ -n $vrf ]] && [[ $vrf -eq "yes" ]]; then
+ sudo ip vrf exec $1 curl -o $tmp_blacklists $blacklist_url
+ else
+ curl -o $tmp_blacklists $blacklist_url
+ fi
if [ $? -ne 0 ]; then
echo "Unable to download [$blacklist_url]!"
exit 1