From: Jason Ish Date: Wed, 25 Apr 2018 20:48:16 +0000 (-0600) Subject: attempt to load defaults from a defaults module X-Git-Tag: 1.0.0rc1~9 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=4d83662c8c327aa9d700b3413f8140ad5cc7dffc;p=thirdparty%2Fsuricata-update.git attempt to load defaults from a defaults module The defaults module is installed by suricata into the and contains compile time values such as sysconfdir, and the directory where distribution provided rules are found. --- diff --git a/suricata/update/config.py b/suricata/update/config.py index fc58527..891e315 100644 --- a/suricata/update/config.py +++ b/suricata/update/config.py @@ -23,6 +23,12 @@ import yaml import suricata.update.engine from suricata.update.exceptions import ApplicationError +try: + from suricata.config import defaults + has_defaults = True +except: + has_defaults = False + logger = logging.getLogger() DEFAULT_DATA_DIRECTORY = "/var/lib/suricata" @@ -45,7 +51,10 @@ LOCAL_CONF_KEY = "local" OUTPUT_KEY = "output" DIST_RULE_DIRECTORY_KEY = "dist-rule-directory" -DEFAULT_UPDATE_YAML_PATH = "/etc/suricata/update.yaml" +if has_defaults: + DEFAULT_UPDATE_YAML_PATH = os.path.join(defaults.sysconfdir, "update.yaml") +else: + DEFAULT_UPDATE_YAML_PATH = "/etc/suricata/update.yaml" DEFAULT_SURICATA_YAML_PATH = [ "/etc/suricata/suricata.yaml", @@ -53,9 +62,15 @@ DEFAULT_SURICATA_YAML_PATH = [ "/etc/suricata/suricata-debian.yaml" ] -DEFAULT_DIST_RULE_PATH = [ - "/etc/suricata/rules", -] +if has_defaults: + DEFAULT_DIST_RULE_PATH = [ + defaults.datarulesdir, + "/etc/suricata/rules", + ] +else: + DEFAULT_DIST_RULE_PATH = [ + "/etc/suricata/rules", + ] DEFAULT_CONFIG = { "disable-conf": "/etc/suricata/disable.conf", diff --git a/suricata/update/main.py b/suricata/update/main.py index 6e27ce1..df182fd 100644 --- a/suricata/update/main.py +++ b/suricata/update/main.py @@ -980,6 +980,8 @@ def copytree_ignore_backup(src, names): def _main(): global args + default_update_yaml = config.DEFAULT_UPDATE_YAML_PATH + global_parser = argparse.ArgumentParser(add_help=False) global_parser.add_argument( "-v", "--verbose", action="store_true", default=None, @@ -992,7 +994,7 @@ def _main(): help="Data directory (default: /var/lib/suricata)") global_parser.add_argument( "-c", "--config", metavar="", - help="configuration file (default: /etc/suricata/update.yaml)") + help="configuration file (default: %s)" %(default_update_yaml)) global_parser.add_argument( "--suricata-conf", metavar="", help="configuration file (default: /etc/suricata/suricata.yaml)")