babeld: add support for dynamic config files
authorSteven Barth <steven@midlink.org>
Thu, 21 May 2015 06:22:37 +0000 (08:22 +0200)
committerMarkus Stenberg <markus.stenberg@iki.fi>
Thu, 21 May 2015 08:44:19 +0000 (11:44 +0300)
Signed-off-by: Steven Barth <steven@midlink.org>
Signed-off-by: Markus Stenberg <markus.stenberg@iki.fi>
babeld/files/babeld.init

index 585fc76e380dab22f4ad032b237f6eedf7401d2f..797ba2fafbe052a5a9459cd100dcebfff1280b09 100755 (executable)
@@ -7,6 +7,7 @@ START=70
 pidfile='/var/run/babeld.pid'
 CONFIGFILE='/var/etc/babeld.conf'
 OTHERCONFIGFILE="/etc/babeld.conf"
+OTHERCONFIGDIR="/tmp/babeld.d/"
 EXTRA_COMMANDS="status"
 EXTRA_HELP="        status Dump Babel's table to the log file."
 
@@ -204,8 +205,14 @@ babel_config_cb() {
 start() {
        mkdir -p /var/lib
        mkdir -p /var/etc
+       mkdir -p $OTHERCONFIGDIR
+
        # Start by emptying the generated config file
        >"$CONFIGFILE"
+       # Import dynamic config files
+       for f in $OTHERCONFIGDIR/*.conf; do
+               [ -f "$f" ] && cat $f >> $CONFIGFILE
+       done
        # First load the whole config file, without callbacks, so that we are
        # aware of all "ignore" options in the second pass.
        config_load babeld