Commit Graph

25 Commits

Author SHA1 Message Date
Baptiste Jonglez 56878ac500 babeld: Update example configuration file
More example filters are provided, and new options such as "type" or
"pref_src" are given as example.

Signed-off-by: Baptiste Jonglez <git@bitsofnetworks.org>
2019-08-26 20:54:56 +02:00
Baptiste Jonglez e0b319cb9f babeld: Don't kill -9 on stop
Killing anything with -9 is a bad idea.  When killed this way, babeld
won't be able to properly disassociate from its neighbours, withdraw its
announced routes or remove routes from the kernel.

This got introduced in bab933d4ca ("babeld: Update to version 1.8.3 +
fix init") with an unrelated change.  The purpose of the change is unclear
because stopping and restarting babeld worked fine without this change.

Signed-off-by: Baptiste Jonglez <git@bitsofnetworks.org>
2019-08-26 19:29:08 +02:00
Michael Adams bab933d4ca babeld: Update to version 1.8.3 + fix init
24 September 2018: babeld-1.8.3

  * Fixed a read-only two byte buffer overflow in the packet parser.
    This is a read-only overflow, and hence most probably not exploitable.
  * Fixed an issue with creating unreachable routes on recent kernels
    (4.16 and up).  Thanks to Christof Schulze.
  * Notice interface changes faster by listening to more netlink events.
    Thanks to Christof Schulze.
  * Fixed a local interface issue when an interface has no link-local
    address.  Thanks to Christof Schulze.

Also, the init script was edited to kill babeld on stop; restart works properly now, as well.

Signed-off-by: Michael Adams <unquietwiki@gmail.com>
2018-10-03 10:04:46 -07:00
Baptiste Jonglez 1aacfea7b3 babeld: Cleanup old compatibility code in initscript
It makes the init script more readable.  It has been more than two years
since babeld 1.5.1, let's hope nobody is still using the old
(undocumented) option names.

Incidentally, this commit fixes support for the "conf_dir" option,
introduced by ac643416dc ("babeld: allow changing alternative
configuration file and directory").  The default value of $OTHERCONFIGDIR
was always used, because the variable was used *before* it was (possibly)
redefined when parsing the UCI config.

Signed-off-by: Baptiste Jonglez <git@bitsofnetworks.org>
2017-01-16 00:13:15 +01:00
Baptiste Jonglez ebfb650f01 babeld: add dynamic config files to the procd watch list
This way, "/etc/init.d/babeld reload" will detect when one of these
dynamic config files has changed, and restart babeld only if that is the
case.

Dynamic config files where introduced by 82d9002689 ("babeld: add support
for dynamic config files").

Signed-off-by: Baptiste Jonglez <git@bitsofnetworks.org>
2017-01-09 17:07:40 +01:00
Baptiste Jonglez 669fe615c6 babeld: Properly quote variables
This was mostly introduced by 82d9002689 ("babeld: add support for dynamic
config files").

Signed-off-by: Baptiste Jonglez <git@bitsofnetworks.org>
2017-01-09 16:05:06 +01:00
Baptiste Jonglez fd424268ba babeld: Log to the system log instead of logging to a file
This avoids running out of flash or RAM space if babeld logs too much.
The system log is stored on RAM by default and has a controlled size.

It is still possible to tell babeld to log to a file, by using the
following in /etc/config/babeld:

    config general
        option log_file "/var/log/babeld.log"

Signed-off-by: Baptiste Jonglez <git@bitsofnetworks.org>
2017-01-09 15:43:01 +01:00
Imuli 159dc575a6 babeld: procd support
note: dependant on openwrt commit 85fabd68, adding support for null arguments.
2017-01-09 15:37:52 +01:00
Nils Schneider 234c9d97a6 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>
2015-08-16 18:54:32 +02:00
Gabriel Kerneis ac643416dc babeld: allow changing alternative configuration file and directory
Signed-off-by: Gabriel Kerneis <kerneis@google.com>
Signed-off-by: Markus Stenberg <markus.stenberg@iki.fi>
2015-05-21 11:44:19 +03:00
Steven Barth 82d9002689 babeld: add support for dynamic config files
Signed-off-by: Steven Barth <steven@midlink.org>
Signed-off-by: Markus Stenberg <markus.stenberg@iki.fi>
2015-05-21 11:44:19 +03:00
Jernej Kos 1520babe9d babeld: Added missing $IPKG_INSTROOT.
Signed-off-by: Jernej Kos <jernej@kos.mx>
2015-05-02 19:33:57 +02:00
Gabriel Kerneis c5f795cc38 babeld: tweak configuration for source-specific features
- Enable ipv6-subtrees by default.
- Add UCI options to configure source-specific filters.

Signed-off-by: Gabriel Kerneis <kerneis@google.com>
2015-04-21 10:29:58 +02:00
Casper Meijn 959f053b48 babeld: create the directory for the config file before writing to it 2014-09-08 14:50:46 +02:00
Baptiste Jonglez 5a554d27cc babeld: Specify edge cases 2014-09-03 15:12:33 +02:00
Baptiste Jonglez de3e16ba82 babeld: Backward compatibility with old config files
This allows to use the old syntax "config interface foo" for specifying an
interface.  The new syntax ("option ifname foo") takes precedence.

Also, old option names for the "general" section are translated
accordingly.  Exceptions are:

- 'hello_interval' and 'wired_hello_interval', which are now interface-specific;
- 'conf_file', since /etc/babeld.conf is now always used;

which are simply ignored.

Beware, the syntax for the 'diversity' option is not backward compatible.
2014-08-31 00:53:36 +02:00
Baptiste Jonglez 8fb7fe0a59 babeld: Update configuration file for new syntax 2014-08-31 00:49:27 +02:00
Baptiste Jonglez 9bb7b1b03b babeld: Support default interface configuration
When a "section interface" does not have a "option ifname", all its
options are used as default interface options.
2014-08-29 10:19:42 +02:00
Baptiste Jonglez 539de92a4c babeld: Take interface name from "option ifname"
Previously, we were using the name of the section as the interface name,
but this has several drawbacks:

- no "-" or other special characters are allowed in a section name,
  preventing some physical interface names to be specified this way
  (e.g. "tun-topeka" would not work)
- it is harder to support default interface options (no interface name)

This change is not backward compatible, but a later commit will fix that.
2014-08-29 10:19:42 +02:00
Baptiste Jonglez a4f5570e79 babeld: Handle ignore options 2014-08-29 10:19:41 +02:00
Baptiste Jonglez 84422673a4 babeld: Print an error when startup fails 2014-08-29 10:19:41 +02:00
Baptiste Jonglez f81d53fad2 babeld: Generate a configuration file instead of passing cmdline arguments
This is the first step toward fixing issue #33.

This still lacks some features:

- no support for "ignore" options
- no backward compatibility for option names
- no support for default interface options
2014-08-29 10:19:41 +02:00
Baptiste Jonglez 127d0dcfcf babeld: fix configuration for new options 2014-06-08 12:47:50 +09:00
Gabriel Kerneis 6c4438c93b babeld: new upstream release 1.5.0
22 May 2014: babeld-1.5.0

  * Added support for an RTT-based metric -- see the description of
    "enable-timestamps" in the manual page.  This work was done by
    Baptiste Jonglez with help from Matthieu Boutier.
2014-06-01 14:15:10 +01:00
Gabriel Kerneis c4de5a575b babeld: migrate from openwrt/packages
- Update maintainer email address
- Wait for babel to die in init script (avoid race-condition on restart)

Signed-off-by: Gabriel Kerneis <gabriel@kerneis.info>
2013-10-28 16:20:38 +00:00