Commit Graph

3778 Commits

Author SHA1 Message Date
David Bauer
98a1c196ed mesh-vpn: fully abstract VPN methods
This fully abstracts VPN methods, making gluon-mesh-vpn-fastd and
gluon-mesh-vpn-tunneldigger completely self-contained.

Provide a LUA interface for generic interacting with VPN methods in
gluon-mesh-vpn-core and web packages.

This also adds the ability to install tunneldigger and fastd to the same
image, selecting the VPN method based on the selected domain.

Signed-off-by: David Bauer <mail@david-bauer.net>
2021-05-22 06:54:23 +02:00
David Bauer
17dd5abd75
Merge pull request #2223 from freifunk-gluon/wizard-reconfigure
Simplify save/commit handling of config wizard sections
2021-05-19 13:39:03 +02:00
David Bauer
436b29d767 gluon-config-mode-core: add missing uci save
A missing uci save for gluon-setup-mode caused the initial setup-process
to be stuck in a config-mode loop.
2021-05-18 19:16:18 +02:00
Matthias Schiffer
42335a07c9
gluon-config-mode-core: unconditionally run gluon-reconfigure
Simplify the individual form providers by always running reconfigure. This
also commits all UCI packages, so we can remove all tracking of UCI
sections from the wizard code.

Instead of returning a list of packages to commit, the providers just
save their settings directly. Explicit runs of upgrade scripts are
removed, as they are now run by reconfigure.
2021-05-15 00:03:02 +02:00
Matthias Schiffer
16fab561db
gluon-config-mode-mesh-vpn: override Section:write() instead of Section:handle() 2021-05-15 00:03:02 +02:00
Matthias Schiffer
df9fa32d58
gluon-web-model: add state tracking to sections
This add support for a write() method on sections, in addition to the
value and form level write(). write() is only called when the section is
valid and visible. In addition, write() is empty by default, so it can be
overridden more easily.
2021-05-15 00:02:44 +02:00
Martin Weinelt
bb920eaefc
targets: clarify why ar71xx-mikrotik is marked as broken 2021-05-14 18:34:17 +02:00
Martin Weinelt
9f37489881
Merge pull request #2221 from freifunk-gluon/auto-labeling 2021-05-14 01:31:43 +02:00
Martin Weinelt
d4057c3eb6
.github/labeler.yml: auto label pull requests
according to the paths they touch.
2021-05-14 01:31:14 +02:00
Martin Weinelt
0ac3061225
Merge pull request #2214 from AiyionPrime/status_page_mesh_protocol 2021-05-09 16:53:49 +02:00
David Bauer
10486b1b7a
Merge pull request #2218 from AiyionPrime/fix_respondd_leak
libgluonutil: free getline
2021-05-08 22:54:10 +02:00
aiyion.prime
5c12b037d7 libgluonutil: free getline
Co-Authored-By: lemoer <git@irrelefant.net>
2021-05-08 20:35:24 +02:00
David Bauer
1c38906eef
Merge pull request #2163 from lemoer/pr_vpn_as_gluon_wired
Generalize proto "gluon_wired.sh"
2021-05-07 00:10:27 +02:00
aiyion.prime
a683486514 fixup! gluon-status-page: add mesh protocol to status-page 2021-05-06 19:03:06 +02:00
David Bauer
545713ac9f
Merge pull request #2213 from freifunk-gluon/modules-openwrt
modules: update OpenWrt
2021-05-06 17:14:50 +02:00
aiyion.prime
77a6b9a947 gluon-status-page: add mesh protocol to status-page 2021-05-06 16:37:32 +02:00
Martin Weinelt
47a2f03660
modules: update OpenWrt
1b5a45a4a7 mac80211: Update to backports version 4.19.189-1
a883e3af38 dropbear: Fix CVE-2020-36254
2021-05-06 01:51:12 +02:00
lemoer
bbecd44be1 gluon-core: extend gluon_wired proto for l3 devices
This is a preparation to use the gluon_wired.sh proto on top of
layer 3 tunnel interfaces.
2021-05-06 00:43:01 +02:00
lemoer
c14b4c0b4b gluon-core: add vxlan option to gluon_wired proto
Before this commit the decision whether a vxlan layer will be
introduced between the lower interface before the interface is
added to batman was inside the proto. Now the decision is moved
to the user of the proto.
2021-05-06 00:43:01 +02:00
David Bauer
9e09d08cf6
Merge pull request #2177 from blocktrron/pr-wan-radio-ifname
gluon-web-private-wifi: define ifname for WAN radio
2021-05-03 17:39:31 +02:00
David Bauer
589dff7c14 modules: update OpenWrt
08ef2073d4 ramips: backport unlocked mdiobus accessors
2021-05-03 00:44:56 +02:00
David Bauer
e729b81312 gluon-private-wifi: add package
Add a package for handling upgrade-scripts speific for the WAN radio
operation.

