From: Jason Ish Date: Tue, 12 Dec 2017 20:45:27 +0000 (-0600) Subject: look in config file for "suricata" option X-Git-Tag: 1.0.0b1~9 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=0cb42a2720695386882cada9ba294e31e82cd03c;p=thirdparty%2Fsuricata-update.git look in config file for "suricata" option Previously the suricata binary could only be changed from the command line. Now it can be set in the config file. --- diff --git a/suricata/update/engine.py b/suricata/update/engine.py index 5388045..87694e3 100644 --- a/suricata/update/engine.py +++ b/suricata/update/engine.py @@ -84,9 +84,9 @@ def get_path(program="suricata"): if not path: continue suricata_path = os.path.join(path, program) - logger.debug("Testing path: %s" % (path)) + logger.debug("Looking for %s in %s" % (program, path)) if os.path.exists(suricata_path): - logger.debug("Found %s." % (path)) + logger.debug("Found %s." % (suricata_path)) return suricata_path return None @@ -106,14 +106,12 @@ def parse_version(buf): raw=buf) return None -def get_version(path=None): +def get_version(path): """Get a SuricataVersion named tuple describing the version. If no path argument is found, the envionment PATH will be searched. """ - if not path: - path = get_path("suricata") if not path: return None output = subprocess.check_output([path, "-V"]) diff --git a/suricata/update/main.py b/suricata/update/main.py index bddd152..d66726d 100644 --- a/suricata/update/main.py +++ b/suricata/update/main.py @@ -924,8 +924,6 @@ def copytree_ignore_backup(src, names): def _main(): global args - suricata_path = suricata.update.engine.get_path() - global_parser = argparse.ArgumentParser(add_help=False) global_parser.add_argument( "-v", "--verbose", action="store_true", default=None, @@ -1093,12 +1091,12 @@ def _main(): version, revision, sys.version.replace("\n", "- "))) # Check for Suricata binary... - if args.suricata: - if not os.path.exists(args.suricata): + if config.get("suricata"): + if not os.path.exists(config.get("suricata")): logger.error("Specified path to suricata does not exist: %s", - args.suricata) + config.get("suricata")) return 1 - suricata_path = args.suricata + suricata_path = config.get("suricata") else: suricata_path = suricata.update.engine.get_path() if not suricata_path: @@ -1116,7 +1114,7 @@ def _main(): return 1 logger.info("Forcing Suricata version to %s." % (suricata_version.full)) elif suricata_path: - suricata_version = suricata.update.engine.get_version(args.suricata) + suricata_version = suricata.update.engine.get_version(suricata_path) if suricata_version: logger.info("Found Suricata version %s at %s." % ( str(suricata_version.full), suricata_path))