Matthias Schiffer
6884aad788
gluon-core: simplify 820-dns-config code
2017-08-08 04:31:53 +02:00
Matthias Schiffer
31721a61f5
gluonc-core: 200-wireless: remove unneeded nil checks for uci:set_list()
...
uci:set_list() will delete the list when nil is passed, so there is no need
to differentiate between the cases.
2017-08-08 04:31:52 +02:00
Matthias Schiffer
06d0c0f211
gluon-core: fix 200-wireless coding style
2017-08-08 04:31:52 +02:00
Matthias Schiffer
27f35e56b4
gluon-core: add interfaces having proto = gluon_mesh to mesh firewall zone
...
Based-on-patch-by: Christof Schulze <christof.schulze@gmx.net>
2017-06-27 23:49:56 +02:00
Christof Schulze
e432dd4d9f
gluon-core: gluon_mesh.sh: whitespace cleanup
2017-06-27 23:45:58 +02:00
Matthias Schiffer
ae593d8439
gluon-core: convert site seed to lowercase
...
While we use the hexadecimal representation as a hash input for simplicity,
it should not be interpreted as case-sensitive.
2017-06-27 23:28:23 +02:00
Matthias Schiffer
a2711065c8
gluon-core: add VXLAN support for gluon_wired protocol
2017-06-27 23:04:50 +02:00
Matthias Schiffer
0d6f957196
gluon-core: introduce new gluon_wired netifd proto for wired meshing
...
The new proto will simplify the switch to VXLAN encapsulation.
2017-06-27 23:00:17 +02:00
Matthias Schiffer
8bcd0975af
gluon-core: add a "site seed" to site.conf to seed site-specific random values
2017-06-27 23:00:17 +02:00
Matthias Schiffer
acfc3cc1a2
gluon-core: upgrade/210-interface-wan: whitespace cleanup
2017-06-21 17:16:41 +02:00
Matthias Schiffer
0db63008cd
gluon-core: upgrade/220-interface-lan: whitespace cleanup
2017-06-21 02:56:23 +02:00
Linus Lüssing
c519ec4596
gluon-core: reenable multicast snooping for wan zone
...
LEDE recently disabled multicast snooping by default:
https://git.lede-project.org/?p=project/netifd.git;a=commitdiff;h=52541140f8138e31958cdc3d7e42a4029fa6bbc9
Reenable it for Gluon as there have been no confirmed issues for
LEDE and no negative reports concerning Gluon v2016.2.x so far.
Closes #1025 .
Signed-off-by: Linus Lüssing <linus.luessing@c0d3.blue>
2017-04-13 22:31:47 +02:00
Matthias Schiffer
a502295eaf
gluon-core: gluon_mesh: make transitive and fixed_mtu available as interface data, add post-setup.d
...
In addition, transitive and fixed_mtu now default to 0 instead of an empty string.
2017-04-12 03:44:45 +02:00
Matthias Schiffer
02f2d8796c
gluon-core: don't call 'ip' to check if an interface exists
2017-04-11 02:01:21 +02:00
Matthias Schiffer
c4613c4e8d
gluon-core: gluon.util: pass UCI cursor to get_wlan_mac(), get rid of local UCI context
2017-04-11 01:48:11 +02:00
Matthias Schiffer
f48d10bdde
gluon-core: gluon.util: pass UCI cursor as argument to iterate_radios() instead of using local context
2017-04-11 01:48:11 +02:00
Julian Labus
734d1925de
gluon-core: gluon.util: fix PHY detection for radios addressed by PCIe address
2017-04-11 01:48:10 +02:00
Matthias Schiffer
da22c5cf8e
gluon-core: gluon.util: change find_phy argument to config table and make public
2017-04-11 01:48:10 +02:00
Julian
13c61d9394
gluon-core: fix pattern %v in opkg URLs ( #1087 )
2017-04-07 14:24:13 +02:00
Cyrus
6a0ca58fc3
gluon-core: Fixed bug which kept legacy VLAN interface definitions ( #1085 )
2017-04-03 20:48:42 +02:00
Christof Schulze
b7651ee96f
gluon-core: limit fq_codel memory to 1MB per AP with less than 48MB RAM ( #1046 )
2017-02-24 19:43:32 +01:00
Matthias Schiffer
b45585a109
Switch LAN and WAN port of Ubiquiti AirGateway
...
This makes the LAN port the PoE master, so the AirGateway can be used to
supply power to another node connected via mesh-on-LAN.
Fixes #608
2017-02-23 19:49:39 +01:00
kb-light
c9563cdebd
scripts: check_site_lib: introduce need_string_array_match() ( #1016 )
2017-02-21 09:45:33 +01:00
Matthias Schiffer
184cb1010d
gluon-core: add single_as_lan option to configure a single ethernet port as LAN instead of WAN
2017-02-10 22:48:23 +01:00
Matthias Schiffer
e39cbcbda1
gluon-core: gluon.util: make exec() replace all stdio files with /dev/null
2017-02-10 22:09:59 +01:00
Matthias Schiffer
ea12cb770d
gluon-core: nicer indentation of /lib/gluon/upgrade/020-interfaces
2017-02-10 22:08:51 +01:00
Matthias Schiffer
e5cb125737
Move wifi24/5 and mesh_on_wan/lan site validators from gluon-mesh-batman-adv-core to gluon-core
...
These values have been in use in gluon-core for some time, the validators
need to be moved as well.
2017-02-10 21:19:34 +01:00
Matthias Schiffer
f9a52fd54f
Move luci-base dependency from gluon-core to gluon-setup-mode
...
Nothing outside the config mode depends on luci-base anymore.
2017-02-10 02:10:02 +01:00
Matthias Schiffer
e665bfe64a
gluon-core: don't depend on luci.ltn12
2017-02-10 02:10:01 +01:00
Matthias Schiffer
c83b5b3cab
treewide: get rid of luci.util outside of config mode/advanced settings
2017-02-10 02:10:01 +01:00
Matthias Schiffer
6cf03bab37
treewide: replace normal uses of luci.model.uci with simple-uci to reduce LuCI dependencies
...
We also make use of the boolean support of simple-uci to make scripts
clearer.
2017-02-10 02:10:01 +01:00
Matthias Schiffer
6b62e2fc78
gluon-core: check_site.lua: only accept /64 as prefix6
...
A lot of our code does not actually work with other prefix lengths.
Fixes #1014
2017-01-26 18:59:38 +01:00
Christof Schulze
8b083d4986
gluon-core: check_site.lua: fix indentation
2017-01-24 23:21:10 +01:00
Christof Schulze
e2e910fb41
gluon-core: add configuration that enables the next_node to be used as dns cache
2017-01-24 23:20:40 +01:00
Matthias Schiffer
0a8e028e8f
gluon-core: upgrade: don't print an error message on systems without opkg
2017-01-19 13:10:57 +01:00
Matthias Schiffer
78b2775eec
Use LEDE as base for Gluon
2017-01-18 17:21:43 +01:00
Matthias Schiffer
04818c170b
package: refactor add_to_set/remove_to_set to get rid of last LuCI patch
2017-01-18 16:28:54 +01:00
Matthias Schiffer
2dd8a700ca
package: avoid use of GLUONDIR variable
2017-01-17 21:22:58 +01:00
Matthias Schiffer
99471f8d5d
ar71xx-generic: add support for TP-Link WBS210/510 (untested)
...
Closes #844
2017-01-06 12:02:32 +01:00
Christof Schulze
e41e5cb8d9
gluon-core: add get_mesh_devices(uconn) to gluon.util which will return all devices being up and having proto = gluon_mesh
2016-12-21 23:51:48 +01:00
Christof Schulze
0abe350782
gluon-core: replace blanks by tabs in gluon.util
2016-12-21 23:47:03 +01:00
Matthias Schiffer
d2373590e0
gluon-core: add support for removing sysctl settings
2016-12-10 23:43:44 +01:00
rubo77
2a101ddd56
gluon-core: add dirty flag to gluon-version, add site-version
2016-12-06 20:05:34 +01:00
Matthias Schiffer
20fc162b38
gluon-core, gluon-setup-mode: fix WAN/LAN assignment on CPE210
...
The interfaces were accidentially switched when the CPE210 was separated
from the CPE510 code.
2016-11-22 20:01:13 +01:00
Matthias Schiffer
b902ddd8df
gluon-next-node: make IPv4 next-node address optional
...
If next_node.ip4 is not set or gluon-next-node is not used, prefix4 will
now be optional as well.
2016-09-10 17:15:16 +02:00
Matthias Schiffer
6cddaedfc7
Reorganize MAC addresses, always explicitly set address for private WLAN
...
Fixes #842
2016-09-07 02:14:42 +02:00
Matthias Schiffer
4f39be09c9
gluon-core: migrate custom batadv interfaces to gluon_mesh proto
...
Users may have defined additional mesh interfaces. Properly migrate these
to avoid subtly breaking the network config (and make them ready for new
mesh protocols).
2016-09-07 02:14:42 +02:00
Matthias Schiffer
8434896014
gluon-mesh-batman-adv-core: move config not specific to batman-adv to gluon-core
2016-09-07 02:14:42 +02:00
Matthias Schiffer
5cd6295265
gluon-core: add gluon_mesh netifd proto
...
This new protocol will allow configuring mesh interfaces independently of
the used mesh protocol.
2016-09-07 02:14:42 +02:00
Matthias Schiffer
7e0075584d
Use a "pretty" hostname where possible
...
Fixes #414
2016-08-27 16:33:37 +02:00
kb-light
6ff94aca35
gluon-core: make wifi rates configurable by site.conf
...
and add documentation
2016-08-27 07:11:58 +02:00
Linus Lüssing
6594ba314c
gluon-core: reenable multicast snooping on WAN side
...
Just like we enabled multicast snooping on the batman-adv client bridge
again, let's do the same for the WAN side.
With one exception: The IGMP/MLD querier is kept disabled to avoid
becoming too "bossy"/"noisy" on a foreign network. The main router on
the WAN side should perform querying and by that enable
IGMP/MLD/snooping if it considers this appropriate there.
Signed-off-by: Linus Lüssing <linus.luessing@c0d3.blue>
2016-08-23 00:21:26 +02:00
Matthias Schiffer
b1a753e1c5
gluon-core: allow setting PoE passthrough default setting from site.conf
2016-07-30 00:00:39 +02:00
Matthias Schiffer
279a409198
gluon-core: split get_wlan_mac_from_driver() out of get_wlan_mac()
2016-07-27 17:25:05 +02:00
Matthias Schiffer
2afe34efec
Use MAC addresses provided by WLAN drivers by default
...
Some drivers (mt76) don't support arbitrary MAC addresses. Use the
addresses provided by the driver (avoiding the primary address) by default,
but fall back to our has-based scheme when the driver doesn't provide
(enough) addresses.
2016-07-20 18:42:56 +02:00
Matthias Schiffer
c8bc4620d1
gluon-core: unify indentation in gluon/util.lua
2016-07-20 17:51:09 +02:00
Jan-Tarek Butt
1c1f490527
Minify all Lua code
2016-07-10 20:14:25 +02:00
Matthias Schiffer
42910c0606
ramips-mt7621: use phy1 MAC address as primary on DIR-860L B1
2016-07-10 15:51:07 +02:00
Matthias Schiffer
bae721a9bb
Add target ar71xx-mikrotik
...
Fixes #121
Based-on-patch-by: Tobias Hachmer <tobias@hachmer.de>
2016-06-23 00:29:28 +02:00
Matthias Schiffer
dc485f7356
gluon-core: make gluon.platform.match() match all boards when no boards are given
2016-06-23 00:07:25 +02:00
Sven Eckelmann
fa04fff88d
ar71xx-generic: Add support for OpenMesh MR1750v2
...
The new MR1750v2 device support is only available in LEDE master. The
relevant patches have to backported to add support for them in Gluon
Signed-off-by: Sven Eckelmann <sven.eckelmann@open-mesh.com>
2016-06-17 20:04:00 +02:00
Sven Eckelmann
3ccd516971
ar71xx-generic: Add support for OpenMesh OM2P-HSv3
...
The new OM2P-HSv3 device support is only available in LEDE master. The
relevant patches have to backported to add support for them in Gluon
Signed-off-by: Sven Eckelmann <sven.eckelmann@open-mesh.com>
2016-06-17 20:04:00 +02:00
Sven Eckelmann
780f7cad2a
ar71xx-generic: Use eth0 as OpenMesh primary mac address
...
The OpenMesh devices have a sticker with the eth0 mac address on the
bottom. Also all other mac addresses are calculated based on this address.
Therefore, it is better to use this as primary mac address instead of the
WiFi mac address.
Signed-off-by: Sven Eckelmann <sven.eckelmann@open-mesh.com>
2016-05-23 21:39:27 +02:00
Matthias Schiffer
cab23b1838
ar71xx-generic: switch default WAN/LAN assignment on Ubiquiti UAP Pro
...
Fixes #764
2016-05-14 01:02:25 +02:00
Matthias Schiffer
087112a09b
ar71xx-generic: add support for UniFi AC PRO/LITE (LITE untested)
...
Also backport some patches improving QCA956x support.
2016-05-14 00:48:10 +02:00
lemoer
c73a12e0ea
Change MAC schema generation ( #715 )
...
While ath9k/ath10k devices can supprt VIFs with any combination of MAC addresses, there are also adapters which have a hardware MAC filter which only allows a few bits to differ. This commit changes the addresses of all VIFs to ony differ in the last 3 bits, which is required to support many Ralink/Mediatek based WLAN adapters.
Technically, the new addresses are generated by calculating an MD5 hash of the primary MAC address and using a part of this hash as a prefix for the MAC addresses.
The addresses (BSSIDs) of the AP VIFs are also reused for the LAN and WAN interfaces in mesh-on-LAN/WAN mode to reduce the number of needed addresses, and thus reduce the chance of collisions. This is not a problem as the MAC addresses of the AP VIFs are never used except as BSSID, and thus not seen by routing protocols like batman-adv.
Fixes #648
[Matthias Schiffer: rewrote commit message]
2016-04-27 12:16:39 +02:00
Matthias Schiffer
c18d43d2cb
gluon-core: use correct file variable in get_site_config()
2016-04-24 15:55:37 +02:00
Jan Niehusmann
bdcd166c7c
ar71xx-generic: add support for Carambola 2
...
Device information can be found at:
http://www.8devices.com/products/carambola-2
https://wiki.openwrt.org/toh/8devices/carambola2
I only did some minimal testing of gluon on the carambola 2 development
board:
- Config mode works
- Connects to Wifi Mesh
- Allows clients to connect
Notably, autoupgrade has not yet been tested.
Change to 010-primary-mac is necessary as the mac address printed
on the sticker is the one of eth0, not the wifi mac.
2016-04-22 08:32:19 +02:00
Jan-Philipp Litza
3a3c922a4d
gluon-core: use exec on uci commit
2016-04-03 16:14:48 +02:00
Matthias Schiffer
4658afb2c6
gluon-core: commit all UCI configs at the end
...
Avoid commiting configs inbetween to decrease number of flash writes.
Fixes #714 .
2016-04-02 18:56:45 +02:00
Linus Lüssing
0fc9e1d966
update config: "firewall: Allow IGMP and MLD input on WAN" (r45613)
...
Adopt the according modifications to the default firewall settings of
the WAN interface from OpenWRT, revision 45613.
Signed-off-by: Linus Lüssing <linus.luessing@c0d3.blue>
2016-03-08 07:55:55 +01:00
Kokel
388d264ff0
gluon-core: add preserve wifi channels feature
...
This new feature introduces the new uci section 'gluon-core.wireless' with a preserve_channels option:
* preserve_channels (boolean)
By setting this option to 1 (true) wifi channels will be preserved during upgrades.
2016-02-10 07:06:36 +01:00
Matthias Schiffer
9004028cb4
Convert gluon-announce Lua code to C modules, rename to gluon-respondd
...
gluon-announced and gluon-announce are merged to gluon-respondd.
2016-02-02 09:18:12 +01:00
Matthias Schiffer
f23e024787
Convert site.conf to JSON during build
...
This will allow us to use its content from other languages than Lua as
well.
2016-01-02 23:49:25 +01:00
Matthias Schiffer
412e1ef147
gluon-core: fix removal of "OpenWrt" default WLAN interface
...
Fixes #534
2015-10-28 17:06:29 +01:00
Matthias Schiffer
3ddcf50b80
Drop htmode field from config, always use HT20
...
Fixes #487
2015-10-27 01:57:10 +01:00
Matthias Schiffer
22130e84e8
Merge gluon-radio-config into gluon-core
...
gluon-radio-config contained only a single file. The code has been adjusted
to allow creating a Gluon configuration without WLAN support by removing
the wifi24 and wifi5 sections from site.conf.
2015-10-26 20:59:56 +01:00
Matthias Schiffer
d5c334af6d
gluon-core: replace opkg site configuration to make it more flexible
...
The new options allow specifying custom repositories and are evaluated
in an upgrade script, not during build.
2015-10-14 02:57:29 +02:00
Alex
b465504ae8
add: info for 802.11s interface
...
additional information for commit 2a93c58042
2015-09-13 14:32:53 +02:00
Jan-Philipp Litza
339a6c9959
Remove dependencies on luci.util (and partly nixio.fs) from announce scripts
2015-09-02 13:17:59 +02:00
Nils Schneider
177086b881
gluon-radio-config: basic wireless configuration
...
Split basic radio configuration from gluon-mesh-batman-adv as this will
be required for virtually any wireless mesh protocol.
This package takes care of setting:
- wireless channel,
- htmode and
- regulatory domain
gluon-mesh-batman-adv-core depends on this package.
2015-08-18 11:41:14 +02:00
Matthias Schiffer
f6498e8773
Update modules
2015-07-18 18:02:13 +02:00
Matthias Schiffer
d386ccdcf8
Always use eth0 address as primary address on x86 and brcm2708
...
These targets don't have a WLAN adapter by default, so it doesn't make
sense to default to the phy0 address.
2015-07-10 20:22:53 +02:00
Matthias Schiffer
ab10be9f50
We're on Chaos Calmer now
2015-05-22 01:09:19 +02:00
Matthias Schiffer
bca916dd55
gluon-core: disable multicast snooping on the WAN bridge
...
This seems to mitigate weird bridge forwarding issues.
2015-04-27 22:00:38 +02:00
Matthias Schiffer
cd34cb2ebb
gluon-core, gluon-setup-mode: improve support for UAP Outdoor+
2015-04-08 00:44:12 +02:00
Jan-Philipp Litza
335026af09
Allow empty hostname prefix
...
In Bremen it has been noted that a prefix may lead people to believe it
has to stay there and thus naming their nodes "ffhb-*", which is not
what the community wants (see FreifunkBremen/gluon-site-ffhb#1 ).
However, an empty prefix lead to the connecting hyphen still being
inserted. This commit thus makes the hyphen part of the configured
prefix and allows the prefix to be missing from the `site.conf`.
2015-03-21 13:43:45 +01:00
Matthias Schiffer
65b44ca4ce
Rename gluon-config to gluon-site
2015-03-19 20:14:40 +01:00
Matthias Schiffer
dce26de28c
gluon-core: add i18n support
2015-03-18 20:24:57 +01:00
Matthias Schiffer
93cc8e543e
gluon-core: fix primary MAC address on TP-LINK Archer C5/C7
2015-03-10 13:40:45 +01:00
Matthias Schiffer
cbedc9421e
gluon-core: sysconfig: differentiate between nil and empty string
2015-01-26 20:18:33 +01:00
Matthias Schiffer
c45a0bcdc1
gluon-core: fall back to eth0 for the primary MAC address when there is no WLAN device
2015-01-25 02:29:43 +01:00
Matthias Schiffer
9b172bbaf4
Move all upgrade scripts to a common directory
...
Moving the scripts to a common directory not only vastly simplifies the
zzz-gluon-upgrade script, but also allows to define an ordering of such
scripts across packages.
2015-01-24 11:27:47 +01:00
Matthias Schiffer
6f11279438
gluon-core: convert all initial scripts to invariant scripts
2015-01-24 11:14:09 +01:00
Matthias Schiffer
78b43b1dd6
gluon-core, gluon-setup-mode: fix LAN and WAN on nanostation-m-xw
2014-11-26 23:30:56 +01:00
Matthias Schiffer
9dd4f52bfa
CPE510-specific config (switch WAN and LAN, config mode on WAN)
2014-11-26 19:50:45 +01:00
Matthias Schiffer
1803525745
Configure unique MAC addresses for all WLAN interfaces
2014-09-15 19:55:09 +02:00
Matthias Schiffer
b51e1063b7
Add utility function to generate unique MAC addresses derived from the primary MAC
2014-09-15 19:55:09 +02:00
Nils Schneider
0de7bf5f64
gluon-core: port initial/020-wireless to lua
2014-09-15 19:50:10 +02:00
Nils Schneider
5fa97f8fdb
gluon-core: add node_id() to gluon.util
2014-09-11 12:27:29 +02:00