This way, the config mode interface can be removed seperately from the
core functionality to perform tasks on system upgrade. This can be
useful when the setup-mode is removed entirely for space preservation.
2021-05-02 23:25:32 +02:00
David Bauer
5f08b47659 modules: update OpenWrt
7198ae4cf3 openvpn: update to 2.4.11
a8beddcd34 openvpn: update to 2.4.9
f82ddf9024 openvpn: update to 2.4.8
718e97c5c8 ramips: mt7530 swconfig: fix race condition in register access
8788e86245 ppp/pppoe-discovery: fix -W option
4398a35067 kernel: bump 4.14 to 4.14.231
906f560e79 kernel: bump 4.14 to 4.14.230
2021-05-02 20:59:45 +02:00
Martin Weinelt
46d2008eef
Merge pull request #2210 from blocktrron/mesh-sae-unused-params
mesh-wireless-sae: drop unused function parameters
2021-05-02 13:58:58 +02:00
David Bauer
a922944fee mesh-wireless-sae: drop unused function parameters
Drop these unused parameters in the function description, as only the
first parameter is referenced within the function block.
2021-05-02 02:20:00 +02:00
Linus Lüssing
98f3f63842 gluon-ebtables-filter-multicast: relax IPv6 multicast firewall rules
Allow the transmission of IPv6 multicast packets as long as they are not
flooded through the whole mesh.

Signed-off-by: Linus Lüssing <linus.luessing@c0d3.blue>
2021-05-01 22:36:14 +02:00
Linus Lüssing
cb505a354a batman-adv: Introduce no noflood mark
This mark prevents a multicast packet being flooded through the whole
mesh. The advantage of marking certain multicast packets via e.g.
ebtables instead of dropping is then the following:

This allows an administrator to let specific multicast packets pass as
long as they are forwarded to a limited number of nodes only and are
therefore creating no burdon to unrelated nodes.

Signed-off-by: Linus Lüssing <linus.luessing@c0d3.blue>
2021-05-01 22:33:59 +02:00
David Bauer
f4adb66772 gluon-web-private-wifi: define ifname for WAN radio
Set the ifname for the WAN radio (Private WLAN) to wanX, X being the
radio index.

All other radios created by Gluon already have their ifname defined
following this pattern.

Signed-off-by: David Bauer <mail@david-bauer.net>
2021-05-01 20:57:15 +02:00
Martin Weinelt
a63be6928c
Merge pull request #2208 from blocktrron/actions-next-subbranch
actions: build gluon for next sub-branches
2021-05-01 13:54:59 +02:00
David Bauer
53b647f748 actions: build gluon for next sub-branches
Currently we do not perform CI firmware builds on the next-2102 branch.

Build Gluon for all branches starting with "next" to increase the
coverage of our build tests.

Signed-off-by: David Bauer <mail@david-bauer.net>
2021-05-01 13:35:36 +02:00
Martin Weinelt
069c8b2035
Merge pull request #2207 from blocktrron/web-admin-flashsize
web-admin: fix firmware partition name
2021-05-01 12:27:26 +02:00
David Bauer
d0551c2dcd web-admin: fix firmware partition name
The rudimentary flash size determination function expects the partition
for the devices firmware to be called "linux" while it is (since quite
some time) "firmware".

Fix this error to display available flash size as well as more useful
error message in case the uploaded firmware image exceeds the flash
space.

Signed-off-by: David Bauer <mail@david-bauer.net>
2021-05-01 03:15:51 +02:00
David Bauer
4cd644a7a8
Merge pull request #2206 from T-X/pr-batman-adv-enable-mcast-optimizations
gluon-mesh-batman-adv: reenable batman-adv multicast optimizations
2021-04-29 01:07:52 +02:00
Linus Lüssing
288daf5a47 gluon-mesh-batman-adv: reenable batman-adv multicast optimizations
With batman-adv 2020.4 and the according backports to batman-adv v2019.2
several more bugs were found and fixed regarding the batman-adv
multicast optimizations feature.

