Commit Graph

1063 Commits

Author SHA1 Message Date
Matthias Schiffer
077dbe3c08 gluon-status-page-api: decrease dyn/statistics event frequency
The statistics data is now cached for 5s, no need to send an event every
second. The new interval is 3s, which is coprime with the cache timeout.
2015-12-18 17:45:45 +01:00
Matthias Schiffer
48d24c2674 gluon-announce: enable caching 2015-12-18 17:43:16 +01:00
Matthias Schiffer
eba7ecbbc0 gluon-announced: add support for caching announced data 2015-12-18 17:43:12 +01:00
Matthias Schiffer
5927fd66db gluon-status-page: filter out duplicate events in statistics event stream
Allows simple handling of cached events.
2015-12-18 17:37:48 +01:00
Matthias Schiffer
5ecb8a7366 gluon-mesh-vpn-fastd: gluon-annouced: fix fastd status always being reported as enabled 2015-12-08 22:47:32 +01:00
Nils Schneider
0bb530d1c6 gluon-status-page: fix display of rx and tx traffic
On the status page statistics section counters for transmitted and received traffic were mixed up. Transmitted traffic was shown as received while received traffic was shown as being transmitted.

Fixes #586
2015-12-07 13:44:17 +01:00
Matthias Schiffer
9c7582afe0 gluon-luci-private-wifi: fix typo in code file and regenerate translation files (correctly this time) 2015-11-27 14:33:56 +01:00
Matthias Schiffer
7f0fe061dc gluon-luci-private-wifi: fix translation files 2015-11-27 09:49:12 +01:00
Matthias Schiffer
d428576ec5 Merge pull request #552 from freifunk-gluon/disable-mesh
gluon-mesh-batman-adv-core: keep disabled state even when the mesh interface section name is changed
2015-11-23 00:42:39 +01:00
Matthias Schiffer
81b2142e65 Merge branch 'patch-1' of https://github.com/ohrensessel/gluon 2015-11-22 23:28:39 +01:00
Matthias Schiffer
0335ce10e2 gluon-mesh-batman-adv-core: keep disabled state even when the mesh interface section name is changed
Is makes sense to always look for both ibss_radio* and mesh_radio* sections
to determine if the meshing should be enabled when regenerating these
sections. Doing this, the disabled state will survive updates changing the
section name (either updating from pre-2015.2 while keeping IBSS, or
changing from IBSS to 11s or vice-versa).

If both ibss_radio* and mesh_radio* sections exist, the disabled state will
be kept correctly for each section, the behaviour is changed only when
creating a section that didn't exist before.

Fixes #549
2015-11-18 03:01:18 +01:00
Matthias Schiffer
e528977100 gluon-site: set PKG_FILE_DEPENDS to site.conf and i18n/ only
PKG_FILE_DEPENDS caused the whole site repo to be hashed to determine if
gluon-site needed rebuilding. While this is normally no problem,
alternative build setups sometimes put the Gluon repo inside the site repo,
causing long build times and parallel build failures.
2015-11-18 02:39:05 +01:00
Leo Krueger
bc15b6c810 gluon-ebtables-filter-multicast: drop icmpv6 type 128 & 139, drop icmp
in a layer 2 mesh network, multicast pings cause a lot of traffic in the
network, significantly increasing the 'backgroudn noise' (= Grundrauschen)
and stressing nodes in the network.

this commit blacklists all icmpv4 multicast traffic as well as multicast
icmpv6 echo-requests and node iformation queries. as no application
depending on these types of multicast traffic is known, blacklisting is safe.
2015-11-12 21:16:37 +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
3647cf1d18 Remove leftover file from gluon-radio-config 2015-10-27 01:57:10 +01:00
Matthias Schiffer
9b46a05de7 Merge pull request #450 from freifunk-gluon/status-page
gluon-status-page: new status page
2015-10-26 22:55:00 +01:00
Matthias Schiffer
557a073dc7 gluon-mesh-batman-adv-core/gluon-luci-portconfig: fix configuration of br-client ifname with multiple interfaces in lan_ifname
There are a few devices on which lan_ifname contains multiple interface
names separated by spaces.
2015-10-26 22:29:44 +01:00
Nils Schneider
84b6374970 gluon-client-bridge: basic br-client config and wireless AP
This package provides br-client and sets up a wireless AP interface for
clients.
2015-10-26 21:14:32 +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
53211b5b46 Replace gluon-cron by micrond 2015-10-15 23:52:30 +02:00
Matthias Schiffer
d0a78ea8ba Merge branch 'opkg' 2015-10-15 22:28:41 +02:00
Matthias Schiffer
45d1d04ae3 Merge branch 'simple-tc' 2015-10-15 22:28:32 +02:00
Matthias Schiffer
2fefdeee63 gluon-mesh-batman-adv-core: neighbours.d/wifi: output empty object instead of empty list when there are no neighbours on an interface 2015-10-15 02:42:28 +02:00
Matthias Schiffer
26682b24b3 Replace gluon-simple-tc by non-Gluon-specific simple-tc
The Gluon-specific functions of the gluon-simple-tc package are moved to
gluon-mesh-vpn-fastd.
2015-10-15 02:38:47 +02:00
Jan-Philipp Litza
daa15290ab gluon-announce: Remove now unused collect.lua
The file promotes the probably unnecessary re-execution of the announce
scripts. Instead, gluon-announced should be queried using

    gluon-neighbour-info -d ::1 -p 1001 -t0 -r nodeinfo

if both gluon-announced and gluon-neighbour-info are present. But to not
depend on any of those, no script for this one-liner is provided.
2015-10-15 01:49:20 +02:00
Jan-Philipp Litza
bae6519279 gluon-alfred/gluon-status-page: Query gluon-announced
By not executing all scripts from gluon.announce themselves, both should
be considerably faster and lighter on RAM usage.
2015-10-15 01:49:20 +02:00
Jan-Philipp Litza
d2ff7d5c22 gluon-neighbour-info: Add -l and -c parameter, make event type for -s configurable 2015-10-15 01:49:20 +02:00
Matthias Schiffer
3725f7bca3 Merge remote-tracking branch 'origin/announce.d' 2015-10-15 01:31:05 +02: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
Matthias Schiffer
b46d4fd537 gluon-mesh-batman-adv-core: make gateway selection class configurable
Fixes #401
2015-10-12 21:49:02 +02:00
Nils Schneider
9dffb1284f gluon-announce(d): preload functions, collectgarbage
By calling collectgarbage() at various places I was able to reduce heap
usage by ~270kb.
2015-10-12 20:54:03 +02:00
Nils Schneider
435ded0c60 gluon-announce: build a tree of functions first
collect_dir() will now pre-load all files and return a function that will
collect all information.
2015-10-12 20:54:03 +02:00
Matthias Schiffer
a22c808634 Merge pull request #466 from kb-light/11s-mesh-dev
gluon-mesh-batman-adv-core: prepare for 802.11s mesh
2015-10-11 23:01:08 +02:00
Matthias Schiffer
12f9df7e86 gluon-config-mode-core: don't throw error when no config mode modules are installed
The expert mode can still be useful without any cohfig mode modules.
2015-10-11 21:19:28 +02:00
Matthias Schiffer
05f146f817 Validate section names from site.conf in various packages 2015-10-11 19:34:14 +02:00
Ruben Barkow
06a2b2b1d1 gluon-luci-private-wifi: typo seperaten 2015-10-09 11:59:12 +02:00
Matthias Schiffer
98542b015d i18n: s/noeud/nœud/ 2015-10-08 22:16:25 +02:00
kb-light
955dc886a8 gluon-mesh-batman-adv-core: prepare for 802.11s mesh
keep macfilter and maclist config after fw-update
2015-09-22 10:48:09 +02:00
srauscher
16888d214d Add french translation 2015-09-17 07:28:09 +02:00
Alex
b465504ae8 add: info for 802.11s interface
additional information for commit 2a93c58042
2015-09-13 14:32:53 +02:00
Nils Schneider
014f5751c8 gluon-status-page-api: increase uhttp.max_requests to 32
Now that the status page api has been rewritten in C CPU load and memory
usage is much lower. Also, nodes with both ibss and 11s mesh and dual
band wifi may require up to 9 connections for a single client, thus the
previous limit of 12 seemed a little low.
2015-09-05 12:11:35 +02:00
Nils Schneider
8be372a590 gluon-status-page-api: rewrite stations in C 2015-09-05 12:11:33 +02:00
Nils Schneider
4b8f6c9835 gluon-status-page-api: rewrite neighbours-batadv in C 2015-09-05 11:47:44 +02:00
Nils Schneider
431ac81407 gluon-status-page-api: split API from gluon-status-page
This will make it easier to replace the API with C programs.
2015-09-05 11:47:44 +02:00
Nils Schneider
5e5dc5ab18 gluon-status-page: new status page 2015-09-04 20:50:18 +02:00
Nils Schneider
34752c7e0b br-client: convert option ifname to list ifname
Convert option ifname in br-client to use a list instead. This
simplifies adding and remove interfaces:

uci:add_to_set("network", "client", "ifname", "eth0")
uci:remove_from_set("network", "client", "ifname", "eth0")

An option ifname will be automatically converted to a list when
performing an upgrade.

