Commit Graph

477 Commits

Author SHA1 Message Date
flokli 10c42490fb gluon-announce: rename announce.lua to collect.lua
Signed-off-by: flokli <florian@darmstadt.freifunk.net>
2015-01-14 10:36:32 +01:00
flokli 1900730d5c gluon-announced: rename DEVLIST file to gluon-announced.devs
was gluon-announce.devs before

Signed-off-by: flokli <florian@darmstadt.freifunk.net>
2015-01-14 10:31:29 +01:00
flokli 85c26e4da2 gluon-announced: add dependency to gluon-announce
the gluon-announced package installs a hotplug script
that uses announce.lua from the gluon-announce package.

So we need to include gluon-announce as dependency.

Signed-off-by: flokli <florian@darmstadt.freifunk.net>
2015-01-14 06:20:28 +01:00
Matthias Schiffer 9f0fc73deb gluon-core, gluon-setup-mode: fix LAN and WAN on nanostation-m-xw 2014-11-26 23:30:56 +01:00
Matthias Schiffer 3d91fb8537 gluon-setup-mode: initialize all LEDs 2014-11-26 20:32:47 +01:00
Matthias Schiffer 9663e29b22 CPE510-specific config (switch WAN and LAN, config mode on WAN) 2014-11-26 19:50:45 +01:00
Matthias Schiffer eed0315cd2 gluon-status-page: remove workaround for now fixed LuCi bug 2014-11-17 16:22:05 +01:00
Nils Schneider 0eded54626 gluon-alfred: no parallel cronjobs
This should reduce memory consumption a little.

https://github.com/freifunk-gluon/gluon/issues/109#issuecomment-61681696
2014-11-17 15:36:06 +01:00
Matthias Schiffer 62ca03a274 gluon-status-page: show VPN status (very minimalistic for now) 2014-11-17 03:24:08 +01:00
Matthias Schiffer bff1441b0c gluon-mesh-vpn-fastd: configure a status socket 2014-11-17 03:23:36 +01:00
Matthias Schiffer 5f9fc05c06 gluon-ebtables-filter-multicast: allow hop-by-hop options as ICMPv6 is sometimes prefixed by an HBH header 2014-11-13 02:37:30 +01:00
Matthias Schiffer 3e5206d4f4 Merge remote-tracking branch 'origin/status-page-164' 2014-11-13 01:37:18 +01:00
Nils Schneider a270b9a67f status-page: escape html, move script to body 2014-11-13 01:36:38 +01:00
Nils Schneider 4e79c0437d status-page: lua rewrite, use gluon-neighbour-info 2014-10-27 23:21:40 +01:00
ohrensessel 8a349f4131 Fix ebtables dhcpv6 rules
the ports were interchanged, see the following packet flow:

client:546 --> [ff02::1:2]:547
server:547 --> client:546

therefore we need to allow outgoing multicast packets with dst-port 547
and unicast packets from bat0 to clients with dst-port 546 and 547 in the other direction
2014-10-19 16:02:30 +02:00
Kokel a4a75281db deactivate multicast_mode by default 2014-10-05 15:24:58 +02:00
Matthias Schiffer 567b8133f3 gluon-luci-admin: fix SSH keys being removed when a password is set 2014-10-03 00:47:48 +02:00
Matthias Schiffer 91a85c80ee gluon-mesh-vpn-fastd: use delete_all instead of foreach to delete the old peers 2014-09-15 21:50:43 +02:00
Matthias Schiffer 10ea4ecd55 Configure unique MAC addresses for all WLAN interfaces 2014-09-15 19:55:09 +02:00
Matthias Schiffer afecfc43f6 Add utility function to generate unique MAC addresses derived from the primary MAC 2014-09-15 19:55:09 +02:00
Matthias Schiffer 7f63515332 Fix mesh-batman-adv-core legacy script path 2014-09-15 19:55:09 +02:00
Matthias Schiffer 8ae79ac83b Remove obsolete legacy upgrade script 2014-09-15 19:55:09 +02:00
Nils Schneider 65f11b1c75 gluon-node-info: remove fixup-owner script 2014-09-15 19:54:30 +02:00
Nils Schneider d3aea8343b gluon-core: port initial/020-wireless to lua 2014-09-15 19:50:10 +02:00
Nils Schneider bb612c0b45 Merge pull request #74 from freifunk-gluon/authorized-keys
gluon-authorized-keys: add keys from site.conf
2014-09-15 19:20:01 +02:00
Nils Schneider 318cb29a0a gluon-authorized-keys: add keys from site.conf
This package will run as invariant script after each upgrade and copy
all keys from site.conf's authorized_keys entry to
/etc/dropbear/authorized_keys.

