Commit Graph

57 Commits

Author SHA1 Message Date
Sven Eckelmann 369908cb0a alfred: Start up alfred without valid interfaces
The alfred server always needs interfaces to operate on. But these
interfaces might not exist at the moment when the daemon process is
started. This situation stopped the startup process after the init scripts
waited for a longer period of polling the system state.

But alfred is able to deal with interfaces which disappeared at runtime but
existed at startup. To force a similar behavior for the alfred startup, the
parameter "--force" or "-f" is used. The extra polling code is therefore no
longer needed in the init scripts.

Signed-off-by: Sven Eckelmann <sven@narfation.org>
2021-02-15 21:33:27 +01:00
Sven Eckelmann 97e7600955 alfred: Fix procd process handling for disable state
Alfred can be stopped during a (re)start or reload when:

* disabled = 1
* batman-adv interface is missing
* MAC based EUI64 IPv6 link-local address not set

It is assumed that procd detects that the procd instance definition
disappeared and the currently running instance must be stopped. But all
these checks were triggering an "exit" which then stopped the alfred init
script and the wrapper from /lib/functions/procd.sh. And thus procd was
never informed about the instances which should be changed.

The correct handling is to return the result of the function instead of
directly killing the init scripts.

Fixes: 45db0e60d2 ("alfred: use procd")
Signed-off-by: Sven Eckelmann <sven@narfation.org>
2021-02-15 21:28:09 +01:00
Sven Eckelmann a93e68447a alfred: Merge bugfixes from 2019.3
* vis: Use rtnl to query list of hardifs of meshif
* vis: Retrieve hardif status via generic netlink

Signed-off-by: Sven Eckelmann <sven@narfation.org>
2019-08-01 19:47:11 +02:00
Sven Eckelmann 7accd688e3 alfred: upgrade package to latest release 2019.2
* synchronization of batman-adv netlink header

Signed-off-by: Sven Eckelmann <sven@narfation.org>
2019-05-23 20:11:42 +02:00
Sven Eckelmann 9e8aaf9911 alfred: upgrade package to latest release 2019.1
* synchronization of batman-adv netlink header

Signed-off-by: Sven Eckelmann <sven@narfation.org>
2019-03-28 19:40:20 +01:00
Sven Eckelmann 0ba9fa2ba7 alfred: upgrade package to latest release 2019.0
* (no changes)

Signed-off-by: Sven Eckelmann <sven@narfation.org>
2019-02-02 14:04:09 +01:00
Sven Eckelmann 3528a5df09 alfred: upgrade package to latest release 2018.4
* bugs squashed:

  - fixed detection of own IPv4 packets
  - use manual IPv4 ARP requests to retrieve MAC of neighbors

Signed-off-by: Sven Eckelmann <sven@narfation.org>
2018-11-14 21:50:38 +01:00
Sven Eckelmann 3736630676 alfred: Add openwrt revision to internal version
OpenWrt is using a modified version of the software and these modifications
may introduce extra bugs (or behavior changes). It is also patched for
stable releases instead of switching to new releases. The revision should
therefore be added to the version number to make it easier understandable
which modified version the user may have installed.

Signed-off-by: Sven Eckelmann <sven@narfation.org>
2018-10-07 13:31:32 +02:00
Sven Eckelmann 99430a87e3 alfred: upgrade package to latest release 2018.3
Signed-off-by: Sven Eckelmann <sven@narfation.org>
2018-09-15 10:19:39 +02:00
Adrian Schmutzler 52e2545198 alfred: Fix alfred.init
The commit 45db0e6 introduced curly brackets which are not correct
syntax and thus broke the script.

Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
2018-07-21 16:00:20 +02:00
Paul Spooren 45db0e60d2 alfred: use procd
Signed-off-by: Paul Spooren <mail@aparcar.org>
2018-07-20 18:23:10 +09:00
Moritz Warning 3349cae243
Merge pull request #367 from ecsv/batadv-2018.1
batman-adv 2018.1
2018-05-02 16:50:57 +02:00
Sven Eckelmann a0eca40b00 alfred: upgrade package to latest release 2018.1
* synchronization of batman-adv netlink header

Signed-off-by: Sven Eckelmann <sven@narfation.org>
2018-04-25 21:17:08 +02:00
Adrian Schmutzler 135bc605b4 alfred: Support interface IDs with more than two digits
Occationally /proc/net/if_inet6 contains interface IDs with
three digits. In this case, the regex in wait_for_ll_address()
does not work anymore and alfred is not starting.

This patch changes the evaluation so that fields are used instead
of the mere position by counting characters.

Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
2018-04-09 12:11:12 +02:00
Sven Eckelmann 536782119f alfred: upgrade package to latest release 2018.0
* synchronization of batman-adv netlink and packet headers
* mark licenses clearer, change batman-adv UAPI header from ISC to MIT
* coding style cleanups and refactoring

