Commit graph

1427 commits

Author SHA1 Message Date
Adrian Schmutzler
774b7c60d7 babeld: Update to version 1.9.1
20 August 2019: babeld-1.9.1

  * Fixed a crash that could happen when unicast and RTT estimation are
    both enabled on an interface.  Thanks to Dave Taht.
  * Fixed compilation under BSD.  Thanks to Dave Taht.

4 August 2019: babeld-1.9.0

  * Reworked buffering of unicast packets to use a per-neighbour buffer
    rather than a single buffer per interface.  This makes unicast as
    efficient as multicast, at the cost of slightly higher memory usage.
  * Added option "unicast" that allows sending most TLVs over unicast.
    This is necessary for the DTLS extension.
  * Implemented parsing of unicast Hellos.  This makes it possible to
    interoperate with neighbours that only speak unicast (e.g. over some
    kinds of tunnels that only do unicast).
  * Implemented sending of unscheduled unicast Hellos.  This makes the
    RTT extension work over unicast too.
  * Reworked the xroute data structures to use binary search and
    linear-time comparison.
  * Don't attempt to modify the rp_filter sysctl if it already has the
    desired value; this makes it possible to run babeld in an
    unpriviledged container.  Thanks to Christof Schulze.
  * Reinstated logging of late hellos.  Thanks to Dave Taht.
  * Don't send wildcard requests or Hellos to newish nodes.  This makes
    acquisition of new neighbours slower, but drastically reduces noise at
    startup.  Thanks to Teco Boot.
  * Remove an arbitrary limit on the number of interfaces.  Thanks to
    Christof Schulze.
  * Removed class E from martian filter.  Thanks to Dave Taht.
  * Added the ability to set the preferred source address in install filters.
    Thanks to Killian Lufau.
  * Fixed a number of read-only buffer overflows.  Thanks to Leo Stefanesco.

Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
2019-08-26 19:31:50 +02:00
Adrian Schmutzler
953cd03492 babeld: Improve Makefile formatting
This applies some style improvements to make this ready for
migration to openwrt/packages.

Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
2019-08-26 19:31:46 +02:00
Adrian Schmutzler
e0787e950d babeld: Update to version 1.8.5
Changes:

  * Fixed a bug that caused confustion between learned routes and
    imported routes (thanks to Fabian Bläse).
  * Fixed a bug that prevented install filters from being evaluated
    (thanks to Killian Lufau).

Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
2019-08-26 19:31:43 +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
Simon Wunderlich
66c20292c6
Merge pull request #498 from ecsv/batadv-for-19.07
batman-adv: Readd Linux 4.19.x compat patches
2019-08-04 13:33:29 +02:00
Sven Eckelmann
b04d24313d batman-adv: Readd Linux 4.19.x compat patches
The patches were accidentally deleted while testing the batman-adv 2019.3
bugfixes with various OpenWrt versions. But OpenWrt 19.07 will be released
with a mac80211 package which still uses the Linux 4.19 API. And thus the
OpenWrt 19.07 openwrt-routing branch still has to retain these compat
patches.

Fixes: a93e68447a ("alfred: Merge bugfixes from 2019.3")
Signed-off-by: Sven Eckelmann <sven@narfation.org>
2019-08-04 08:16:01 +02:00
Simon Wunderlich
784ae0e42d
Merge pull request #496 from ecsv/batadv-for-19.07
openwrt-19.07: batman-adv: Merge bugfixes from 2019.3
2019-08-02 09:53:13 +02:00
Sven Eckelmann
9d559fdae9 batman-adv: Merge bugfixes from 2019.3
* Fix netlink dumping of all mcast_flags buckets

Signed-off-by: Sven Eckelmann <sven@narfation.org>
2019-08-01 19:47:11 +02:00
Sven Eckelmann
d65d6f1ea3 batctl: Merge bugfixes from 2019.3
* Prefer netlink hardif status retrieval over sysfs

Signed-off-by: Sven Eckelmann <sven@narfation.org>
2019-08-01 19:47:11 +02:00
Sven Eckelmann
6ea9e9b093 batctl: Upgrade hardif settings patches to upstream version
The hardif patches were added to OpenWrt before they were accepted in the
upstream repository. This seemed necessary at that time because OpenWrt
19.07 was alreadu branched of (to be released soon).

