From 12ce8b309d2535ba7277da4561bdd80bb89185be Mon Sep 17 00:00:00 2001 From: Peri Diane Jones Date: Sat, 11 Aug 2018 22:28:13 +0000 Subject: T772 allow stow-away arguments in the script name field https://phabricator.vyos.net/T772 --- src/system/vrrp-script-wrapper.py | 2 +- src/validators/script | 4 +++- 2 files changed, 4 insertions(+), 2 deletions(-) diff --git a/src/system/vrrp-script-wrapper.py b/src/system/vrrp-script-wrapper.py index 5d6aa6c55..ce9142b7d 100755 --- a/src/system/vrrp-script-wrapper.py +++ b/src/system/vrrp-script-wrapper.py @@ -58,7 +58,7 @@ if (old_state is None) or (old_state != args.state): syslog.syslog(syslog.LOG_NOTICE, 'Running transition script {0} for VRRP group {1}'.format(args.script, args.group)) try: - ret = subprocess.call([args.script, args.state, args.interface, args.group]) + ret = subprocess.call("%s %s %s %s" % ( args.script, args.state, args.interface, args.group), shell=True) if ret != 0: syslog.syslog(syslog.LOG_ERR, "Transition script {0} failed, exit status: {1}".format(args.script, ret)) exitcode = ret diff --git a/src/validators/script b/src/validators/script index beeba57ae..689296a73 100755 --- a/src/validators/script +++ b/src/validators/script @@ -20,6 +20,7 @@ import re import os import sys +import shlex import vyos.util @@ -28,7 +29,8 @@ if len(sys.argv) < 2: print("Please specify script file to check") sys.exit(1) -script = sys.argv[1] +#if the "script" is a script+ stowaway arugments, this removes the aguements +script = shlex.split(sys.argv[1])[0] if not os.path.exists(script): print("File {0} does not exist".format(script)) -- cgit v1.2.3