For some reason the buffer is initialized twice before filling it.
This does not break anything but is useless. Reduce the initialization
to only one.
Signed-off-by: Nick Hainke <vincent@systemli.org>
As Felix mentioned:
If a buffer was already allocated, blob_buf_init reuses it. You can
keep reusing it as many times as you want. You only need to call
blob_buf_free if you explicitly want to free the buffer memory
(e.g. on exit, or if the blob_buf is on stack).
http://lists.openwrt.org/pipermail/openwrt-devel/2021-October/036722.html
This PR frees the blob-buffers that are on the stack.
Signed-off-by: Nick Hainke <vincent@systemli.org>
25 April 2021: babeld-1.10
* Removed the disambiguation code: source-specific routing is no longer
supported for IPv4, and for IPv6 only on Linux 3.11 or later.
* Fixed an issue handling of retractions with no next hop, which caused
interoperability problems with BIRD. Thanks to Fabian Bläse.
* If skip-kernel-setup is set, we no longer disable the rp_filter, which
makes babeld work in containers. Thanks to Martin Weinelt.
Remove upstreamed part of ubus patch:
- local: make local_kind function accessible
Signed-off-by: Nick Hainke <vincent@systemli.org>
babeld: adopt to upstream header-style
Instead of including the headerfiles that define the structs, we add
forward definitions to our headerfile.
Fixes warning:
ubus.h:67:32: warning: 'struct xroute' declared inside parameter list will not be visible outside of this definition or declaration
void ubus_notify_xroute(struct xroute *xroute, int kind);
^~~~~~
Signed-off-by: Nick Hainke <vincent@systemli.org>
babeld: fix compiler warnings
Fixes:
- "route_list_entry" points to "struct babel_route"
- "format_thousands" returns a string pointer
- "UBUS_METHOD_NOARG" wants a function returning an integer
Signed-off-by: Nick Hainke <vincent@systemli.org>
* babeld: send events via ubus
Send a notification via the ubus bus if we experience any changes in
neighbours, routes or xroutes.
The format looks like this:
{route,xroute,neighbour}.add: Object was added
{route,xroute,neighbour}.change: Object was changed
{route,xroute,neighbour}.flush: Object was flushed
If ubus_bindings is turned off, it will minimally effect performance,
since only an if-statement has to be evaluated.
If no subscriber is available, it will minimally change the performance,
since only an if-statmenet that checks for subscribers has to be
evaluated.
Signed-off-by: Nick Hainke <vincent@systemli.org>