Signed-off-by: Sven Eckelmann <sven@narfation.org>
2018-02-27 14:00:29 +01:00
Sven Eckelmann 3eb8bf4c2b alfred: upgrade package to latest release 2017.4
* synchronization of batman-adv netlink header
* coding style cleanups and refactoring
* documentation cleanup
* bugs squashed:

  - only query debugfs when netlink failed
  - handle allocation errors in hashtable iterator

Signed-off-by: Sven Eckelmann <sven@narfation.org>
2017-12-05 19:20:24 +01:00
Sven Eckelmann 8d12cf5ae4 alfred: upgrade package to latest release 2017.3
* reduction of memory usage when using --update-command

Signed-off-by: Sven Eckelmann <sven@narfation.org>
2017-09-28 18:42:28 +02:00
Sven Eckelmann b5cd68b71b alfred: Remove incorrect comment about git revision
Signed-off-by: Sven Eckelmann <sven@narfation.org>
2017-07-29 09:28:01 +02:00
Sven Eckelmann aa6a958810 alfred: upgrade package to latest release 2017.2
* reduce cpu load when rating multiple master servers
 * coding style cleanups and refactoring

Signed-off-by: Sven Eckelmann <sven@narfation.org>
2017-07-29 09:26:40 +02:00
Sven Eckelmann ed2d6ae959 alfred: upgrade package to latest release 2017.1
Signed-off-by: Sven Eckelmann <sven@narfation.org>
2017-05-25 17:05:41 +02:00
Gui Iribarren 7b851e5f19 alfred: bat-hosts.lua: 'alfred -r' can fail with no output, so retry 3 times
Signed-off-by: Gui Iribarren <gui@altermundi.net>
2017-03-28 16:41:13 -03:00
Sven Eckelmann bc114d5acb alfred: upgrade package to latest release 2017.0
* support IPv4 multicast distribution
 * coding style cleanups

Signed-off-by: Sven Eckelmann <sven@narfation.org>
2017-02-28 19:35:09 +01:00
Sven Eckelmann c1c1e134d6 alfred: Add sha256 PKG_HASH for LEDE
Signed-off-by: Sven Eckelmann <sven.eckelmann@open-mesh.com>
2017-01-30 15:02:53 +01:00
Sven Eckelmann e18c440d8b alfred: upgrade package to latest release 2016.5
* support interface validity checks on systems without debugfs
 * remove debugfs check during batadv-vis startup
 * allow out-of-order txend packets during transmissions

Signed-off-by: Sven Eckelmann <sven@narfation.org>
2016-12-16 10:31:14 +01:00
Sven Eckelmann 8e27d38c71 alfred: upgrade package to latest release 2016.4
Signed-off-by: Sven Eckelmann <sven@narfation.org>
2016-10-28 18:03:42 +02:00
Sven Eckelmann 674adedb8f alfred: upgrade package to latest release 2016.3
Signed-off-by: Sven Eckelmann <sven@narfation.org>
2016-09-30 10:04:48 +02:00
Markus Stenberg 500c4dc8e0 Merge pull request #191 from lynxis/for-upstream
replace kmod-ipv6 @IPV6
2016-06-28 00:25:51 +03:00
Sven Eckelmann 1baec91201 alfred: upgrade package to latest release 2016.2
Signed-off-by: Sven Eckelmann <sven@narfation.org>
2016-06-09 19:14:57 +02:00
Alexander Couzens e17f103c4d use @IPV6 instead of +kmod-ipv6
kmod-ipv6 is obsolete.
The symbol IPV6 is a global config symbol, don't select it because it
will override the user decision of IPV6 as all other package in base do
it. A select (+) will also create a recursive dependency error.

Signed-off-by: Alexander Couzens <lynxis@fe80.eu>
2016-06-05 02:44:32 +02:00
Simon Wunderlich 8aae02a7b1 alfred: bump version to 2016.1
From the CHANGELOG:

 * add support for master servers to receive push_data packets with
   foreign source addresses
 * various code cleanups
 * bugs squashed:
   - ignore invalid EUI64 addresses

Signed-off-by: Simon Wunderlich <sw@simonwunderlich.de>
2016-04-21 14:24:18 +02:00
Simon Wunderlich ef2f816bf7 Merge pull request #145 from ecsv/alfred_2016.0
Alfred 2016.0
2016-03-25 20:32:24 +01:00
Bastian Bittorf 4f8207064a Merge pull request #126 from NeoRaider/master
alfred: not only wait for the interface, but also a link-local address
2016-01-19 20:26:16 +01:00
Sven Eckelmann 20d0da8538 alfred: Switch to HTTPS version of links
open-mesh.org and its subdomains can only be accessed via HTTPS. HTTP-only
requests are currently redirected automatically to HTTPS but references
to it should be only https.

Signed-off-by: Sven Eckelmann <sven@narfation.org>
2016-01-19 19:23:14 +01:00
Sven Eckelmann 4be7520e9e alfred: upgrade package to latest release 2016.0
Signed-off-by: Sven Eckelmann <sven@open-mesh.com>
2016-01-19 19:22:38 +01:00
Simon Wunderlich e25839ae48 alfred: bump version to 2015.2
From the CHANGELOG:

 * mention libcap in the README
 * Fix typos