But the upstream merged patches contain more cleanups. Having the actual
upstream version in OpenWrt make it easier to integrate potential bugfixes.

Signed-off-by: Sven Eckelmann <sven@narfation.org>
2019-08-01 19:47:11 +02: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
Rob White
830440d25a nodogsplash: Backport Version 4.0.1. (#494)
This version has numerous fixes and enhancements.
It is compatible with the previous v3.2.1 release and onwards.

Important fixes in this version:
 * Fix coding error in fas-aes.php [bluewavenet]
 * Make debuglevel platform independent [mwarning]
 * Fix memory handling bug, issue nodogsplash/nodogsplash#341 [mwarning] [stevo01]
 * ndsctl_thread - ignore interupts when returning from epoll [lynxis]
 * auth.c - use correct types to prevent cast and comparement of uint and int [lynxis]
 * openwrt/init.d - prevent start of the daemon if configuration generation fails [lynxis]
 * Generate Error 403 Forbidden, if Gateway Port is accessed directly [bluewavenet]
 * Validate fasremoteip as a valid dotted format IPv4 address [bluewavenet] [mwarning]
 * Prevent client CPD "Too Many Redirects" error. [bluewavenet]

Maintainer: Moritz Warning <moritzwarning@web.de>

Signed-off-by: Rob White <rob@blue-wave.net>
2019-07-30 16:21:40 +02:00
Toke Høiland-Jørgensen
bef6617141 bird2: Bump to v2.0.4
Bird 2.0.4 was released on March 1st. Remove upstreamed patches.

Signed-off-by: Toke Høiland-Jørgensen <toke@redhat.com>
(cherry picked from commit 37f8c509e0)
2019-06-26 19:28:58 +02:00
Josef Schlehofer
18ec6d717b bird1: update to version 1.6.6
Signed-off-by: Josef Schlehofer <josef.schlehofer@nic.cz>
(cherry picked from commit 6141d5d182)
2019-06-26 19:24:56 +02:00
Simon Wunderlich
e8799fb2ad
Merge pull request #478 from ecsv/batadv-for-19.07
batman-adv: Add support for B.A.T.M.A.N. V hardif settings
2019-06-16 11:27:08 +02:00
Sven Eckelmann
e87a25f408 batman-adv: Don't try to set unconfigured ap_isolation for vlan
The ap_isolation setting only supports boolean values. So setting an empty
string as ap_isolation is not supported by batctl.

Fixes: f5205d7d24 ("batman-adv: upgrade package to latest release 2014.2.0")
Signed-off-by: Sven Eckelmann <sven@narfation.org>
2019-06-16 09:29:42 +02:00
Sven Eckelmann
67875e2069 batman-adv: Add support for hardif settings
B.A.T.M.A.N. V support additional settings which are hardif specific. The
batadv_hardif proto has to expose them to allow automatic configuration.
The default configuration would be:

  config interface 'bat0_hardif_eth0'
  	option proto 'batadv_hardif'
  	option master 'bat0'
  	option ifname 'eth0'
  	option mtu '1536'
  	option 'elp_interval' 500
  	# string like '1mbit' is accepted instead of kbit for override
  	option 'throughput_override' '0'

Signed-off-by: Sven Eckelmann <sven@narfation.org>
2019-06-15 09:53:55 +02:00
Sven Eckelmann
eeea3e980e batctl: Add support for hardif settings
batctl currently supports settings which are either mesh interface or vlan
specific. But B.A.T.M.A.N. V introduced two additional settings which are
hard (slave) interface specific.

To support these, an additional command prefix called hardif is implemented
for some sysfs commands:

  $ batctl -m bat0 hardif eth0 ..

The usable commands with that are:

* elp_interval
* throughput_override

Signed-off-by: Sven Eckelmann <sven@narfation.org>
2019-06-15 09:18:51 +02:00
Simon Wunderlich
35b886649b
Merge pull request #475 from ecsv/batadv-2019.2
batman-adv: Fix duplicated OGMs on NETDEV_UP
2019-06-02 22:41:20 +02:00
Sven Eckelmann
e26096ae1d batman-adv: Fix duplicated OGMs on NETDEV_UP
The state of slave interfaces are handled differently depending on whether
the interface is up or not. All active interfaces (IFF_UP) will transmit
OGMs. But for B.A.T.M.A.N. IV, also non-active interfaces are scheduling
(low TTL) OGMs on active interfaces. The code which setups and schedules
the OGMs must therefore already be called when the interfaces gets added as
slave interface and the transmit function must then check whether it has to
send out the OGM or not on the specific slave interface.

But v2016.3 moved the setup code from the enable function to the activate
function. The latter is called either when the added slave was already up
when batadv_hardif_enable_interface processed the new interface or when a
NETDEV_UP event was received for this slave interfac. As result, each
NETDEV_UP would schedule a new OGM worker for the interface and thus OGMs
would be send a lot more than expected.

Fixes: 549909f89d ("batman-adv: upgrade package to latest release 2016.3")
Reported-by: Linus Lüssing <linus.luessing@c0d3.blue>
Signed-off-by: Sven Eckelmann <sven@narfation.org>
2019-06-02 14:08:16 +02:00
elektra42
bf475d6493
Merge pull request #472 from yogo1212/batmand_whitespace
batmand: whitespace
2019-05-27 09:04:38 +02:00
Leon M. George
fdc37cac29 batmand: match loop format 2019-05-25 08:42:53 +02:00
Leon M. George
c514a2a49c batmand: fix whitespace 2019-05-25 08:42:42 +02:00
Simon Wunderlich
d1acf62a57
Merge pull request #471 from ecsv/batadv-2019.2
batman-adv 2019.2
2019-05-24 09:45:32 +02:00
Sven Eckelmann
1ff00eebae batman-adv: upgrade package to latest release 2019.2
* support latest kernels (3.16 - 5.2)
* coding style cleanups and refactoring
* implement multicast-to-unicast support for multiple targets
* deprecate sysfs support and make it optional
* refresh DAT entry timeouts on incoming ARP Replies
* bugs squashed:

  - fix multicast tt/tvlv worker locking
  - drop roam tvlv handler when unregistering mesh interface

Signed-off-by: Sven Eckelmann <sven@narfation.org>
2019-05-23 20:21:54 +02:00
Sven Eckelmann
7b7da0cddb batctl: upgrade package to latest release 2019.2
* coding style cleanups and refactoring
* add multicast_fanout setting subcommand
* implement netlink based support for remaining sysfs-only features
* drop support for deprecated log command support
* remove non-netlink support for translating MAC addresses to originators

Signed-off-by: Sven Eckelmann <sven@narfation.org>
2019-05-23 20:21:54 +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
Rob White
040b8e8750 nodogsplash: Release v3.3.2-1 (#468)
Maintainer: Moritz Warning <moritzwarning@web.de>

Compiled and tested on snapshot SDK mips_24kc and arm_cortex-a5_neon-vfpv4/

  * Fix Issue introduced in v3.3.0 with the addition of Improvements towards usable IPv6 support, that caused CPD on client devices to fail with "Too Many Redirects" error. NDS now terminates gracefully with a console error if fasremoteip is set AND fasport=80  [bluewavenet]
  * Validate fasremoteip to ensure that if it is set, then it is a valid dotted format IPv4 address  [bluewavenet]
  * Numerous Documentation updates  [bluewavenet]
  * Fix to Known Issue on OpenWrt >18.x.x with v3.3.1. This was caused by misconfigured Makefile for libmicrohttpd; this has been fixed there [bluewavenet]

Signed-off-by: Rob White <rob@blue-wave.net>
2019-05-07 22:38:40 +02:00
Jo-Philipp Wich
0be5aa99e0
Merge pull request #467 from lynxis/remove-smcroute
smcroute: remove package as it's orphaned
2019-04-30 23:52:53 +02:00
Alexander Couzens
f36879fe22
smcroute: remove package as it's orphaned
If someone like to become the maintainer, please re-submit this package
to the general openwrt package repository
https://github.com/openwrt/packages

Signed-off-by: Alexander Couzens <lynxis@fe80.eu>
2019-04-23 11:59:39 +02:00
Bastian Bittorf
e40f6891e5
Merge pull request #459 from pmelange/olsrd_0.9.7
[OLSRd] Bump OLSRd version to 0.9.7
2019-04-01 07:30:42 +02:00
Simon Wunderlich
0c867de323
Merge pull request #461 from ecsv/batadv-2019.1
batman-adv 2019.1
2019-03-29 13:32:50 +01:00
Sven Eckelmann
312fd8afc1 batman-adv: upgrade package to latest release 2019.1
* support latest kernels (3.16 - 5.1)
* coding style cleanups and refactoring
* implement meshif, hardif and vlan config interface via netlink
* snoop DHCP ACKs to improve DAT cache efficiency
* bugs squashed:

  - avoid potential reference counter underflows and use-after free errors for
    several objects
  - fix GCC warning when B.A.T.M.A.N. V is build in but cfg80211 is not
    available
  - reject too small VLAN packets before they are processed further

Signed-off-by: Sven Eckelmann <sven@narfation.org>
2019-03-28 19:50:25 +01:00
Sven Eckelmann
0a2547a111 batctl: upgrade package to latest release 2019.1
* coding style cleanups and refactoring
* introduce support for batadv meshif, hardif and vlan configuration via netlink
* replace multicast_mode with multicast_forceflood settings subcommand
* add hop_penalty setting subcommand

Signed-off-by: Sven Eckelmann <sven@narfation.org>
2019-03-28 19:43:14 +01: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
55a7a224e1 batctl: Add package description per variant
Fixes: 1299868252 ("batctl: Provide different variants")
Signed-off-by: Sven Eckelmann <sven@narfation.org>
2019-03-28 19:38:16 +01:00
Rob White
f049dfde5b nodogsplash: Add missing install directories (#460)
Add missing install directories in revised Makefile

Signed-off-by: Rob White rob@blue-wave.net
2019-03-25 18:03:29 +01:00
Rob White
b01e4b0e7c nodogsplash: Bump to v3.3.0-1 (#457)
Signed-off-by: Rob White <rob@blue-wave.net>
2019-03-25 14:28:02 +01:00
pmelange
20b9ab3cea [OLSRd] Bump OLSRd version to 0.9.7
This patch bumps OLSRd from 0.9.6.2 to 0.9.7 (released 06-March-2019)

Signed-off-by: pmelange <isprotejesvalkata@gmail.com>
2019-03-23 14:16:40 +01:00
Simon Wunderlich
4265df9dcc
Merge pull request #458 from adrianschmutzler/fixcommit
batman-adv: Fix uci commit target
2019-03-20 17:50:20 +01:00
Adrian Schmutzler
1a22e00eeb batman-adv: Fix uci commit target
Although batman-adv config is cycled in config_foreach, changes
are made in the network config. Thus, this one has to be committed.

Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
2019-03-19 19:49:27 +01:00
Moritz Warning
1cca73b59f
nodogsplash: fix invalid pointer bug when clock is turned back (#456)
Signed-off-by: Moritz Warning <moritzwarning@web.de>
2019-03-14 18:23:32 +01:00
Axel Neumann
a952ac8c88
Merge pull request #454 from dangowrt/master
bmx7: update source to 2019030802
2019-03-13 22:44:14 +01:00
Daniel Golle
409d35885d bmx7: update source to 2019030802
Signed-off-by: Daniel Golle <daniel@makrotopia.org>
2019-03-09 00:52:37 +01:00
Simon Wunderlich
b57b8dc6d3
Merge pull request #453 from ecsv/batadv-2019.0
batman-adv: Split batadv proto in meshif and hardif part
2019-03-07 17:04:54 +01:00
Sven Eckelmann
54af5a209e batman-adv: Split batadv proto in meshif and hardif part
batman-adv allows to configure three different objects:

* batadv hardif

  - network interface used by batadv meshif to transport the batman-adv
    packets
  - its master interface is set to the batadv meshif

* batadv (meshif/softif)

  - virtual interface that emulates a normal 802.3 interface on top
  - encapsulates traffic and forwards it via the batadv hardifs

* batadv vlan

  - potential VLAN ID on top of batadv meshif
  - allows filtering of traffic from specific VIDs

While batadv vlan objects were already represented as an own proto
"batadv_vlan", the batadv meshif could never be fully configured using
/etc/config/network. Instead, parts of its configuration were stored in
/etc/config/batman_adv and some in the interfaces with the "batadv" proto.

To increase the confusion, the "batadv" proto wasn't used to define the
batadv meshif but to identify batadv (slave) hardifs. The batman-adv
meshifs were also never created directly but only when a hardif was
configured. The actual modification of the configuration settings was then
applied using a hotplug script hack. The batadv meshif network interface
could therefore only be created when an hardif was available and not
manipulated with ifup/ifdown. Also `/etc/init.d/network reload` didn't
modify the batadv meshif interface configuration correctly.

The "batadv" is now renamed to "batadv_hardif" and a new "batadv" proto is
used to configure the main (meshif) network interface with all its
configuration.

A simple network configuration with WiFi & ethernet interfaces and static
IP on top of bat0 would look like:

  # batadv meshif bat0
  config interface 'bat0'
  	option proto 'batadv'
  	option routing_algo 'BATMAN_IV'
  	option aggregated_ogms 1
  	option ap_isolation 0
  	option bonding 0
  	option fragmentation 1
  	#option gw_bandwidth '10000/2000'
  	option gw_mode 'off'
  	#option gw_sel_class 20
  	option log_level 0
  	option orig_interval 1000
  	option bridge_loop_avoidance 1
  	option distributed_arp_table 1
  	option multicast_mode 1
  	option network_coding 0
  	option hop_penalty 30
  	option isolation_mark '0x00000000/0x00000000'

  # add *single* wifi-iface with network bat0_hardif_wlan as hardif to bat0
  config interface 'bat0_hardif_wlan'
  	option mtu '1536'
  	option proto 'batadv_hardif'
  	option master 'bat0'
  	# option ifname is filled out by the wifi-iface

  # add eth0 as hardif to bat0
  config interface 'bat0_hardif_eth0'
  	option proto 'batadv_hardif'
  	option master 'bat0'
  	option ifname 'eth0'
  	option mtu '1536'

  # configure IP on bat0
  config interface 'bat0_lan'
  	option ifname 'bat0'
  	option proto 'static'
  	option ipaddr '192.168.1.1'
  	option netmask '255.255.255.0'
  	option ip6assign '60'

Signed-off-by: Sven Eckelmann <sven@narfation.org>
2019-03-07 17:01:09 +01:00
Simon Wunderlich
571b0b5672
Merge pull request #451 from ecsv/batadv-2019.0
batman-adv: finish config batctl usage & drop unused compat code
2019-03-07 16:56:37 +01:00
Sven Eckelmann
5882b6049d batman-adv: use batctl for configuration of hop_penalty
hop_penalty is the last remaining setting which is directly writing to
sysfs instead of using a implementation (sysfs vs. netlink) abstraction
layer. batctl now provides a wrapper function that allows the script to
directly use it to take care of communicating with the driver.

Signed-off-by: Sven Eckelmann <sven@narfation.org>
2019-02-22 22:49:56 +01:00
Sven Eckelmann
278e98cb86 batctl: Add support for hop_penalty settings command
The batman-adv scripts are still using sysfs for setting the hop_penalty.
Since the sysfs is deprecated, the batctl interface should be used to make
it independent of implementation details (sysfs vs. netlink).

Signed-off-by: Sven Eckelmann <sven@narfation.org>
2019-02-22 22:49:56 +01:00
Sven Eckelmann
7d973599ef batman-adv: use batctl for configuration of gw_mode
The batctl tool should be used for modifying settings in the batman-adv
driver to keep the scripts consistent and allow to use the correct way of
communicating with the kernel (sysfs vs. netlink).

The gw_mode, gw_bandwidth and gw_sel_class options are all handled by
the same gw_mode command in batctl and thus have to be combined depending
on the "gw_mode" value.

Signed-off-by: Sven Eckelmann <sven@narfation.org>
2019-02-22 22:46:21 +01:00