Welcome to mirror list, hosted at ThFree Co, Russian Federation.

github.com/openwrt/routing.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
path: root/babeld
diff options
context:
space:
mode:
authorNils Schneider <nils@nilsschneider.net>2015-08-16 19:50:02 +0300
committerNils Schneider <nils@nilsschneider.net>2015-08-16 19:54:32 +0300
commit234c9d97a6f912825477cc266c40ed84fc5bdf09 (patch)
tree44d894bda097ce69e30be8c82c0592158af08f85 /babeld
parentde2eacac7faf3aeac7b5be84a9ff7712faffeb29 (diff)
babeld: fix parsing of list import_table
When parsing list options using config_load option_cb will be called with additional options ending in _ITEM$x and _LENGTH. This ignores any option containing _LENGTH or _ITEM as they can't possible be a valid babeld option making a config like config general list import_table 23 list import_table 42 work. Signed-off-by: Nils Schneider <nils@nilsschneider.net>
Diffstat (limited to 'babeld')
-rw-r--r--babeld/files/babeld.config2
-rwxr-xr-xbabeld/files/babeld.init3
2 files changed, 3 insertions, 2 deletions
diff --git a/babeld/files/babeld.config b/babeld/files/babeld.config
index cb2a131..0073f73 100644
--- a/babeld/files/babeld.config
+++ b/babeld/files/babeld.config
@@ -16,8 +16,6 @@ config general
## Enable ipv6-subtrees by default since OpenWrt should ship with a
## recent enough kernel for it to work.
option 'ipv6_subtrees' 'true'
- ## This seems somewhat buggy on BB. If you need only one
- ## import-table statement, "option import_table 42" should work.
# list 'import_table' '42'
# list 'import_table' '100'
## Alternative configuration file and directory.
diff --git a/babeld/files/babeld.init b/babeld/files/babeld.init
index 6796a34..21ae4be 100755
--- a/babeld/files/babeld.init
+++ b/babeld/files/babeld.init
@@ -166,6 +166,9 @@ babel_config_cb() {
local value="$2"
# Ignore old options
list_contains ignored_options "$option" && return
+ # Skip lists. They will be taken care of by list_cb
+ test "${option#*_ITEM}" != "$option" && return
+ test "${option#*_LENGTH}" != "$option" && return
cfg_append "${option//_/-} $value"
}
;;