Signed-off-by: Simon Wunderlich <sw@simonwunderlich.de>
2015-12-16 18:51:05 +01:00
Markus Stenberg 5cd413d16a Revert "kmod-ipv6 => @IPV6."
This reverts commit bcaa87776f.

Caused circular dependencies; reverted for now. (kmod-ipv6 explicit
dependencies _should_ be eliminated though, but this is clearly not
the way.)
2015-12-12 00:25:10 +02:00
Markus Stenberg bcaa87776f kmod-ipv6 => @IPV6. 2015-12-11 14:05:14 +02:00
Matthias Schiffer c40c8024ee alfred: not only wait for the interface, but also a link-local address
Changes between alfred 2015.0 and 2015.1 cause alfred to print an error
and exit when the interface to bind to is not completely set up (has no
non-tentative link-local address). As a workaround, wait for such an
address by reading /proc/net/if_inet6 before alfred is started.

In the long term, it would be nice to make alfred more robust against
missing interfaces (allowing alfred to start without the interface
existing, and keeping it working even when the interface is removed and
re-added while alfred is running).

Signed-off-by: Matthias Schiffer <mschiffer@universe-factory.net>
2015-08-09 18:15:27 +02:00
Simon Wunderlich ad556e8759 alfred: bump version to 2015.1
From the CHANGELOG:

 * add support to run on interfaces with multiple link-local addresses
 * various code cleanups
 * bugs squashed:
   - reduce of maximum payload size to always fit into UDP datagrams

Signed-off-by: Simon Wunderlich <sw@simonwunderlich.de>
2015-08-04 17:58:38 +02:00
Moritz Warning a251e8fb2a alfred: fix whitespaces 2015-05-31 10:39:59 +02:00
Moritz Warning 62275acf21 alfred: wait for batmanif and interface, ignore batmanif if it is set to 'none' 2015-05-31 02:52:25 +02:00
Simon Wunderlich 98f8393d29 alfred: disable new alfred capability dropping by default
Signed-off-by: Simon Wunderlich <sw@simonwunderlich.de>
2015-05-05 12:31:59 +02:00
Simon Wunderlich 038e3677f8 alfred: bump version to 2015.0
From the CHANGELOG:

 * add support to call commands after data was updated
 * automatic reduction of process capabilities when not needed anymore
 * allow printing of the data version number in the alfred client mode
 * various code cleanups
 * bugs squashed:
   - update of the version number when data was updated with different
     version number
   - tighten size check on received packet

Signed-off-by: Simon Wunderlich <sw@simonwunderlich.de>
2015-05-05 12:25:42 +02:00
Sven Eckelmann 9e25fa70ff alfred: Fix dependency to IPv6
alfred always requires IPv6 support in the kernel and not only when
"Enable IPv6 support in packages" is enabled.

Signed-off-by: Sven Eckelmann <sven@open-mesh.com>
Signed-off-by: Simon Wunderlich <sw@simonwunderlich.de>
2015-05-05 12:24:40 +02:00
Simon Wunderlich dd3e3dd881 alfred: bump version to 2014.4.0
From the CHANGELOG:

 * add support for multiple interfaces per master
 * add support for changing interfaces on the fly
 * changes to support multiple alfred interfaces:
   - bind alfred to a specific interface
   - allow configuring the unix socket path
 * enhanced debugging

Signed-off-by: Simon Wunderlich <sw@simonwunderlich.de>
2015-01-08 20:52:42 +01:00
Steven Barth 69f203d5c3 Add SPDX license tags
Signed-off-by: Steven Barth <steven@midlink.org>
2014-11-03 13:17:00 +01:00
André Gaul dc9b995c1e [alfred] fix missing alfred-gpsd binary
fixes #22

Signed-off-by: Simon Wunderlich <sw@simonwunderlich.de>
2014-09-11 12:22:54 +02:00
Simon Wunderlich 0af5c75f79 alfred: bump version to 2014.3.0
From the CHANGELOG:

 * fix various possible memleak, access errors and strncpy issues
 * handle fcntl return codes
 * fix altitude verification check in gpsd

Signed-off-by: Simon Wunderlich <sw@simonwunderlich.de>
2014-07-24 12:58:36 +02:00
Simon Wunderlich 11f9f01d35 alfred: bump version to 2014.2.0
From the CHANGELOG:

 * Handle EPERM errors on every sendto
 * Check for changed interface properties, e.g. recreation or
   changed MAC- and IPv6 addresses

Signed-off-by: Simon Wunderlich <sw@simonwunderlich.de>
2014-05-28 12:52:07 +02:00
Simon Wunderlich 68edf28cf3 alfred: bump version to 2014.1.0
bump alfred to version 2014.1.0. From the CHANGELOG:

 * don't leak socket fd in batadv-vis

Signed-off-by: Simon Wunderlich <sw@simonwunderlich.de>
2014-03-22 19:25:14 +01:00