Existing keys will be preserved.

The site.conf entry 'authorized_keys' is required (if this package is
selected) and must contain a list of strings, each representing a line
of the resulting file.
2014-09-15 19:19:21 +02:00
Nils Schneider eb784fdd00 Merge pull request #69 from freifunk-gluon/gluon-neighbour-info
gluon-neighbour-info: query direct neighbours
2014-09-15 18:52:25 +02:00
Nils Schneider 52e704ee86 gluon-core: add node_id() to gluon.util 2014-09-11 12:27:29 +02:00
Nils Schneider 1fafaeb558 mesh-batman-adv-core: disable igmp_snooping on br-client
IGMP snooping causes serious trouble with IPv6 neighbour discovery.
2014-09-09 11:29:51 +02:00
Nils Schneider 862a480506 gluon-neighbour-info: global timeout 2014-09-06 15:40:03 +02:00
Nils Schneider 396ff9ce49 gluon-neighbour-info: newlines between responses 2014-09-06 14:10:43 +02:00
Nils Schneider da924e5a61 gluon-neighbour-info: cleanup, use recv instead of recvfrom 2014-09-06 14:02:19 +02:00
Nils Schneider aa9d6b662d Merge pull request #72 from freifunk-gluon/fastd-site-enable
mesh-vpn-fastd: enable from site.conf
2014-09-06 13:38:43 +02:00
Nils Schneider 31976c242d mesh-vpn-fastd: enable from site.conf
This patch allows fastd's enabled flag's default value to be set from
site.conf.
2014-09-03 20:37:17 +02:00
Jan-Philipp Litza 6160f1a966 gluon-core: Remove VERSION_DIR hack
As the (removed) comment said, this was a one-time-hack that was obsoleted long ago.
2014-08-30 15:13:52 +02:00
Nils Schneider 70f19a5596 gluon-neighbour-info: query direct neighbours
This is a simple client for gluon-announced.
2014-08-28 18:48:57 +02:00
Nils Schneider e4fc1955cc gluon-luci-admin: restructure firmware upgrades 2014-08-28 16:36:04 +02:00
NeoRaider 24d7f1e875 Merge pull request #68 from FreifunkBremen/gluon-cron-fix
gluon-cron: Fix endless loop parsing invalid lines
2014-08-27 10:33:34 +02:00
Jan-Philipp Litza 53e9630da1 gluon-cron: Fix endless loop parsing invalid lines
Using the line
```
* * * * echo "foobar"
```
(notice the missing fifth time field) in a crontab causes gluon-cron
to enter an endless loop while parsing it, thus it won't even execute
the other, valid crontabs.

This is caused by the loop in [line 138] where `begin - min`
substracts the unsigned `min` from the signed `begin`. If now `begin`
is invalid, `strict_atoi` returns -1 and the loop starts at
`(-1)-1=MAX_INT` and runs while `i <= MAX_INT` which is always true.

The real culprit lies in [line 134] where exactly this case
`begin < min` is checked - but because of the signedness, this check doesn't
work as expected either.

The easiest solution is to make `min` a signed integer instead of an unsigned
one, as we do not require it to be very large and only pass the constants 0 or
1 to it.