Packages affected: gluon-mesh-batman-adv-core, gluon-luci-portconfig
2015-09-04 20:31:53 +02:00
Matthias Schiffer
faba9efb88 Merge branch 'jsonc-sink' of https://github.com/FreifunkBremen/gluon 2015-09-04 17:15:58 +02:00
Jan-Philipp Litza
961e6cc1c0 Add sink support to luci-lib-jsonc and use it where needed 2015-09-04 12:27:45 +02:00
Nils Schneider
96033758ab Merge pull request #473 from FreifunkBremen/batctl-if-lua
Don't fork batctl from announce scripts
2015-09-04 11:40:00 +02:00
Jan-Philipp Litza
bccf4f7b21 gluon-mesh-batman-adv-core: Add lua code for iface listing, don't fork 2015-09-03 16:33:13 +02:00
Matthias Schiffer
3599d8912b Merge branch 'slim-down-lua-scripts' of https://github.com/FreifunkBremen/gluon 2015-09-03 15:29:27 +02:00
Nils Schneider
21935ffc81 gluon-status-page: set html encoding to utf-8 2015-09-02 21:19:41 +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
Matthias Schiffer
a25d00ddce Merge branch 'feature-optional-thekey' of https://github.com/FreifunkBremen/gluon 2015-08-31 00:42:54 +02:00
Matthias Schiffer
d97586dd89 Merge branch 'announce-separate-frequencies' of https://github.com/FreifunkBremen/gluon 2015-08-30 23:53:36 +02:00
Jan-Philipp Litza
89a9d8138c gluon-mesh-batman-adv-core: Announce client count by frequency 2015-08-30 23:39:45 +02:00
Jan-Philipp Litza
eb590bdc12 gluon-config-mode-mesh-vpn: Move display of key to translations
When rebooting the node in config mode, currently the fastd key is
forcefully displayed in a fixed format. This is confusing in communities
where fastd accepts all keys and no key submission is needed.
Furthermore, some communities might want to personalize the display of
the key (see #387).

This patch moves the displaying <div> from the package's lua file to the
translation files of the sample site configuration and mentiones the
change in the release notes.
2015-08-30 21:55:29 +02:00
Jan-Philipp Litza
15a80aaffd Switch from luci-lib-json to luci-lib-jsonc
Apart from replacing a patch for the former by two patches for latter,
this involved minimal adaptations of the lua scripts in the following
packages:

* gluon-announce
* gluon-announced
* gluon-mesh-batman-adv-core
* gluon-status-page
2015-08-30 21:05:13 +02:00
Matthias Schiffer
4405f39869 Merge remote-tracking branch 'origin/radio-config' 2015-08-29 02:36:38 +02:00
kb-light
753c1f9e2a gluon-status-page: handle 11s interfaces 2015-08-23 23:19:28 +02:00
Nils Schneider
6906ef9de6 gluon-radvd: use uradvd 2015-08-19 21:20:50 +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
86773d7628 gluon-luci-wifi-config: add support for new WLAN configuration 2015-08-07 18:36:13 +02:00
Matthias Schiffer
26c6a787f6 Merge remote-tracking branch 'origin/flexible-wifi' 2015-08-07 17:45:23 +02:00
Nils Schneider
2a93c58042 mesh-batadv-core: introduce 11s mesh, refactor wireless config
This is a site.conf-breaking change in regard to the wireless config.
Make sure to read http://gluon.readthedocs.org/en/latest/user/site.html
and update your site.conf accordingly!

Support for 802.11s mesh interfaces has been added. Gluon now supports
three interface types: ap, ibss and mesh. All of them are now optional
and may be configured independently in site.conf.

A sample site.conf may look like this:

    wifi24 = {
            channel = 1,
            htmode = 'HT40+',
            ap = {
                    ssid = 'luebeck.freifunk.net',
            },
            ibss = {
                    ssid = '02:d1:11:37:fc:38',
                    bssid = '02:d1:11:37:fc:38',
                    mcast_rate = 12000,
            },
            mesh = {
                    id = 'ffhl-mesh',
                    mcast_rate = 12000,
            },
    },
2015-08-04 23:05:29 +02:00
Nils Schneider
d9df118686 gluon-wan-dnsmasq: fix usage of libpacketmark
Using service_start requires exporting of environment variables.

Fixes #397
2015-08-04 22:51:40 +02:00
Jan-Philipp Litza
4e5b3354d2 gluon-mesh-batman-adv-core: Only announce valid IPv6 addresses
The nodeinfo/network/addresses announcement included deprecated and
tentative addresses, which it clearly shouldn't as the host doesn't want
to be contacted on those addresses. They are now filtered out.
2015-08-04 00:11:45 +02:00
Matthias Schiffer
f6498e8773 Update modules 2015-07-18 18:02:13 +02:00
Matthias Schiffer
88ed124d5e Merge remote-tracking branch 'origin/on-link' 2015-07-12 18:23:08 +02:00
Matthias Schiffer
aa33a94ea7 Merge pull request #411 from FreifunkBremen/feature-neighbour-info-timeout
gluon-neighbour-info: Support sub-second timeout
2015-07-12 16:42:28 +02:00
Matthias Schiffer
e878155601 gluon-luci-admin: fix setting the password
This was broken due to the switch to Chaos Calmer.
2015-07-12 16:31:00 +02:00
Matthias Schiffer
34e0451e45 gluon-mesh-batman-adv-core: unconditionally set the WAN MAC address
This fixes MAC address conflicts on devices which use the eth0 as primary
address.
2015-07-11 18:27:35 +02:00
Matthias Schiffer
f5764a4a7b gluon-mesh-batman-adv-core: adjust rssid config to renamed WLAN interfaces
This should fix the signal strength indicators on the TP-Link CPE210/510.
2015-07-10 20:58:46 +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
Jan-Philipp Litza
9f91a5f841 gluon-neighbour-info: Support sub-second timeout 2015-07-09 20:18:11 +02:00
Nils Schneider
1c4b179dd2 gluon-config-mode-geo-location: translate "altitude" to "Höhe" 2015-07-08 23:18:42 +02:00
Hans-Werner Hilse
66060cf08a gluon-neighbour-info: Do not use error()
error() is a glibc specific function and should not be used in
code meant to be portable.
2015-07-06 09:37:22 +02:00
Nils Schneider
6ced715e13 Merge pull request #371 from freifunk-gluon/status-page-api
gluon-status-page: API
2015-06-29 17:33:04 +02:00
Nils Schneider
4f8ce12325 uhttpd: set max_requests to 12
This limits the number of concurrent users to 2 or 3 (approx. 4 connections per
user), greatly reducing DoS potential.
2015-06-29 12:03:01 +02:00
Nils Schneider
28668c8c52 gluon-status-page: API 2015-06-29 12:03:01 +02:00
Matthias Schiffer
68a3b5f394 gluon-announce, ...: don't output empty lists where not appropriate
Always output empty objects or nothing at all where objects are expected, but
no elements exist.

Also remove a few unneeded "requires", a few basic modules are provided by
announce.lua by default.
2015-06-15 21:17:00 +02:00
Matthias Schiffer
317478e2b7 gluon-mesh-batman-adv-core: don't break network configuration on upgrades with mesh_on_lan=true 2015-05-28 01:44:25 +02:00
Nils Schneider
a42db7a71f gluon-luci-admin: fix translation of "Export Mode"
Export Mode -> Expert Mode
2015-05-22 11:51:32 +02:00
Matthias Schiffer
ab10be9f50 We're on Chaos Calmer now 2015-05-22 01:09:19 +02:00
Matthias Schiffer
6a31830600 gluon-mesh-batman-adv-core: always set hop penalty to 15
15 is the default in batman-adv-legacy, the new default 30 in newer batman-adv
versions is too high in larger networks.
2015-05-16 14:00:06 +02:00
Nils Schneider
e8a483c9a1 luci-wifi-config: don't disable mesh interface
fixes #365
2015-05-09 22:10:32 +02:00
Nils Schneider
2164893616 gluon-radvd: on-link flag
By introducing a new option -a in addition to -p this patch allows
controlling the on-link flag of announcements.

A prefix specified using -a will have the on-link flag set to zero
while a prefix specified using -p will retain its behaviour (i.e.
on-link flag set).

Example:

    gluon-radvd -i local-node -p 2001:db8:aaaa:/64 -a 2001:db8:bbbb::/64

This will announce 2001:db8:aaaa::/64 with the on-link flag set and
2001:db8:bbbb::/64 with the flag unset.
2015-05-08 21:46:12 +02:00
Matthias Schiffer
6d2741c024 gluon-luci-mesh-vpn-fastd: minor text change 2015-05-07 02:23:32 +02:00
Matthias Schiffer
a258092760 Merge remote-tracking branch 'origin/mesh-on-lan' 2015-05-06 23:55:04 +02:00
Matthias Schiffer
1e427c4e77 Merge branch 'configurable-methods' 2015-05-06 23:54:17 +02:00
Nils Schneider
d4c3467bc3 luci-portconfig: allow toggling of mesh_on_lan 2015-05-06 13:57:46 +02:00
Nils Schneider
39d0c8f459 mesh-batman-adv: mesh_on_lan
This adds mesh_on_lan functionality.

A new optional site.conf option, mesh_on_lan, has been added. If set to
'true', all LAN ports will be used for meshing instead of being part of
the client bridge.
2015-05-06 13:57:46 +02:00
Matthias Schiffer
cd00eeb367 Merge remote-tracking branch 'origin/meshinterfaces' 2015-05-04 19:28:28 +02:00
Nils Schneider
a349dd07bd nodeinfo: mesh interface classes (wireless, tunnel, other)
This will introduce a new nodeinfo object, network.mesh.bat0.interfaces,
containing any of the the following subordinated objects:

- wireless
- tunnel
- other

Each of these objects contains a (possibly empty) list of MAC addresses
(lowercase, colon-notation) corresponding to a interface of the given
class. Combined with a batman graph it is thus possible to mark
sub-graphs as "wireless" or "vpn".

The previously used object mesh_intefaces is superseded by this new
object structure and mesh_interfaces will be removed in a future Gluon
release.
2015-05-04 19:15:39 +02:00
Matthias Schiffer
fadfc64e16 gluon-luci-wifi-config: don't use luci.sys.wifi.getiwinfo()
Directly using libiwinfo is more reliable.
2015-05-04 19:07:33 +02:00
Matthias Schiffer
f4a3f73fcb gluon-luci-private-wifi: various fixes and cleanup
It would be nice to generalize this to work with multiple radios, maybe by
integrating it into the wifi-config module...
2015-05-04 04:44:12 +02:00
Matthias Schiffer
6fc1db3a70 gluon-luci-wifi-config: add txpower setting
Fixes #219
2015-05-04 04:34:23 +02:00
Matthias Schiffer
76607b0070 Add new package gluon-luci-mesh-vpn-fastd
This new package allows enabling or disabling the null method for the
fastd mesh VPN.
2015-05-04 03:09:36 +02:00
Matthias Schiffer
ce2f494e0c gluon-luci-theme: add cbi-value-field-long class
This new class allows visually pleasing lists of radio buttons/checkboxes/etc.
with long explanation texts.
2015-05-04 03:09:35 +02:00
Matthias Schiffer
a50cce4e09 gluon-mesh-vpn-fastd: make adding or removing the null method survive updates (if desired) 2015-05-04 03:09:07 +02:00
Matthias Schiffer
b76e1a9e48 gluon-luci-wifi-config: i18n and miscellaneous fixes 2015-05-04 03:04:25 +02:00
Matthias Schiffer
4b06bc6a3d gluon-luci-theme: don't color section titles
All other titles are grey, the magenta-colored section titles inbetween look
weird.
2015-05-04 02:49:40 +02:00
Matthias Schiffer
a02d7ad800 gluon-luci-private-wifi: i18n 2015-05-04 02:43:48 +02:00
Matthias Schiffer
56c8fe5145 gluon-luci-autoupdater: order next to the manual upgrades in the navigation 2015-05-04 02:17:38 +02:00
Matthias Schiffer
cdc16af1bd gluon-luci-portconfig: i18n 2015-05-04 02:15:22 +02:00
Matthias Schiffer
fe265126a9 gluon-luci-autoupdater: i18n 2015-05-04 01:57:50 +02:00
Matthias Schiffer
e1f2ac11b6 gluon-luci-admin: i18n 2015-05-04 01:29:29 +02:00
Matthias Schiffer
623966afae gluon-luci-theme: more consistent button spacing 2015-05-04 01:29:03 +02:00
Matthias Schiffer
4d7e84b405 gluon-config-mode-core: nicer LuCI view filenames 2015-05-03 01:58:07 +02:00
Matthias Schiffer
1838cee0d6 gluon-setup-mode: set br-setup MAC address to the primary MAC address
This allows to reach the node in setup mode over the same link-local IPv6
address as br-client uses during normal operation.
2015-05-01 19:57:45 +02:00
Matthias Schiffer
2deb82bcb6 gluon-setup-mode: set regdom
OpenWrt doesn't set the regdom unless a WLAN device is started. Explicitly set
the regdom in the setup mode to get the correct list of allowed txpower entries
in the planned LuCI module.
2015-05-01 19:50:40 +02:00
Hendrik Lüth
34d48501cf fix the data types in the check_site.lua 2015-05-01 05:36:50 +02:00
Matthias Schiffer
f1b5692c2c Merge pull request #344 from do9xe/master
Add the package gluon-luci-wifi-config
2015-05-01 00:17:12 +02:00
Matthias Schiffer
1b7c3e060b gluon-luci-node-role: make node role display strings translatable 2015-04-30 23:48:07 +02:00
Matthias Schiffer
82983c871e Merge branch 'i18n' of https://github.com/freifunk-mwu/gluon 2015-04-30 22:22:30 +02:00
Matthias Schiffer
00c47f2912 gluon-mesh-vpn-fastd: extend site configuration to allow multiple and nested peer groups 2015-04-30 13:05:15 +02:00
kokel
25d8b18f7a gluon-luci-node-role: activate reset button 2015-04-28 17:22:38 +02:00
Kokel
0c80e7863f gluon-luci-node-role: add translations 2015-04-28 17:22:38 +02:00
do9xe
e0a1bf5f9a add the package gluon-luci-wifi-config 2015-04-28 07:10:47 +02:00
Matthias Schiffer
6bcd9b92d4 gluon-announced: allow announced queries on WAN (if mesh-on-wan is enabled) 2015-04-28 05:25:56 +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
5aa6838828 Introduce virtual packages for gluon-setup-mode and gluon-config-mode-core
This will require site.mk to explicitly pull in the gluon-setup-mode and
gluon-config-mode-core packages.
2015-04-26 13:16:23 +02:00
Matthias Schiffer
6ee65907a4 gluon-announce: add number of CPUs 2015-04-25 23:25:26 +02:00
Matthias Schiffer
53dac66a04 Merge branch 'survive-upgrades' of https://github.com/do9xe/gluon 2015-04-25 21:44:00 +02:00
DO9XE
44beb0c178 gluon-mesh-batman-adv-core: make wireless-disable state survive updates and allow site option 2015-04-25 21:38:57 +02:00
Matthias Schiffer
5d8aee0559 gluon-config-mode-geo-location: add "Altitude" string to the POT file 2015-04-25 18:40:19 +02:00
Matthias Schiffer
d7fb0c7fa0 gluon-announced: use respondd
This also adds an extended query protocol and deflate compression.
2015-04-23 18:36:00 +02:00
Matthias Schiffer
62de29cb67 gluon-announce: don't make the lua module executable 2015-04-23 18:27:15 +02:00
bjoern
c4f7a52621 gluon-config-mode-mesh-vpn: Remove trailing newline from pubkey variable in 0100-mesh-vpn.lua 2015-04-10 23:00:13 +02:00
Jan-Philipp Litza
ba9ce051b0 gluon-announce: Fix permissions of collect.lua 2015-04-08 21:16:55 +02:00
Matthias Schiffer
cd34cb2ebb gluon-core, gluon-setup-mode: improve support for UAP Outdoor+ 2015-04-08 00:44:12 +02:00
Matthias Schiffer
a476dd4e33 gluon-site: remove PO template, it is maintained in the site-example
Having two POT files will only cause confusion.
2015-03-25 17:43:37 +01:00
Matthias Schiffer
a97116b909 Remove english .po files, they are redundant. 2015-03-25 17:42:58 +01:00
Nils Schneider
653ea4a301 Merge pull request #76 from freifunk-gluon/neighours
announce neighbours using alfred/gluon-announce
2015-03-24 20:56:39 +01:00
Nils Schneider
7e7ee16105 gluon-announce: move collect_dir to library 2015-03-23 22:09:27 +01:00
Martin Weinelt
8361b51c32 gluon-config-mode-geo-location: add altitude field 2015-03-23 02:19:36 +01:00
Matthias Schiffer
127b576fa5 gluon-config-mode-*: remove usages of the word "Freifunk" 2015-03-22 23:42:23 +01:00
Matthias Schiffer
6c387af9ca gluon-site: always provide a PKG_VERSION, also during package scan 2015-03-21 18:26:54 +01: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
7896f91f86 gluon-config-mode-mesh-vpn: add translations 2015-03-19 22:22:39 +01:00
Matthias Schiffer
ce82baf0ad gluon-config-mode-core: use translated messages from the site configuration 2015-03-19 22:11:43 +01:00
Matthias Schiffer
5805e78455 gluon-site: add translations from the site configuration 2015-03-19 21:31:44 +01:00
Matthias Schiffer
0e9095b58c gluon-config-mode-contact-info: add missing translation 2015-03-19 21:14:41 +01:00
Matthias Schiffer
87370a456d gluon-site: add POT file for site-configurable messages 2015-03-19 20:31:12 +01:00
Matthias Schiffer
65b44ca4ce Rename gluon-config to gluon-site 2015-03-19 20:14:40 +01:00
Matthias Schiffer
d9366935e3 gluon-config-mode-*: add source directory to GluonBuildI18N calls 2015-03-19 19:05:42 +01:00
Matthias Schiffer
113f362c30 gluon-config: use PKG_FILE_DEPENDS 2015-03-19 03:54:12 +01:00
Matthias Schiffer
67b607d882 gluon-config-mode-core: add translations 2015-03-19 02:35:20 +01:00
Matthias Schiffer
76ccfeea25 gluon-config-mode-contact-info: fix c&p mistake 2015-03-19 02:35:13 +01:00
Matthias Schiffer
224f3990e0 gluon-config-mode-contact-info: add translations 2015-03-19 01:43:25 +01:00
Matthias Schiffer
613dceaa25 gluon-config-mode-geo-location: add translations 2015-03-19 01:22:31 +01:00
Matthias Schiffer
325eeb4f69 gluon-config-mode-hostname: add translations 2015-03-19 00:57:16 +01:00
Matthias Schiffer
c6f96c3666 gluon-config-mode-autoupdater: add translations for English and German 2015-03-18 20:25:27 +01:00
Matthias Schiffer
0a1e1ad37e gluon-config-mode-core: pull in LuCi i18n packages for enabled languages 2015-03-18 20:25:12 +01:00
Matthias Schiffer
dce26de28c gluon-core: add i18n support 2015-03-18 20:24:57 +01:00
Lars Bußmann
9e267f30bf gluon-next-node: fix IPv4 next node feature 2015-03-18 15:58:21 +01:00
Nils Schneider
b58ab9abb9 ebtables-filter-mcast: drop ARPs to/from 0.0.0.0
Fixes https://github.com/freifunk-gluon/gluon/issues/311
2015-03-16 20:08:22 +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
8c59e0c4ea Merge branch 'announce_site_code' of https://github.com/freifunk-mwu/packages 2015-03-02 23:12:53 +01:00
Matthias Schiffer
112c9d5c9d gluon-wan-dnsmasq: don't rewrite resolv.conf when its content hasn't changed
This avoids poking dnsmasq every time a DHCP lease is obtained or a router
advertisement received.
2015-02-18 01:23:11 +01:00
Kokel
3b3b0bf521 gluon-announce: add script to announce site_code 2015-02-10 18:20:44 +01:00
Nils Schneider
9f4770fd62 Merge pull request #99 from freifunk-gluon/allow-ripng
ebtables-filter-multicast: allow ripng
2015-02-10 16:38:55 +01:00
Nils Schneider
3bd93dea06 ebtables-filter-multicast: allow ripng 2015-02-09 02:41:28 +01:00
Nils Schneider
db1fddb0c6 gluon-mesh-vpn-fastd: announce peer status using statistics.d
This adds basic peer statistics to statistics.d:

    "mesh_vpn": {
      "muehlentor": {
        "established": 23.8 // seconds
      },
      "huextertor": null,
      "holstentor": null
    }
2015-02-05 21:33:36 +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
2dea903120 gluon-mesh-batman-adv-core: explicitly set WLAN client and mesh interfaces' ifname 2015-01-24 23:34:35 +01:00
Matthias Schiffer
949420158f gluon-mesh-batman-adv-core: remove unused variable in upgrade script 2015-01-24 23:11:27 +01:00
Matthias Schiffer
6e22c667de gluon-mesh-batman-adv-*: move MTU configuration to version-specific upgrade scripts 2015-01-24 17:18:47 +01:00
Nils Schneider
2e0e24a992 announce neighbours using alfred/gluon-announce
This adds a new announce.d datum "neighbours" (alfred 160) containing
information about mesh neighbours. It's intended to be an replacement
for batadv-vis.

In addition to the data already provided by batadv-vis it'll also
provide information about direct wifi neighbours.

Unlike batadv-vis, no data about clients is transmitted.

Sample data:

    {
      "wifi": {
        "90:f6:52:82:06:02": {
          "neighbours": {
            "f8:d1:11:2c:a7:d2": {
              "noise": -95,
              "inactive": 0,
              "signal": 0
            },
            "96:f6:52:ff:cd:6f": {
              "noise": -95,
              "inactive": 0,
              "signal": -37
            }
          }
        }
      },
      "batadv": {
        "90:f6:52:82:06:02": {
          "neighbours": {
            "96:f6:52:ff:cd:6f": {
              "lastseen": 2.8500000000000001,
              "tq": 177
            }
          }
        },
        "90:f6:52:82:06:03": {
          "neighbours": {
            "f8:d1:11:2c:a7:d3": {
              "lastseen": 2.3500000000000001,
              "tq": 206
            }
          }
        }
      },
      "node_id": "90f652820602"
    }
2015-01-24 12:12:53 +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
20187005d4 gluon-legacy: convert the remaining legacy infrastructure to a simple invariant script 2015-01-24 11:14:09 +01:00
Matthias Schiffer
0371b443d3 gluon-legacy: convert the remaining legacy scripts to invariant scripts 2015-01-24 11:14:09 +01:00
Matthias Schiffer
5e0bad2f25 gluon-legacy: convert gluon-core legacy scripts to invariant scripts
This also fixes a long-broken legacy upgrade script which would leave the
sysconfig variable lan_ifname unset and the LAN ports unusable.
2015-01-24 11:14:09 +01:00
Matthias Schiffer
ecfcb4dd6b gluon-mesh-vpn-fastd: get rid of initial script 2015-01-24 11:14:09 +01:00
Matthias Schiffer
7940bad4a9 gluon-lock-password: convert to invariant script and remove legacy script 2015-01-24 11:14:09 +01:00
Matthias Schiffer
6f11279438 gluon-core: convert all initial scripts to invariant scripts 2015-01-24 11:14:09 +01:00
NeoRaider
71c498edd2 Merge pull request #83 from kokel/node-role
add section "system" to gluon-node-info with new option "role" and luci package to change role via config mode
2015-01-24 11:13:42 +01:00
NeoRaider
12304fcb4c Merge pull request #95 from freifunk-gluon/config-mode-skip
gluon-setup-mode: allow skipping on first boot
2015-01-24 11:12:19 +01:00
NeoRaider
4947578d48 Merge pull request #87 from freifunk-darmstadt/patch-1
gluon-announce: rename announce.lua to collect.lua
2015-01-24 11:11:55 +01:00
Kokel
a80400bb41 add package gluon-luci-node-role; depends on package "gluon-node-info"; depends on new site.conf section 2015-01-23 12:22:48 +01:00
Kokel
ba81359c60 "gluon-node-info": add section system and option role; add announce script to announce the role as nodeinfo;
add invariant script "001-node-system" to add section "system" if not exist; add invariant script "010-node-role"
to add section "system" if not exist; add invariant script "010-node-role" to set role to default value
(site.roles.default) if not exist; depends on new site.conf section
2015-01-23 12:22:42 +01:00
Nils Schneider
629409364b gluon-setup-mode: allow skipping on first boot
By setting setup_mode.skip to true in site.conf the device will skip
setup mode on first boot.
2015-01-23 12:05:26 +01:00
Matthias Schiffer
8e33dd5075 gluon-setup-mode: always finalize the overlay before rebooting
When an early reboot is triggered because an upgrade script has disabled the
config mode, we need to explicitly call /etc/init.d/done, otherwise the overlay
will not be finalized after a firstboot and we get an endless reboot loop.
2015-01-22 23:53:56 +01:00
Daniel Golle
3de151c286 mesh-batman-adv-core: allow sites to set VLAN for mesh
Signed-off-by: Daniel Golle <daniel@makrotopia.org>
2015-01-18 08:03:59 +01:00
flokli
63ff54e4bc 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
fc62de55e3 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
0df0eaeaac 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
78b43b1dd6 gluon-core, gluon-setup-mode: fix LAN and WAN on nanostation-m-xw 2014-11-26 23:30:56 +01:00
Matthias Schiffer
bf4b3a265f gluon-setup-mode: initialize all LEDs 2014-11-26 20:32:47 +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
104c92dfe6 gluon-status-page: remove workaround for now fixed LuCi bug 2014-11-17 16:22:05 +01:00
Nils Schneider
14553d42be 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
691f0cb6c5 gluon-status-page: show VPN status (very minimalistic for now) 2014-11-17 03:24:08 +01:00
Matthias Schiffer
5ee5cf3ec1 gluon-mesh-vpn-fastd: configure a status socket 2014-11-17 03:23:36 +01:00
Matthias Schiffer
7bd30f9c84 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
2627161509 Merge remote-tracking branch 'origin/status-page-164' 2014-11-13 01:37:18 +01:00
Nils Schneider
5266a07334 status-page: escape html, move script to body 2014-11-13 01:36:38 +01:00
Nils Schneider
710cb8b36c status-page: lua rewrite, use gluon-neighbour-info 2014-10-27 23:21:40 +01:00
ohrensessel
15adcae331 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
0e5a2ea38d deactivate multicast_mode by default 2014-10-05 15:24:58 +02:00
Matthias Schiffer
7496b3d3c1 gluon-luci-admin: fix SSH keys being removed when a password is set 2014-10-03 00:47:48 +02:00
Matthias Schiffer
f9cc73187f 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
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
Matthias Schiffer
b977f00162 Fix mesh-batman-adv-core legacy script path 2014-09-15 19:55:09 +02:00
Matthias Schiffer
2dfe68d50a Remove obsolete legacy upgrade script 2014-09-15 19:55:09 +02:00
Nils Schneider
c06141cff3 gluon-node-info: remove fixup-owner script 2014-09-15 19:54:30 +02:00
Nils Schneider
0de7bf5f64 gluon-core: port initial/020-wireless to lua 2014-09-15 19:50:10 +02:00
Nils Schneider
53e56b0853 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
a753fa79e3 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
f21678dc0d 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
5fa97f8fdb gluon-core: add node_id() to gluon.util 2014-09-11 12:27:29 +02:00
Nils Schneider
d87cf05c95 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
abcc86bf8f gluon-neighbour-info: global timeout 2014-09-06 15:40:03 +02:00
Nils Schneider
0222f342af gluon-neighbour-info: newlines between responses 2014-09-06 14:10:43 +02:00
Nils Schneider
b969f3e644 gluon-neighbour-info: cleanup, use recv instead of recvfrom 2014-09-06 14:02:19 +02:00
Nils Schneider
29464a4ba1 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
4e19df098a 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
ae43f3dc3e 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
fe57f93bc7 gluon-neighbour-info: query direct neighbours
This is a simple client for gluon-announced.
2014-08-28 18:48:57 +02:00
Nils Schneider
e2ff6a6ed3 gluon-luci-admin: restructure firmware upgrades 2014-08-28 16:36:04 +02:00
NeoRaider
9d11f4bda1 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
afce06c3d3 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
a90920e373 gluon-announced: avoid spawning zombies 2014-08-25 21:53:21 +02:00
Nils Schneider
40321595a9 Merge pull request #62 from freifunk-gluon/clientcount
mesh-batman-adv-core: add clientcount statistics
2014-08-22 14:40:09 +02:00
ohrensessel
fea00b3603 calculate rootfs usage instead of overlayfs
in case a target does not use overlayfs
2014-08-18 14:07:23 +02:00
ohrensessel
4d747c09c4 adapt overlay_usage to match the comments from luebeck 2014-08-18 13:08:54 +02:00
ohrensessel
42c43ba2af overlay: rename to clarify value 2014-08-18 12:12:00 +02:00
ohrensessel
0e95c90e21 overlay: change to normalized, fix error handling 2014-08-18 12:10:54 +02:00
ohrensessel
4e76436932 add overlay usage to statistics.d 2014-08-18 11:40:13 +02:00
Matthias Schiffer
fe2fc8785e Remove gluon-ath9k-workaround 2014-08-17 19:34:03 +02:00
Matthias Schiffer
f9e5e3325f 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
f3ff07b1a5 gluon-mesh-vpn-fastd: delete all old backbone peers on update 2014-08-16 14:51:18 +02:00
penguineer
31fe529e92 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
3652628e96 luci-portconfig: fix dns 2014-08-10 17:13:39 +02:00
Nils Schneider
a1d27aefbb 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
d90b1d66fd Merge pull request #61 from freifunk-gluon/configurable-wan
Configurable WAN
2014-08-09 23:31:19 +02:00
Nils Schneider
5145eab954 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
62d910edde gluon-luci-portconfig: expose advanced WAN configuration 2014-08-09 17:36:15 +02:00
Matthias Schiffer
3762f52c69 gluon-core: restructure WAN configuration 2014-08-09 14:39:21 +02:00
Matthias Schiffer
d8f0c531c9 gluon-wan-dnsmasq: allow configuring static DNS servers 2014-08-09 14:39:05 +02:00
Nils Schneider
25e0c6e07b luci-theme: fix checkboxes on firefox 2014-08-09 09:35:39 +02:00
Nils Schneider
488ed1bdd7 Merge pull request #58 from jplitza/patch-1
gluon-announced: fix help message
2014-08-08 21:44:11 +02:00
Matthias Schiffer
143d5a9565 Add gluon-mesh-batman-adv-15 2014-08-08 15:56:36 +02:00
Matthias Schiffer
279cfd5117 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
b169a169d6 luci-theme: fix centering of form fields 2014-08-08 14:53:27 +02:00
Jan-Philipp Litza
8a32dd7887 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
4f65d49950 Revert "gluon-luci-theme: remove top padding cbi-field-title"
This reverts commit f37f1f1ac2c9a44d0aafb25e3f5a01e16df6019e.
2014-08-08 14:34:19 +02:00
Matthias Schiffer
cd0a932ac0 gluon-setup-mode: provide alternative rc.d directory for procd 2014-08-07 15:52:38 +02:00
Julian Kornberger
60e0a5601c gluon-luci-private-wifi: fix package naming
previously it was gluon-luci-privatewifi
2014-08-06 23:21:33 +02:00
Matthias Schiffer
1bf1a8ad05 Remove gluon-luci-core
The package luci-base now contains everything we need.
2014-08-06 12:07:34 +02:00
Matthias Schiffer
201acaa3a9 Dependency fixes for the new LuCi version 2014-08-06 12:06:49 +02:00
Matthias Schiffer
c0139e871f 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
257787a0b0 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
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
Julian Kornberger
1fc572e863 gluon-luci-wifi: UI for enabling a private WLAN
freifunk-gluon/gluon#122
2014-08-05 01:20:15 +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
Matthias Schiffer
7773afdc18 gluon-core: remove model.sh and model.lua 2014-07-10 17:57:31 +02:00
Matthias Schiffer
9c53b705d5 Remove all uses of gluon.model and model.sh 2014-07-10 17:57:31 +02:00
Matthias Schiffer
9a892e7948 gluon-alfred: use lua-platform-info 2014-07-10 17:57:31 +02:00
Nils Schneider
7dd8d3ee1e gluon-luci-admin: fix wording 2014-07-08 21:52:11 +02:00
Daniel Ehlers
941e398572 gluon-ath9k-workaround: Announce how often the workaround has been triggered. 2014-07-08 12:40:04 +02:00
Nils Schneider
011e68e5cc Merge pull request #34 from sargon/ath9k
gluon-ath9k-workaround: Workaround for the ath9k wifi bug.
2014-07-08 12:13:16 +02:00
Daniel Ehlers
bb699204ca gluon-ath9k-workaround: bug reporting support
If the `monitor` attribute in the site.conf is defined, the cron
script is modifed to send debug informations, generated on bug
detection, to given remote host and port,
e.g.: "fda1:384a:74de:4242::2 8090"
2014-07-08 01:51:09 +02:00
Daniel Ehlers
49febb43e7 gluon-ath9k-workaround: Workaround for the ath9k wifi bug.
Cron script which restarts wifi iff queues are marked stopped.
This script also outputs some debug information to nail
down the problem.
2014-07-07 22:53:52 +02:00
Matthias Schiffer
81dc4f44e2 gluon-core: remove now unused sysctl.sh 2014-07-07 22:23:56 +02:00
Matthias Schiffer
f82850fc37 gluon-mesh-batman-adv: convert mesh config upgrade script to Lua 2014-07-07 22:22:48 +02:00
Matthias Schiffer
3dddafea21 gluon-core: convert network config script to lua 2014-07-07 21:58:08 +02:00
Matthias Schiffer
0fd7ac1768 gluon-core: add and use a sysctl Lua module 2014-07-07 21:57:37 +02:00
Matthias Schiffer
1c0429ce8f gluon-core: extend user management library and convert it to Lua 2014-07-07 21:48:35 +02:00
Matthias Schiffer
f93e9b818f Split gluon-setup-mode package out of gluon-config-mode
gluon-config-mode retains the luci frontend, all setup scripts and config is
moved to the new package.
2014-07-05 20:11:41 +02:00
Matthias Schiffer
2ec02a41c2 gluon-core: add functions to unset sysconfig settings 2014-07-05 19:39:24 +02:00
Matthias Schiffer
f6a51c63e4 gluon-firewall: reject DNS queries from br-client (they should be accepted on local-node only) 2014-07-05 16:01:20 +02:00
Matthias Schiffer
ffd86668fe Validate site.conf 2014-07-05 02:48:56 +02:00
Matthias Schiffer
626056e625 gluon-legacy: fix order of version_files and old_files handling 2014-07-05 01:12:04 +02:00
Matthias Schiffer
10519660ea gluon-luci-admin: change text "Expertmode" to "Expert Mode" 2014-07-02 16:24:08 +02:00
ohrensessel
b7b374bd56 Improve explanation of the Mesh-VPN 2014-07-01 23:29:36 +02:00
Julian Kornberger
e5b2978a48 ubiquity-bullet-m does also work with picostation
Closes #31
2014-06-29 10:12:22 +02:00
Matthias Schiffer
040a68ee65 gluon-alfred: some announce.lua cleanup 2014-06-26 17:57:15 +02:00
Nils Schneider
8600a2f288 gluon-config-mode: down/upstream is kbit/s
The bandwidth limit input fields were missing a unit confusing users as to which value should be entered. It's kbit/s for both.
2014-06-17 19:33:58 +02:00
Matthias Schiffer
5d3ce91f75 gluon-status-page: fix neighbor view with current iw/mac80211
The whole status page should be rewritten ASAP, but this fix will at least
make it work again for now...
2014-06-15 13:22:39 +02:00
Matthias Schiffer
14ea7980f6 gluon-firewall: enable conntrack on WAN
Otherwise, the state match doesn't work, not allowing replies to outgoing
packets to get in.
2014-06-13 21:56:32 +02:00
Nils Schneider
d3d22a17d1 gluon-alfred: use gzip 2014-06-10 19:20:55 +02:00
Matthias Schiffer
bc54f80dfd gluon-alfred: reduce usage of util.exec, improve table formatting 2014-06-10 15:44:35 +02:00
Matthias Schiffer
ea7774c0b6 gluon-alfred: add fields idletime, memory and processes to statistics 2014-06-09 19:50:25 +02:00
Matthias Schiffer
7a3e8d1632 gluon-mesh-batman-adv: add batman-adv version information to alfred 2014-06-09 19:29:13 +02:00
Matthias Schiffer
48ea4b711f gluon-alfred: split announce.lua into several files and move parts into the appropriate packages
This also fixes the type of a few fields which were strings instead of numbers.
2014-06-09 19:23:16 +02:00
Matthias Schiffer
e317bdc230 gluon-core: add gluon.model lua module 2014-06-09 17:56:29 +02:00
ohrensessel
b89a0162eb Allow sysconfig variable to be used on reboot page 2014-06-07 13:43:31 +02:00
Matthias Schiffer
68149f25fd Add gluon-firewall package to mitigate open resolver issue
Original patch by Daniel Ehlers <danielehlers@mindeye.net>
2014-06-06 12:59:32 +02:00
Daniel Ehlers
aba0a3bc0c gluon-mesh-batman-adv: Do not ACCEPT incoming packets.
For security reasons we should not accept incoming packets per default
and instead allow specific services on specific interfaces.
2014-06-06 11:36:03 +02:00
Matthias Schiffer
acd60a22b1 gluon-config: add /lib/gluon/release
/lib/gluon/release had been lost during the conversion to the new site config
format.
2014-05-19 00:09:14 +02:00
Matthias Schiffer
5c121c1608 gluon-config-mode: allow using templates for texts again 2014-05-17 13:43:08 +02:00
Matthias Schiffer
a3ed0dde1f gluon-autoupdater: replace config script generator with Lua script 2014-05-17 13:43:08 +02:00
Matthias Schiffer
4d9df6d253 gluon-mesh-vpn-fastd: replace config script generator with Lua script 2014-05-17 13:43:08 +02:00
Matthias Schiffer
156813b34f gluon-simple-tc: replace config script generator with Lua script 2014-05-17 13:43:08 +02:00
Matthias Schiffer
ee307ec1de gluon-core: make Lua files proper modules 2014-05-17 13:43:08 +02:00
Matthias Schiffer
bf7a2c974e gluon-legacy: don't use generated scripts anymore 2014-05-17 13:43:02 +02:00
Matthias Schiffer
9367c1ffe7 gluon-next-node: convert pregenerated ebtables rules to Lua code 2014-05-14 15:08:43 +02:00
Matthias Schiffer
0953c9befb gluon-ebtables: use Lua instead of sh for the rule DSL to increase flexibility 2014-05-14 15:02:57 +02:00
Matthias Schiffer
ee829e8c90 gluon-radvd: replace pregenerated config file with Lua script 2014-05-14 14:30:13 +02:00
Matthias Schiffer
41dbaed19e gluon-config-mode: fix reboot.htm validity 2014-05-14 13:48:47 +02:00
Matthias Schiffer
24ac1dc1bc gluon-config-mode: convert templates to use the new site config 2014-05-14 13:23:15 +02:00
Matthias Schiffer
c33a434884 gluon-next-node: convert upgrade script to Lua 2014-05-14 12:31:16 +02:00
Matthias Schiffer
a6f87d2461 gluon-mesh-batman-adv: convert generated upgrade scripts to Lua 2014-05-14 11:55:06 +02:00
Matthias Schiffer
b95a4d67e8 gluon-core: convert generated upgrade scripts to Lua 2014-05-14 11:06:07 +02:00
Matthias Schiffer
d31ea9eba9 gluon-core: add site_config loader script 2014-05-14 08:00:54 +02:00
Matthias Schiffer
17b9514e38 Add gluon-config package containing the site config 2014-05-13 20:09:28 +02:00
Matthias Schiffer
25b8446a05 Fix gluon-legacy depends 2014-05-11 10:03:25 +02:00
NeoRaider
45189d1066 Merge pull request #23 from sargon/autoupdate-enforce
gluon-autoupdater: Always allow forced autoupdate.
2014-04-01 19:32:40 +02:00
Daniel Ehlers
b3d2d8cd32 gluon-autoupdater: Always allow forced autoupdate.
On nodes with autoupdate disabled the cmdline parameter '-f' has no
effect. But using the autoupdater for manual updates is quite handy.
2014-03-19 21:02:21 +01:00
Jan-Philipp Litza
579f521822 gluon-autoupdater: update manifest.sample 2014-03-19 18:14:48 +01:00
Matthias Schiffer
80797fb6d9 gluon-node-info: add script to fix owner section after a run of a broken config mode 2014-03-17 14:53:29 +01:00
Matthias Schiffer
99e74b1004 gluon-config-mode: fix unsetting of the contact info 2014-03-17 14:41:03 +01:00
Nils Schneider
c7d96917d0 gluon-luci-autoupdater: remove branch settings 2014-03-14 16:02:32 +01:00
Matthias Schiffer
13d632acb8 gluon-autoupdater: fix version comparison 2014-03-11 20:32:58 +01:00
Nils Schneider
c8c9d72df9 Merge pull request #21 from freifunk-gluon/alfred-lua
gluon-alfred: replace announce.sh with lua script
2014-03-03 22:23:10 +01:00
Matthias Schiffer
6e2b5a19b3 gluon-radvd: run on br-client to provide that interface with an address 2014-03-03 20:07:58 +01:00
Nils Schneider
69387322a7 gluon-node-info: remove 010-migrate-location 2014-03-02 20:24:27 +01:00
Nils Schneider
020169f292 gluon-config-mode: fix coordinates when disabled 2014-03-02 19:28:59 +01:00
Nils Schneider
59a28c6721 gluon-config-mode: allow contact field to be empty 2014-03-02 19:28:40 +01:00
Nils Schneider
db11e29df1 gluon-config-mode: show coordinates only when enabled 2014-03-02 18:59:20 +01:00
Nils Schneider
cd8e21739c gluon-config-mode: add contact field
Closes #20
2014-03-02 18:39:56 +01:00
Nils Schneider
a4ca5a9f7d gluon-config-mode: replace foreach with get_first 2014-03-02 18:14:36 +01:00
Matthias Schiffer
cd30517ec1 gluon-config-mode: add sysconfig option for config interface(s), default to WAN on nanostation-m 2014-03-02 17:56:50 +01:00
Matthias Schiffer
49700fc70d gluon-core: add sysconfig_isset function 2014-03-02 17:36:12 +01:00
Matthias Schiffer
bbd8ee6772 gluon-core: switch LAN and WAN on nanostation-m 2014-03-02 17:36:12 +01:00
Nils Schneider
a2f699cafd gluon-config-mode: avoid string.format("%f", ...
An undocumented feature of uci:get_first() is to cast the returned value
to the same type as the default argument. Thus, supplying a default
value ot type number makes string.format superfluous.
2014-03-02 14:05:14 +01:00
Nils Schneider
1269a7350e gluon-alfred: replace announce.sh with lua script
This replaces announce.sh with a lua script of (hopefully) equal
functionality. Using lua generating JSON is much faster than jshn and
allows for greater flexibility.
2014-03-01 23:47:03 +01:00
Matthias Schiffer
96b213c386 We DON'T want the gluon version file to collide with the package version stamp dir 2014-02-26 10:21:14 +01:00
Matthias Schiffer
7d27f1f045 gluon-alfred: add version string to software.firmware.base field 2014-02-25 11:38:06 +01:00
Matthias Schiffer
8f9ee8d62a gluon-core: add version file 2014-02-25 11:30:07 +01:00
Matthias Schiffer
c2cda254ae Rename gluon-location to gluon-node-info, add owner section 2014-02-24 05:12:01 +01:00
Matthias Schiffer
7586b3e393 gluon-legacy: gluon-mesh-batman-adv: ensure a default route is accepted on the client interface 2014-02-24 03:02:04 +01:00
Matthias Schiffer
b953d5026f gluon-core: use awk instead of grep+cut 2014-02-23 20:23:47 +01:00
Matthias Schiffer
5f8e34fc2f gluon-core: remove support for incremental upgrade scripts
As we don't have any older gluon versions so far, and hope to be able to do all
upgrades with invariant scripts, remove the code for now.

If we ever see the need to add such upgrade scripts, we can just re-add this.
2014-02-23 20:20:16 +01:00
Matthias Schiffer
b775741d30 gluon-legacy: remove_bat0 doesn't make sense for the wan interface 2014-02-23 20:06:21 +01:00
Matthias Schiffer
a045ec6549 gluon-legacy: gluon-mesh-batman-adv: always set proto to dhcpv6 2014-02-23 18:57:17 +01:00
Matthias Schiffer
fc7cd56031 gluon-legacy: gluon-mesh-vpn-fastd: correctly set enabled state 2014-02-23 17:35:56 +01:00
Matthias Schiffer
4fa228365a gluon-core: don't call legacy scripts on normal upgrades 2014-02-23 17:29:32 +01:00
Matthias Schiffer
dd0ec447e7 gluon-core: adjust to new escaped array handling for generate expressions 2014-02-23 06:31:23 +01:00
Matthias Schiffer
f5e966a666 gluon-legacy: whitespace fix 2014-02-23 06:21:05 +01:00
Matthias Schiffer
2454c8abb7 Add gluon-legacy package with legacy upgrade scripts 2014-02-22 08:27:51 +01:00
Matthias Schiffer
65c7db78fd Convert more upgrade scripts to the new sysctl helper 2014-02-21 19:58:38 +01:00
Nils Schneider
3e7e4b43af Merge pull request #16 from rubo77/master
gluon-config-mode: Corrected grammar
2014-02-19 15:03:37 +01:00
Nils Schneider
14d0d522bc Merge pull request #19 from sargon/master
gluon-core: force kernel panic on out of memory

This also adds /lib/gluon/functions/sysctl.sh for setting sysctl options.
2014-02-19 14:39:51 +01:00
Nils Schneider
c31df31553 gluon-luci-theme: show gluon release 2014-02-19 11:26:22 +01:00
Nils Schneider
0b3db87d6f gluon-luci-admin: expertmode texts translated 2014-02-19 03:24:48 +01:00
Nils Schneider
cbacca6108 gluon-luci-autoupdater: use expertmode template 2014-02-19 03:16:50 +01:00
Nils Schneider
26305a7150 gluon-luci-admin: replace overview with ssh/pass
Various changes and moving stuff around.
2014-02-19 03:16:50 +01:00
Nils Schneider
072acf5ae3 gluon-luci-admin: remove unused function 2014-02-19 03:16:50 +01:00
Nils Schneider
9c2ba883c9 gluon-luci-admin: system.lua -> upgrade.lua 2014-02-19 03:16:50 +01:00
Nils Schneider
6a2e7d45d8 gluon-autoupdater: drop caches before upgrade
This will free about 5 to 12 MB of RAM even on lightly used devices
yielding plenty of RAM for autoupdate to succeed.
2014-02-19 01:18:54 +01:00
Nils Schneider
3712f8795c gluon-luci-admin: remove backup/restore 2014-02-18 23:13:42 +01:00
Nils Schneider
08bc198e36 gluon-luci-admin: fix firmware upgrade feature 2014-02-18 22:21:31 +01:00
Nils Schneider
123fef47f0 gluon-luci-admin: remove reboot feature
Configmode should be exited by using the wizard instead.
2014-02-18 19:17:47 +01:00
Daniel Ehlers
6f302fc8df gluon-core: force kernel panic on out of memory
In combination with kernel.panic the node will reboot if out of memory.
2014-02-18 00:21:12 +01:00
Matthias Schiffer
c2adf36e20 gluon-config-mode: don't let UCI_CONFIG_DIR leak to the telnet environment etc. 2014-02-13 19:40:36 +01:00
Matthias Schiffer
39eed2b913 gluon-config-mode: simplify dnsmasq command, remove sleep after network setup 2014-02-13 16:27:40 +01:00
Matthias Schiffer
24fd45d424 gluon-config-mode: remove bind mounts 2014-02-13 15:55:52 +01:00
Nils Schneider
601fd3f3ea gluon-status-page: show model 2014-02-13 12:56:14 +01:00
Daniel Ehlers
de2c9ceefa gluon-luci-autoupdater: Fix typo 2014-02-13 00:21:40 +01:00
Matthias Schiffer
30869d9080 gluon-autoupdater: enable by default only if GLUON_BRANCH is set, set default branch accordingly 2014-02-11 17:10:11 +01:00
Nils Schneider
a365d626c2 gluon-luci-core: replacing luci-mod-admin-core
This commit adds gluon-luci-core, a package both gluon-config-mode and
gluon-luci-admin will depend on. gluon-luci-core itself will depends on
gluon-luci-theme, gluon-core and most importantly luci-lib-web. It also
copies a few files from luci-mod-admin-core but leaves out everyting we
do not use.

At a later point I plan to move functionality from luci-lib-web into
this package, too. luci-lib-web contains most parts of luci including
hardcoded templates for CBI, which I intend to replace.
2014-02-09 23:20:38 +01:00
Nils Schneider
6e4596fe87 gluon-luci-admin: remove translation support
We'll have to revisit translations at a later point after configmode and
expertmode have matured. Texts in this package were pretty inconsistent
anyway so there is no point in keeping translations for random text
fragments.
2014-02-09 23:17:50 +01:00
Nils Schneider
bb32d5c3a9 gluon-autoupdater: depend on sha512sum
This makes gluon-autoupdater depend on coreutils-sha512sum when it's not
included in busybox.
2014-02-09 23:16:34 +01:00
ruben
732727dde5 gluon-config-mode: Corrected grammar 2014-02-07 13:11:55 +01:00
Nils Schneider
b4ce341601 gluon-config-mode: fix type (gluon-locaton -> gluon-location) 2014-02-06 20:23:17 +01:00
Matthias Schiffer
cc1af68caa Don't use site config in compile step 2014-02-06 19:57:39 +01:00
Nils Schneider
b562ad7bbd gluon-status-page: escape HTML special characters 2014-02-06 15:35:21 +01:00
Matthias Schiffer
5c81f5fa70 gluon-autoupdater: add SHA512 support 2014-02-06 00:17:33 +01:00
Matthias Schiffer
ebceae82ad gluon-config-mode: don't include sysconfig before the start function is called
Otherwise the enable during image create will throw a few error messages
2014-02-06 00:05:10 +01:00
Nils Schneider
c839bd8892 statusscript 2014-02-04 13:15:18 +01:00
Nils Schneider
2d8dda6eee gluon-status-page: make index.html redirect to cgi 2014-02-03 23:59:22 +01:00
Matthias Schiffer
62c30abd6f gluon-core: ensure the release file is always up-to-date 2014-01-31 15:25:49 +01:00
Nils Schneider
4878839186 gluon-luci-theme: input fields on error readable
Do not use 'red' as text color on input fields with errors as the
backgronud color is already red, rendering the value unreadable.
2014-01-29 23:37:31 +01:00
Matthias Schiffer
d87ba9eb44 Merge branch 'config-mode-hostname' of https://github.com/freifunk-gluon/packages 2014-01-29 19:37:16 +01:00
Matthias Schiffer
869f81d12e Add stub gluon-status-page package 2014-01-29 17:17:49 +01:00
Nils Schneider
1097fadc92 gluon-config-mode: correct hostname on reboot.html
Display the correct hostname on the final page of configmode.
Previously, this page used to simply call luci.sys.hostname() which
would return the current hostname. However, when the configmode changes
the hostname luci.sys.hostname() will not reflect this. This patch
fetches the hostname directly from the UCI system config.

This adds a variable called 'hostname' which may be used in site.conf at
config_mode.msg_reboot and .msg_pubkey.
2014-01-28 03:16:56 +01:00
Matthias Schiffer
5bb4cf4e3a gluon-mesh-vpn-fastd: always use wan DNS servers to resolve the peers 2014-01-25 03:20:03 +01:00
Matthias Schiffer
4cf9b23e02 Enable DNS servers from mesh, disable on wan 2014-01-25 02:09:35 +01:00
Matthias Schiffer
ded5925f83 Remove odhcp6c.user hack 2014-01-25 01:54:19 +01:00
Matthias Schiffer
410733d423 gluon-mesh-batman-adv: use kmod-batman-adv-legacy package 2014-01-24 05:19:00 +01:00
Matthias Schiffer
f5dc52f665 Revert "gluon-radvd: run on br-client"
This reverts commit f5c532a3a923053ab229952bde31da0b0284d8ab.
2014-01-23 18:41:41 +01:00
Matthias Schiffer
ee74235a3b gluon-next-node: don't wait for br-client to get an address 2014-01-23 18:40:59 +01:00
Nils Schneider
5486cf2c4e gluon-config-mode: new helptexts 2014-01-23 02:24:02 +01:00
Nils Schneider
68a0da5daa gluon-config-mode: label submit button "Fertig" 2014-01-23 01:34:25 +01:00
Nils Schneider
ad2d413f23 gluon-config-mode: use welcome text from site.conf 2014-01-23 01:21:43 +01:00
Nils Schneider
1e348ddd45 gluon-config-mode: delay reboot a little
The reboot page should be delayed a little to give the browser time for
fetching assets (like the stylesheet). This adds a two second delay.
Unfortunately, I couldn't think of a sane way to do this within a luci
controller.

This patch forks the process. The parent will continue rendering the
page for the browser while the child will sleep and then reboot the
device. For this to work reliable the child needs to close stdout before
sleeping so the webserver closes the connection to the browser. This,
again, required a hack as lua does not allow closing std filehandles,
when prevented using luci.reboot() which was calling os.execute() and
that function will not work with stdout closed.
2014-01-23 00:04:14 +01:00
Nils Schneider
a299a150b6 gluon-config-mode: fix indentation 2014-01-22 23:18:46 +01:00
Matthias Schiffer
bc1be30486 More fixes for strange network interface configurations 2014-01-22 22:04:08 +01:00
Matthias Schiffer
f1fa2a2971 gluon-radvd: run on br-client 2014-01-22 21:32:02 +01:00
Nils Schneider
cd822a3a57 Merge pull request #11 from freifunk-gluon/expertmode
gluon-luci-admin: various changes
2014-01-22 12:03:00 -08:00
Nils Schneider
528d04cb67 Merge pull request #10 from freifunk-gluon/luci-theme
add new luci-theme
2014-01-22 12:02:48 -08:00
Matthias Schiffer
b8820bab61 Properly support devices with only one ethernet interface 2014-01-22 20:44:34 +01:00
Matthias Schiffer
bb4a9fd5af Fix race condition in dnsmasq config dir handling 2014-01-22 19:52:17 +01:00
Matthias Schiffer
6d5e47eeec gluon-config-mode: respect switch configuration 2014-01-22 19:45:07 +01:00
Matthias Schiffer
3369802094 gluon-core: sysconfig: don't print error message for unset config 2014-01-22 19:45:07 +01:00
Nils Schneider
c7efde1acf gluon-luci-admin: reboot.html, remove refresh
Don't refresh the reboot page after rebooting the node. It's not going
back to configmode anyway so it'll never reload without user
intervention.
2014-01-22 17:05:42 +01:00
Nils Schneider
8d62f92a4d gluon-luci-admin: replace overview text
This completely replaces the text on the overview page. Consider this a
placeholder until someone writes a better suited version :)
2014-01-22 17:05:42 +01:00
Nils Schneider
dd7934a39a gluon-luci-admin: remove redundant headings 2014-01-22 17:05:42 +01:00
Nils Schneider
78f5efa7ce gluon-luci-admin: no logout button in configmode
Hide the "logout" button when in configmode.
2014-01-22 17:05:42 +01:00
Nils Schneider
d85214d4c5 gluon-luci-admin: fix indentation
Replaces double-spaces with tabs to match surrounding code.
2014-01-22 17:05:42 +01:00
Nils Schneider
efc958fbf8 gluon-luci-admin: disable when not in configmode
For security reasons we'd like to disable all HTTP config interfaces
when the node is operating normally. This patch disables gluon-luci-admin
when configmode is not enabled.
2014-01-22 17:05:42 +01:00
Nils Schneider
de22275c60 gluon-config-mode: remove subsection headings
Those headings do not convey much information make the wizard less
compact. The help texts will be rewritten to guide the user instead.
2014-01-22 17:01:27 +01:00
Nils Schneider
57f65acaf2 gluon-config-mode: replace inline style with class
Replace the inline stylesheet for the public key box on the reboot page
with a CSS class so it can be styled using the theme.
2014-01-22 17:00:58 +01:00
Nils Schneider
b1cc62b680 gluon-config-mode,luci-admin: use gluon-luci-theme
This makes gluon-config-mode and gluon-luci-admin depend on
gluon-luci-theme instead of luci-theme-openwrt.
2014-01-22 16:56:54 +01:00
Nils Schneider
40c4659e18 gluon-luci-theme: new theme, still magenta/yellow
This is the initial version of our new configmode theme. It's far from
finished but at least configmode looks good. There are lots of
declarations copied from OpenWRT's default theme so most other luci
modules would be somewhat usable when shown using this theme.
2014-01-22 16:56:32 +01:00
Nils Schneider
5e0048ae84 gluon-config-mode: remove 'reset' button
The reset button resets the form. I don't think this is needed in a
wizard that simple and might confuse users so I removed it.
2014-01-21 23:42:03 +01:00
Nils Schneider
5b8e044893 gluon-config-mode: fix wizard
Due to my previous two commits configmode was broken when either meshvpn
or bandwidth limit was disabled. This fixes it but there may be a
cleaner solution provided by luci.
2014-01-21 22:19:25 +01:00
Nils Schneider
566faeb6ca gluon-config-mode: bwlimit hidden when not meshvpn
Hide the bandwidth limit checkbox when meshvpn is disabled.
2014-01-21 20:02:17 +01:00
Nils Schneider
bb3e93b55d gluon-config-mode: more compact tc form
Hide the downstream/upstream input fields when bandwitdh limiting is
disabled.
2014-01-21 19:50:07 +01:00
Nils Schneider
2f5524fdb4 gluon-autoupdater: Randomize mirror order
This way we have a kind of load balancing among the mirrors.
2014-01-21 13:20:50 +01:00
Daniel Ehlers
2062d1fcb6 gluon-luci-autoupdater: Catch up mirror support in gluon-autoupdater 2014-01-21 05:46:10 +01:00
Matthias Schiffer
ff166453d4 gluon-mesh-batman-adv: accept input on wan interface 2014-01-21 05:24:01 +01:00
Matthias Schiffer
f1dae6ca6e gluon-core: move initial/020-wireless from generate to files 2014-01-21 05:24:01 +01:00
Nils Schneider
c7991c6df4 gluon-autoupdater: add more models to README
This adds a list of known models to the readme.
2014-01-21 04:45:56 +01:00
Matthias Schiffer
e03fb9f8eb gluon-core: add support for NTP server configuration 2014-01-21 04:22:59 +01:00
Matthias Schiffer
e57e88ee6c gluon-mesh-batman-adv: add DNS support 2014-01-21 03:59:15 +01:00
Matthias Schiffer
1ceb38ac26 gluon-mesh-batman-adv: more initial -> invariant conversions 2014-01-21 03:05:42 +01:00
Matthias Schiffer
1ba10ac018 Add support for custom dnsmasq config and odhcp6c handler scripts 2014-01-21 03:01:12 +01:00
Matthias Schiffer
10d6c1930d gluon-autoupdater: allow configuring the branch name independently of the UCI config section name 2014-01-21 00:29:55 +01:00
Matthias Schiffer
72e7ae68fa gluon-autoupdater: adjust example config for mirror support 2014-01-21 00:10:00 +01:00
Daniel Ehlers
27871c0dc3 gluon-autoupdater: Enable list of mirrors for manifest and firmware.
Instead of a single url this patch allows to have a list of urls. So in case
of network instability a router can still reach local mesh-cloud server to pull
a update from. In this stage the autoupdater simply tries every mirror until
one passes all tests.
2014-01-20 23:31:15 +01:00
Daniel Ehlers
cb6c025a7f gluon-autoupdater: Less global variables.
This also removes the need for the cleanup function. Instead the cleanup
code is moved in place.
2014-01-20 23:31:15 +01:00
Daniel Ehlers
f0b63da868 gluon-autoupdater: Refactor code.
Move building blocks of the update into seperate functions.
2014-01-20 13:26:58 +01:00
Matthias Schiffer
1b924d6265 gluon-core: use gluon release in package version string 2014-01-20 05:07:55 +01:00
Matthias Schiffer
ee4e896fea gluon-core: use GLUON_RELEASE from environment 2014-01-20 02:35:21 +01:00
Matthias Schiffer
f36f7bcf26 Merge gluon-release into gluon-core 2014-01-20 01:59:10 +01:00
Matthias Schiffer
8f7b59d787 gluon-simple-tc: add missing defaults on every upgrade 2014-01-20 00:06:55 +01:00
Matthias Schiffer
f9cb8a7258 gluon-mesh-batman-adv: move wifi config to invariant 2014-01-20 00:06:55 +01:00
Matthias Schiffer
59c1900e9a gluon-location: move information to /etc/config/gluon-location 2014-01-20 00:06:55 +01:00
Matthias Schiffer
1dd9a9a8a1 gluon-autoupdater: no need to provide a default config just to delete it in the initial script 2014-01-20 00:06:55 +01:00
Nils Schneider
8e73ff90a0 gluon-autoupdater: typo corrected 2014-01-19 23:19:55 +01:00
Nils Schneider
4fef2e5e11 Merge pull request #7 from FreifunkBremen/master
gluon-autoupdater: get random number from /dev/urandom
2014-01-19 13:40:13 -08:00
Jan-Philipp Litza
7cdf3708f0 gluon-autoupdater: get random number from urandom
The approach with awk's rand() wasn't really random between across
devices: When srand() was called without arguments, time() was used as
seed, which of course is the same on all devices when the script is
called via cron at HH:00:00.

This patch instead uses /dev/urandom as source of random (we don't need
cryptographically strong random numbers, so urandom is just fine) but
still uses awk for the comparison as busybox's ash cannot deal with
floats in $(())
2014-01-19 22:36:49 +01:00
Matthias Schiffer
086efed428 gluon-alfred: add chosen gateway and load average 2014-01-19 21:44:26 +01:00
Matthias Schiffer
74493b2ba5 gluon-alfred: run every minute
The run frequency and exact time affect the alfred announce interval, so we can
just run it every minute to supply alfred with the most up-to-date data.
2014-01-18 21:56:05 +01:00
Matthias Schiffer
8b4474e18f gluon-mesh-batman-adv: set gateway mode to client 2014-01-18 19:44:02 +01:00
Jan-Philipp Litza
54620d6231 autoupdater: Use awk instead of grep+head+tail to split manifest 2014-01-17 16:09:34 +01:00
Matthias Schiffer
4ca8a35fc9 gluon-mesh-batman-adv: set bat0 MAC address to primary address 2014-01-16 23:57:42 +01:00
Jan-Philipp Litza
4b61062636 alfred: add more traffic statistics
+ mgmt and forward counters
+ packet in addition to byte counters for everything
2014-01-16 23:47:41 +01:00
Jan-Philipp Litza
7fdd0300b2 alfred: Add --no-sleep option to send immediately 2014-01-16 23:46:54 +01:00
Jan-Philipp Litza
692f093d21 alfred: clean up delay code 2014-01-16 22:42:02 +01:00
Jan-Philipp Litza
cc2ef851c7 alfred: add random node-specific delay before sending 2014-01-16 22:36:09 +01:00
Jan-Philipp Litza
50782f759e alfred: make traffic counters absolute
After a lenghty discussion, we settled on absolute vs. relative values.
Main reasons:

* stateless implementation on node possible
* convertable to relative values by differentiaion on receiver
* missed transmissions only decrease granularity, whereas relative
  values would introduce wrong numbers on integration if values are
  missed
2014-01-16 22:34:57 +01:00
Jan-Philipp Litza
6bf44622dc alfred: add statistics (uptime+traffic) 2014-01-16 16:50:25 +01:00
Matthias Schiffer
72b27ea2e0 gluon-mesh-vpn-fastd: enable secure handshakes 2014-01-14 19:37:15 +01:00
Matthias Schiffer
1c9dec091e gluon-radvd: don't run as root 2014-01-14 19:34:07 +01:00
Matthias Schiffer
5241565a79 gluon-mesh-vpn-fastd: don't run as root 2014-01-14 18:46:17 +01:00