Commit Graph

356 Commits

Author SHA1 Message Date
Nils Schneider
3aecc92073 gluon-config-mode: modularize wizard
This commit splits gluon-config-mode into several, mostly independent
packages.

* gluon-config-mode-core: basic functionality (required)
* gluon-config-mode-hostname: hostname field
* gluon-config-mode-autoupdater: show when autoupdater is enabled
* gluon-config-mode-mesh-vpn: fastd vpn configuration, bw limit
* gluon-config-mode-geo-location: geo coordinates
* gluon-config-mode-contact-info: contact info field

The package gluon-config-mode has been removed. You need to replace
it with these packages (or any subset of them) in site.mk:

* gluon-config-mode-hostname
* gluon-config-mode-autoupdater
* gluon-config-mode-mesh-vpn
* gluon-config-mode-geo-location
* gluon-config-mode-contact-info

Note: It is not possible to deactivate the autoupdater in config mode
anymore (expert mode will still allow it). Instead, a message is shown
in case the autoupdater is enabled.
2014-08-05 14:56:45 +02:00
Matthias Schiffer
07ce01517c gluon-radvd: fix NULL deref
The specification says that the ifa_addr field of struct ifaddrs may be NULL,
and in Barrier Breaker, this does actually occur...
2014-08-04 22:57:26 +02:00
Nils Schneider
ce1a160bcc gluon-config-mode: mention reboot on button
Make it clear that saving settings will reboot the device.
2014-08-04 20:46:33 +02:00
Nils Schneider
74dfce8a30 gluon-announced: do not strdup optarg 2014-08-04 20:41:00 +02:00
Nils Schneider
a7a8f37308 Merge pull request #53 from freifunk-gluon/fastd-key-generate
config-mode, mesh-vpn: refactor key generation
2014-08-04 20:32:03 +02:00
Matthias Schiffer
8f6ec2fb4b gluon-simple-tc: replace tc with own implementation to reduce size 2014-08-04 20:08:40 +02:00
Matthias Schiffer
4732de1f82 gluon-radvd: implement own radvd to reduce size 2014-08-04 20:08:40 +02:00
Matthias Schiffer
bce2f19a8c Remove outdated IP dependencies 2014-08-04 20:08:40 +02:00
Matthias Schiffer
117f9b4662 gluon-mesh-batman-adv: don't parse ip output for nodeinfo 2014-08-04 20:08:40 +02:00
Matthias Schiffer
4795fc4a50 gluon-mesh-batman-adv: use lua-ethtool-stats instead of ethtool 2014-08-04 20:08:40 +02:00
Matthias Schiffer
7b0ed188b0 gluon-wan-dnsmasq: use libpacketmark 2014-08-03 11:07:28 +02:00
Matthias Schiffer
354508752c gluon-mesh-batman-adv: fix network.mesh_inferfaces announce field with new netifd 2014-07-28 16:29:20 +02:00
Nils Schneider
2f5705b5de config-mode, mesh-vpn: refactor key generation
Previously, the config-mode was responsible for generating the fastd
secret. This patch sets the default secret to "generate" causing a
secret to be generated on its first use (e.g. show_key or start).

This also changes the info page (in Expert Mode) to show "n/a" when the
public key is not yet available.
2014-07-27 16:22:40 +02:00
Matthias Schiffer
9510d03b8b gluon-autoupdater: perform fallback updates hourly 2014-07-25 16:55:00 +02:00
Matthias Schiffer
35d8ff579f gluon-autoupdater: unconditionally perform an update 5 minutes after boot when the whole PRIORITY delay has passed 2014-07-21 17:27:47 +02:00
Matthias Schiffer
a39f527dad gluon-autoupdater: add locking to ensure no two instances of the autoupdater run in parallel 2014-07-21 17:27:47 +02:00
Matthias Schiffer
bb2adefd34 gluon-autoupdater: adjust for new updater logic
The probability field is removed, updates are performed once per night between
04:00 and 05:00.
2014-07-21 17:27:47 +02:00
Matthias Schiffer
059ea7e5fd gluon-autoupdater: add version_file option to uci settings 2014-07-21 17:27:47 +02:00
Cyrus
cfc4a99307 Fixed bug which led to empty ath9k crontab file
The crontab file was opened in write mode but in the case where no monitor is defined it would leave an empty file.
2014-07-20 16:30:36 +02:00
Nils Schneider
0a3bf70d56 split announce.d into nodeinfo + statistics 2014-07-20 14:00:10 +02:00
Nils Schneider
a9c22c5ace gluon-core: add unique node_id
This adds a `node_id` to announce.d. `node_id` is an hex-number uniquely
identifying a particular node. On nodes having a
primary MAC this MAC address will be used as `node_id` (sans the
colons). The value is opaque. It must not be converted back into
a MAC address.