To avoid other similar problems, this patch makes the input variable `n` a
signed integer as well.
2014-08-27 10:20:04 +02:00
Nils Schneider 8a71c02ce6 gluon-announced: avoid spawning zombies 2014-08-25 21:53:21 +02:00
Nils Schneider 955cc686db Merge pull request #62 from freifunk-gluon/clientcount
mesh-batman-adv-core: add clientcount statistics
2014-08-22 14:40:09 +02:00
ohrensessel 5821b5b998 calculate rootfs usage instead of overlayfs
in case a target does not use overlayfs
2014-08-18 14:07:23 +02:00
ohrensessel 9bb443c6a6 adapt overlay_usage to match the comments from luebeck 2014-08-18 13:08:54 +02:00
ohrensessel ed50873b27 overlay: rename to clarify value 2014-08-18 12:12:00 +02:00
ohrensessel 155e261099 overlay: change to normalized, fix error handling 2014-08-18 12:10:54 +02:00
ohrensessel c64fbd8140 add overlay usage to statistics.d 2014-08-18 11:40:13 +02:00
Matthias Schiffer 6421f01502 Remove gluon-ath9k-workaround 2014-08-17 19:34:03 +02:00
Matthias Schiffer e7dfba0d03 gluon-setup-mode: cleanup and upgrade fix
Since switching to Barrier Breaker/procd, we'd not notice if we were
upgrading from a version before renaming the config file to gluon-setup-mode
as the upgrade scripts run after the preinit.

