Matthias Schiffer
60a0e78a4a
gluon-core: gluon.util: remove unused function readline()
2018-07-17 20:08:15 +02:00
Matthias Schiffer
f1f2bae94f
gluon-core: remove obsolete gluon.site_config library
2018-07-13 23:16:33 +02:00
Matthias Schiffer
9b937a8c64
gluon-core: remove unused gluon.sysctl Lua module
2018-04-13 14:41:01 +02:00
Matthias Schiffer
9f86bf3155
gluon-core: add default_hostname helper
2018-03-17 11:44:33 +01:00
Matthias Schiffer
83a6847fbd
gluon-web: remove unneeded functions from gluon.web.util
...
exec() is moved to gluon.util.
2018-02-25 17:13:30 +01:00
Matthias Schiffer
5dcb784308
gluon-core: remove unused lock and exec functions
2018-02-25 17:13:30 +01:00
Matthias Schiffer
987eef011a
gluon-core: remove unused user/group management functions, call lock command directly
2018-02-25 17:13:30 +01:00
Matthias Schiffer
345a5de861
gluon-core: add newline to the end of sysconfig files
...
Both gluon.sysconfig and libgluonutil already remove the trailing newline
if it exists. It's nicer to avoid files without a trailing newline, e.g.
for printing the file contents in a terminal.
2018-02-15 20:57:53 +01:00
Matthias Schiffer
d61f6a1e85
gluon-core: rename iterate_radios() to foreach_radio(), pass whole radio section
...
Allows to remove some redundant UCI lookups.
2018-02-15 14:04:37 +01:00
lemoer
b520bf5c50
gluon-core: rename site_seed to domain_seed
...
[Matthias Schiffer: rebase]
2018-01-19 03:30:06 +01:00
lemoer
0f5d932c4f
gluon-core: add util gluon-show-site to print merged site config
...
This should not convert JSON to a Lua table and back, as this loses the
distinction between arrays and objects, but as our site.conf is defined in
Lua anyways (for now), this can be fixed in a later revision.
[Matthias Schiffer: rename to gluon-show-site, rebase]
2018-01-19 01:07:44 +01:00
Matthias Schiffer
0b80f1b5ce
gluon-core: reimplement gluon.site module in C
...
By basing the Lua gluon.site module on gluonutil_load_site_config(), the
config load implementation needs to changed only in a single place for
multi-domain support.
2018-01-18 16:29:00 +01:00
Matthias Schiffer
6cf88c3b03
Replace luci-lib-jsonc with our own lua-jsonc
2018-01-18 16:28:59 +01:00
Matthias Schiffer
13b325355d
gluon-core: make old site_config library reference new one, not the other way around
2017-08-11 22:07:35 +02:00
Matthias Schiffer
293a45456b
gluon-core, gluon-client-bridge: use new gluon.site library in gluon.util
...
In particular, this affects users of gluon.util.iterate_radios.
2017-08-08 14:07:09 +02:00
Matthias Schiffer
57adb49de2
gluon-core: add new gluon.site library for convenient access to optional values
...
The new gluon.site lua library will eventually replace gluon.site_config
(which is hereby deprecated, but will continue to be supported for a
while).
The new gluon.site library will wrap all values to allow traversing
non-existing tables without errors.
site = require 'gluon.site'
c = site.a.b.c -- doesn't fail even if a or a.b don't exist
The wrapped values must be unwrapped using call syntax:
site_name = site.site_name()
Using the call syntax on a non-existing value will return nil. An
alternative default value may be passed instead:
mac = site.next_node.mac('16:41:95:40:f7:dc')
2017-08-08 13:20:38 +02:00
Matthias Schiffer
ae593d8439
gluon-core: convert site seed to lowercase
...
While we use the hexadecimal representation as a hash input for simplicity,
it should not be interpreted as case-sensitive.
2017-06-27 23:28:23 +02:00
Matthias Schiffer
8bcd0975af
gluon-core: add a "site seed" to site.conf to seed site-specific random values
2017-06-27 23:00:17 +02:00
Matthias Schiffer
c4613c4e8d
gluon-core: gluon.util: pass UCI cursor to get_wlan_mac(), get rid of local UCI context
2017-04-11 01:48:11 +02:00
Matthias Schiffer
f48d10bdde
gluon-core: gluon.util: pass UCI cursor as argument to iterate_radios() instead of using local context
2017-04-11 01:48:11 +02:00
Julian Labus
734d1925de
gluon-core: gluon.util: fix PHY detection for radios addressed by PCIe address
2017-04-11 01:48:10 +02:00
Matthias Schiffer
da22c5cf8e
gluon-core: gluon.util: change find_phy argument to config table and make public
2017-04-11 01:48:10 +02:00
Matthias Schiffer
e39cbcbda1
gluon-core: gluon.util: make exec() replace all stdio files with /dev/null
2017-02-10 22:09:59 +01:00
Matthias Schiffer
e665bfe64a
gluon-core: don't depend on luci.ltn12
2017-02-10 02:10:01 +01:00
Matthias Schiffer
c83b5b3cab
treewide: get rid of luci.util outside of config mode/advanced settings
2017-02-10 02:10:01 +01:00
Matthias Schiffer
6cf03bab37
treewide: replace normal uses of luci.model.uci with simple-uci to reduce LuCI dependencies
...
We also make use of the boolean support of simple-uci to make scripts
clearer.
2017-02-10 02:10:01 +01:00
Matthias Schiffer
04818c170b
package: refactor add_to_set/remove_to_set to get rid of last LuCI patch
2017-01-18 16:28:54 +01:00
Christof Schulze
e41e5cb8d9
gluon-core: add get_mesh_devices(uconn) to gluon.util which will return all devices being up and having proto = gluon_mesh
2016-12-21 23:51:48 +01:00
Christof Schulze
0abe350782
gluon-core: replace blanks by tabs in gluon.util
2016-12-21 23:47:03 +01:00
Matthias Schiffer
d2373590e0
gluon-core: add support for removing sysctl settings
2016-12-10 23:43:44 +01:00
Matthias Schiffer
6cddaedfc7
Reorganize MAC addresses, always explicitly set address for private WLAN
...
Fixes #842
2016-09-07 02:14:42 +02:00
Matthias Schiffer
279a409198
gluon-core: split get_wlan_mac_from_driver() out of get_wlan_mac()
2016-07-27 17:25:05 +02:00
Matthias Schiffer
2afe34efec
Use MAC addresses provided by WLAN drivers by default
...
Some drivers (mt76) don't support arbitrary MAC addresses. Use the
addresses provided by the driver (avoiding the primary address) by default,
but fall back to our has-based scheme when the driver doesn't provide
(enough) addresses.
2016-07-20 18:42:56 +02:00
Matthias Schiffer
c8bc4620d1
gluon-core: unify indentation in gluon/util.lua
2016-07-20 17:51:09 +02:00
Jan-Tarek Butt
1c1f490527
Minify all Lua code
2016-07-10 20:14:25 +02:00