`node_id` should be sent in all alfred and announced packets to
ensure clients can link the data to a particular node.
2014-07-20 11:24:47 +02:00
Matthias Schiffer
12144126fe gluon-luci-admin: add an info page 2014-07-20 08:12:48 +02:00
Matthias Schiffer
71c9bb815f gluon-luci-theme: remove top padding cbi-field-title
This allows to use cbi-field to format plain text instead of form fields.
2014-07-20 08:12:48 +02:00
Matthias Schiffer
971dec8d27 gluon-core: remove now unused dnsmasq.d support 2014-07-20 04:04:27 +02:00
Matthias Schiffer
e9376fc3bd gluon-mesh-vpn-fastd: use gluon-wan-dnsmasq 2014-07-20 04:03:43 +02:00
Matthias Schiffer
f389ef925e Add new package gluon-wan-dnsmasq
This package provides a secondary dnsmasq instance on port 54 which resolves
everything over the WAN interface.
2014-07-20 03:25:22 +02:00
Matthias Schiffer
d638359215 Explicitly set the WAN MAC address on all models where WAN is a VLAN device
Also move it to gluon-mesh-batman-adv, as mesh_on_wan is the only feature that
needs a unique MAC address on the WAN interface.
2014-07-19 18:40:12 +02:00
Matthias Schiffer
f792997bb1 gluon-simple-tc: add site validator 2014-07-16 17:31:40 +02:00
Matthias Schiffer
de633e9bc3 gluon-simple-tc: change type of the enabled option in the site config to boolean 2014-07-16 16:56:15 +02:00
Matthias Schiffer
ce37755488 gluon-mesh-batman-adv: validate mesh_on_wan option 2014-07-16 16:44:33 +02:00
Nils Schneider
e2d9bd5160 Merge pull request #27 from freifunk-gluon/batman-on-wan
gluon-batman-on-wan + gluon-luci-portconfig
2014-07-16 16:30:36 +02:00
Nils Schneider
d2d3a7b628 gluon-batman-on-wan + gluon-luci-portconfig 2014-07-16 16:11:31 +02:00
ohrensessel
a25a56c0e8 gluon-ath9k-workaround: fix path of announce.d directory 2014-07-15 19:06:26 +02:00
Matthias Schiffer
baebeee98f gluon-luci-admin: support disabling password login again 2014-07-14 22:09:43 +02:00
Matthias Schiffer
e5999b3f44 gluon-luci-admin: allow removing all SSH keys 2014-07-14 18:56:49 +02:00
Matthias Schiffer
74d29bcdc9 gluon-mesh-batman-adv: fix mesh config script 2014-07-14 18:23:56 +02:00
Matthias Schiffer
16060d25d5 Move essential firewall rules from gluon-firewall to gluon-core and gluon-mesh-batman-adv
The now empty gluon-firewall is removed.
2014-07-14 17:53:41 +02:00
Matthias Schiffer
efe81b1c1c Merge branch 'gluon-announced' of https://github.com/freifunk-gluon/packages 2014-07-14 16:52:10 +02:00
Matthias Schiffer
a64483a3fc Merge branch 'mesh-announce-interfaces' of https://github.com/freifunk-gluon/packages 2014-07-14 16:50:54 +02:00
Nils Schneider
09e1de7dde gluon-announced: send nodeinformation on request
This is a simple daemon that will respond to multicast UDP packets
containing the keyword "nodeinfo" with all the information we
currently distribute using alfred.

The daemon will listen on all mesh interface, that is the hard
interfaces batman-adv uses.
2014-07-14 16:50:26 +02:00
Nils Schneider
b2a55f29d4 Merge pull request #35 from sargon/ath9k
gluon-ath9k-workaround: Announce how often the workaround has been trigg...
2014-07-13 09:13:30 +02:00
Nils Schneider
ae4c130c74 gluon-mesh-batman-adv: announce MAC of mesh ifaces
This will make a node announce all MACs of its interfaces participating
in the batman-adv mesh. This enables other nodes to associate the
announced object with both the data reported by batadv-vis as well as a
simple list of neighbours as output by `iw dev $IFACE station dump`.
2014-07-13 09:06:32 +02:00
Matthias Schiffer
eae6c25de6 Add support for IPv6 mesh VPN connections
The support is still very limited (IPv6-only DNS on WAN doesn't work yet), and
we now need fastd running as root, but apart from that, is should work.
2014-07-11 16:57:28 +02:00
NeoRaider
0312167fcd Merge pull request #36 from freifunk-gluon/gluon-announce
gluon-announce: detach announce.d from alfred
2014-07-11 14:45:40 +02:00
Nils Schneider
318e9d1a1d gluon-announce: detach announce.d from alfred
All announce.d scripts have been moved to /lib/gluon/announce/announce.d
The script /lib/gluon/announce/announce.lua will collect all information
and output json.
2014-07-11 14:43:47 +02:00
Matthias Schiffer
4d80b7a62d Split parts not Gluon-specific out of gluon-autoupdater 2014-07-11 14:06:42 +02:00
Matthias Schiffer
58ced87261 Use nicer platform match 2014-07-11 12:11:47 +02:00
Matthias Schiffer
6f1777b072 gluon-core: add platform utility module 2014-07-11 11:36:53 +02:00
Matthias Schiffer
1a52c6bdf2 gluon-core: remove sysconfig.sh 2014-07-10 23:45:03 +02:00
Matthias Schiffer
f73d727ae6 Remove all remaining uses of sysconfig.sh 2014-07-10 23:44:06 +02:00