Fix this by checking later during setup mode init again and rebooting into the
regular run mode if we detect this case.
2014-08-16 15:15:24 +02:00
Matthias Schiffer f2eacad78b gluon-mesh-vpn-fastd: delete all old backbone peers on update 2014-08-16 14:51:18 +02:00
penguineer 6467e74224
Beschreibungstext umformuliert, damit die Option "Mesh-VPN" klarer wird.
Die Bezeichnung "Mesh-VPN" ist etwas irreführend. Man kann denken, dass hiermit das Meshing aktiviert wird, wobei es ja — im Gegenteil — um eine Nutzung des WAN geht.
2014-08-15 15:28:05 +02:00
Nils Schneider 28e332ae11 luci-portconfig: fix dns 2014-08-10 17:13:39 +02:00
Nils Schneider cb66d542db mesh-batman-adv-core: add clientcount statistics
This adds

  "client" { "total": <int>, "wifi": <int>" }

to statistics.d. "total" will be the number of clients connected.
"wifi" will be the number of clients connected over wifi. I.e. "total"
will always be equal to or greater than "wifi".

The node will not count itself.
2014-08-10 13:24:08 +02:00
Nils Schneider 9e1d5bb4f3 Merge pull request #61 from freifunk-gluon/configurable-wan
Configurable WAN
2014-08-09 23:31:19 +02:00
Nils Schneider a7360b0420 Merge pull request #59 from freifunk-gluon/form-fields
luci-theme: fix centering of form fields
2014-08-09 20:56:48 +02:00
Matthias Schiffer 78a15063ff gluon-luci-portconfig: expose advanced WAN configuration 2014-08-09 17:36:15 +02:00
Matthias Schiffer e210f372ab gluon-core: restructure WAN configuration 2014-08-09 14:39:21 +02:00
Matthias Schiffer 1b77ea6694 gluon-wan-dnsmasq: allow configuring static DNS servers 2014-08-09 14:39:05 +02:00
Nils Schneider f9f3243e4f luci-theme: fix checkboxes on firefox 2014-08-09 09:35:39 +02:00
Nils Schneider 2744293307 Merge pull request #58 from jplitza/patch-1
gluon-announced: fix help message
2014-08-08 21:44:11 +02:00
Matthias Schiffer 33ae97125c Add gluon-mesh-batman-adv-15 2014-08-08 15:56:36 +02:00
Matthias Schiffer 29c0d89e4c Split gluon-mesh-batman-adv into gluon-mesh-batman-adv-core and gluon-mesh-batman-adv-14 2014-08-08 15:50:52 +02:00
Nils Schneider 8cd3a53d73 luci-theme: fix centering of form fields 2014-08-08 14:53:27 +02:00
Jan-Philipp Litza d99a1c607d gluon-announced: fix help message
It incorrectly stated "-m" to be the multicast group option, when it really was "-g"
2014-08-08 14:50:00 +02:00
Nils Schneider ed53d89c5e Revert "gluon-luci-theme: remove top padding cbi-field-title"
This reverts commit f37f1f1ac2.
2014-08-08 14:34:19 +02:00
Matthias Schiffer 2d49f57704 gluon-setup-mode: provide alternative rc.d directory for procd 2014-08-07 15:52:38 +02:00
Julian Kornberger 99539da947 gluon-luci-private-wifi: fix package naming
previously it was gluon-luci-privatewifi
2014-08-06 23:21:33 +02:00
Matthias Schiffer 1eff492575 Remove gluon-luci-core
The package luci-base now contains everything we need.
2014-08-06 12:07:34 +02:00
Matthias Schiffer 02bc9f4e66 Dependency fixes for the new LuCi version 2014-08-06 12:06:49 +02:00
Matthias Schiffer af5ee991b2 gluon-setup-mode: change START to 15
To start after haveged after the recent update.
2014-08-06 11:45:26 +02:00
Nils Schneider e65cf26d53 Merge pull request #40 from digineo/private-wifi
gluon-luci-private-wifi: UI for enabling a private WLAN
2014-08-05 15:50:53 +02:00
Nils Schneider 887a7f57c6 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
Julian Kornberger dfc8dd27ba gluon-luci-wifi: UI for enabling a private WLAN
freifunk-gluon/gluon#122
2014-08-05 01:20:15 +02:00
Matthias Schiffer cc525066a0 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 9f1c6f0f46 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 4376ccfc89 gluon-announced: do not strdup optarg 2014-08-04 20:41:00 +02:00
Nils Schneider 52e2b9e159 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 b731fe1693 gluon-simple-tc: replace tc with own implementation to reduce size 2014-08-04 20:08:40 +02:00
Matthias Schiffer 54ce71d327 gluon-radvd: implement own radvd to reduce size 2014-08-04 20:08:40 +02:00
Matthias Schiffer 9c142642e0 Remove outdated IP dependencies 2014-08-04 20:08:40 +02:00
Matthias Schiffer 30e8c0e6bb gluon-mesh-batman-adv: don't parse ip output for nodeinfo 2014-08-04 20:08:40 +02:00
Matthias Schiffer 99d517e403 gluon-mesh-batman-adv: use lua-ethtool-stats instead of ethtool 2014-08-04 20:08:40 +02:00
Matthias Schiffer 8a0f252819 gluon-wan-dnsmasq: use libpacketmark 2014-08-03 11:07:28 +02:00
Matthias Schiffer 167e7d5a1c gluon-mesh-batman-adv: fix network.mesh_inferfaces announce field with new netifd 2014-07-28 16:29:20 +02:00
Nils Schneider 807a34639b 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 90aca7be99 gluon-autoupdater: perform fallback updates hourly 2014-07-25 16:55:00 +02:00
Matthias Schiffer 5a11c5f629 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 632cfb127d 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 253ce7e8f2 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 93a61df6da gluon-autoupdater: add version_file option to uci settings 2014-07-21 17:27:47 +02:00
Cyrus ef40aa28e8 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 52f54cf122 split announce.d into nodeinfo + statistics 2014-07-20 14:00:10 +02:00
Nils Schneider c46ca793d0 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 34f7618785 gluon-luci-admin: add an info page 2014-07-20 08:12:48 +02:00
Matthias Schiffer f37f1f1ac2 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 09909cac25 gluon-core: remove now unused dnsmasq.d support 2014-07-20 04:04:27 +02:00
Matthias Schiffer 5af1e58f08 gluon-mesh-vpn-fastd: use gluon-wan-dnsmasq 2014-07-20 04:03:43 +02:00
Matthias Schiffer 4052bccaa3 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 07056250c3 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 d42b7247c3 gluon-simple-tc: add site validator 2014-07-16 17:31:40 +02:00
Matthias Schiffer bd4e26f12f gluon-simple-tc: change type of the enabled option in the site config to boolean 2014-07-16 16:56:15 +02:00