Also a "wakeup-call" feature was added to the Linux bridge IGMP/MLD
snooping code in Gluon to work around issues with Android devices.

With batman-adv now at v2019.2, multicast-to-multi-unicasts conversion
is supported, too. Which means that even if there are a few outdated nodes
these and all other recipients will be served multicast packets via unicast,
too, as long as the sum of receiving nodes does not exceed the multicast
fanout setting (default: 16). If is exceeded, then batman-adv will revert
back to broadcast flooding automatically.

Long story short, with all these extra measures in place, let's reenable
the batman-adv multicast optimizations to reduce the layer 2 overhead
and in preparation for multicast applications in the future.

The default is enabled for this feature anyway, so removing the
"batctl multicast_mode 0" overwrite is sufficient.

Signed-off-by: Linus Lüssing <linus.luessing@c0d3.blue>
2021-04-29 00:40:39 +02:00
Martin Weinelt
7904e0315f
modules: update OpenWrt
cc0b70467d mac80211: backport upstream fixes
2c46ba4356 kernel: backport fix for flexcan bug
7f3ec4ce39 kernel: bump 4.14 to 4.14.229
273ded68b8 kernel: bump 4.14 to 4.14.228
c43c434b58 kernel: bump 4.14 to 4.14.227
2021-04-28 01:14:56 +02:00
Martin Weinelt
3b9aebf13b .editorconfig: bunch of additions
Formats:
- Restructured Text
- JSON
- MarkDown

Specific Files:
- .ecrc
- CMakeLists.txt

Ignore:
- /patches/ directory, we will not be editing foreign patches for their
  indentation
2021-04-28 01:01:35 +02:00
David Bauer
24a21336d8
Merge pull request #2128 from tokudan/master-autoupdater-doc
autoupdater: document behaviour if manifest DATE is in the future
2021-04-28 00:57:17 +02:00
Daniel Frank
be9d2cd201
docs: autoupdater: document manifest header
Explains the behaviour when DATE is either in the future or in the past
and hints at how the firmware rollout can be controlled using the
PRIORITY variable.

Co-Authored-By: Martin Weinelt <martin@darmstadt.freifunk.net>
2021-04-28 00:54:21 +02:00
David Bauer
3f267d637e
Merge pull request #1986 from 2tata/archer-d50
targets/ath79-generic: add archer-D50 v1
2021-04-28 00:31:06 +02:00
Jan-Tarek Butt
9826a12b38 ath79-generic: add Archer D50 v1
Signed-off-by: Jan-Tarek Butt <tarek@ring0.de>
Signed-off-by: David Bauer <mail@david-bauer.net>
2021-04-28 00:30:25 +02:00
David Bauer
5f3bb758b3
Merge pull request #2154 from yanosz/patch-1
Mention names of opkg-keys in doc
2021-04-28 00:20:02 +02:00
yanosz
96dfbc46c0
docs: Document location and handling of opkg keypair
Co-Authored-By: Martin Weinelt <martin@darmstadt.freifunk.net>
2021-04-28 00:18:31 +02:00
David Bauer
490c522351
Merge pull request #2200 from AiyionPrime/status_page_role
gluon-status-page: add role to status-page
2021-04-28 00:11:26 +02:00
David Bauer
0ce961eb8c
Merge pull request #2201 from AiyionPrime/status_page_wifi_channel
gluon-status-page: add channels to status-page
2021-04-28 00:10:46 +02:00
aiyion.prime
e6bdbe811a gluon-status-page: use sitetranslation for role 2021-04-23 15:57:37 +02:00
aiyion.prime
f14707cfa2 gluon-status-page: use mac80211 identifier (phy) 2021-04-22 22:43:48 +02:00
aiyion.prime
dc400c9220 gluon-status-page: reformat spaces 2021-04-22 21:43:55 +02:00
aiyion.prime
344d3ab686 gluon-status-page: add channels to status-page 2021-04-22 21:43:55 +02:00
David Bauer
b72588a014 modules: update Gluon packages 2021-04-22 20:25:23 +02:00
Martin Weinelt
a2be901803
docs: Add v2020.2.3 release notes 2021-04-14 02:10:15 +02:00