Skip to content
Snippets Groups Projects
Commit 1e3c9d5b authored by Klas Arvidsson's avatar Klas Arvidsson
Browse files

Better failure handling in squid rewrite script.

parent 054bf084
No related branches found
No related tags found
1 merge request!62Devel
Pipeline #154002 passed
...@@ -84,26 +84,35 @@ def main(): ...@@ -84,26 +84,35 @@ def main():
ruleset.append( [re.compile(errorrex), True] ) ruleset.append( [re.compile(errorrex), True] )
ruleset.append( [re.compile("^.*"), False] ) ruleset.append( [re.compile("^.*"), False] )
devel_rules = basedir + "/../devel.rules" # Load all rules to a temporary ruleset and then add it to the rules
if os.path.isfile(devel_rules): # Failure to load rules will then lead to complete denial of service and be noticed
load_rules(ruleset, devel_rules) tmpruleset = list()
try:
# load opendsa first to let it override default rules devel_rules = basedir + "/../devel.rules"
load_rules(ruleset, basedir + "/rules.d/opendsa.rules") if os.path.isfile(devel_rules):
load_rules(ruleset, basedir + "/rules.d/default.rules") load_rules(tmpruleset, devel_rules)
load_rules(ruleset, basedir + "/rules.d/rstudio.rules")
load_rules(ruleset, basedir + "/rules.d/cplusplus.rules") # load opendsa first to let it override default rules
load_rules(ruleset, basedir + "/rules.d/python.rules") load_rules(tmpruleset, basedir + "/rules.d/opendsa.rules")
load_rules(ruleset, basedir + "/rules.d/java.rules") load_rules(tmpruleset, basedir + "/rules.d/default.rules")
load_rules(ruleset, basedir + "/rules.d/ruby.rules") load_rules(tmpruleset, basedir + "/rules.d/rstudio.rules")
load_rules(ruleset, basedir + "/rules.d/sas.rules") load_rules(tmpruleset, basedir + "/rules.d/cplusplus.rules")
load_rules(ruleset, basedir + "/rules.d/translate.rules") load_rules(tmpruleset, basedir + "/rules.d/python.rules")
load_rules(ruleset, basedir + "/rules.d/office.forms.rules") load_rules(tmpruleset, basedir + "/rules.d/java.rules")
load_rules(tmpruleset, basedir + "/rules.d/ruby.rules")
load_rules(tmpruleset, basedir + "/rules.d/sas.rules")
load_rules(tmpruleset, basedir + "/rules.d/translate.rules")
load_rules(tmpruleset, basedir + "/rules.d/office.forms.rules")
ruleset.extend(tmpruleset)
except Exception as e:
sys.stderr.write( str( e ) )
sys.stderr.flush()
with open(filterlog, 'a') as log: with open(filterlog, 'a') as log:
try: while True:
while True: try:
line = sys.stdin.readline().strip() line = sys.stdin.readline().strip()
log.write('{}: {}\n'.format(datetime.datetime.now().strftime("%Y-%m-%d_%H-%M"), line)) log.write('{}: {}\n'.format(datetime.datetime.now().strftime("%Y-%m-%d_%H-%M"), line))
...@@ -119,8 +128,8 @@ def main(): ...@@ -119,8 +128,8 @@ def main():
sys.stdout.write(new_url + '\n') sys.stdout.write(new_url + '\n')
sys.stdout.flush() sys.stdout.flush()
except Exception as e: except Exception as e:
sys.stderr.write( e ) sys.stderr.write( str( e ) )
sys.stderr.flush() sys.stderr.flush()
main() main()
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment