Jo-Philipp Wich [Thu, 15 Aug 2019 14:07:48 +0000 (16:07 +0200)]
luci-base: use native ubus-rpc authorization protocol
Instead of granting complete ubus access under the active sysauth session,
implement the ubus-rpc authorization mechanism and make the ubus proxy
endpoint unauthenticated.
Dirk Brenken [Thu, 15 Aug 2019 08:32:59 +0000 (10:32 +0200)]
luci-app-adblock: sync with adblock 3.8.0
* add support for the 'null' blocking variant in dnsmasq
(via addn-hosts), see new select box 'DNS Variant'
* add support for 'DNS File Reset', where the final DNS blockfile
will be purged after DNS backend loading (save storage space)
* Provide additional Runtime information:
'DNS Variant' and 'Backup Directory'
* add E-Mail notification options to LuCI
Jo-Philipp Wich [Wed, 14 Aug 2019 20:54:59 +0000 (22:54 +0200)]
luci-base: ui.js: add createHandlerFn() helper
The createHandlerFn() helper function is useful to construct onclick
or similar event handling functions. It will add a "spinning" CSS
class on the event target element and disable the element, wrap the
given function with Promise.resolv() and re-enable the target element
once the promise is settled.
Jo-Philipp Wich [Wed, 14 Aug 2019 15:04:45 +0000 (17:04 +0200)]
luci-base: firewall.js: fix addZone()
When checking for an existing zone with the same name internally,
addZone() must use the nonblocking lookupZone() instead of the
promise returning public getZone() call.
Jo-Philipp Wich [Wed, 14 Aug 2019 14:42:55 +0000 (16:42 +0200)]
luci-base: luci.js: introduce hasSystemFeature() api
The new function allows querying the presence of certain system features
such as dnsmasq or firewall availability or the compile time features
of hostapd and wpa_supplicant.
Jo-Philipp Wich [Mon, 12 Aug 2019 17:45:18 +0000 (19:45 +0200)]
luci-base: form.js: support passing a callback to Map.save()
The given callback function will be executed after the map is parsed,
but before the uci is saved. This is useful to add further uci changes
before the map is re-rendered.
Jo-Philipp Wich [Thu, 8 Aug 2019 06:24:02 +0000 (08:24 +0200)]
luci-base: form.js: add further caption properties
Introduce properties `addbtntitle`, `removebtntitle` and `modaltitle` to
allow overriding the captions of section add buttons, remove buttons and
modal dialog titles respectively.
luci-base: network.js: extend ifnameOf() and expose as getIfnameOf()
Extend the ifnameOf() helper function to cover all object types used by
network.js and expose it as public getIfnameOf() api function for use by
other modules.
Hannu Nyman [Wed, 14 Aug 2019 15:53:03 +0000 (18:53 +0300)]
luci-app-statistics: cpufreq: tweak graphs
* Frequency usage percentage stats are by kHz instead of Hz.
Correct the labels. (Linux natively uses kHz for CPU frequency stats,
but collectd scales the current frequency stats item to Hz.)
* Show frequency usage percentage graph before the transition counts,
as it is more descriptive.
Aaron Jones [Sun, 11 Aug 2019 06:08:07 +0000 (06:08 +0000)]
luci-app-firewall: rules: allow ICMPv6 ND types
The "Match ICMP Type" dropdown had entries for router
solicitation & router advertisements, but not the more
generic neighbour solicitation & neighbour advertisements.
A LAN cannot function without Neighbour Discovery; this
means that setting a LAN interface default input policy to
REJECT breaks IPv6 WAN access for all hosts on that LAN;
as they can no longer discover their gateway's MAC address.
This can be fixed with appropriate rules allowing ND input,
which this patch allows one to do in LuCI.
Yousong Zhou [Fri, 9 Aug 2019 10:05:02 +0000 (10:05 +0000)]
luci-app-statistics: scale up ping_droprate to range 0-100
In original collectd, values of this metric are in range 0-1. OpenWrt
previously have a custom patch scaling them up to range 0-100. That
patch has been removed to align with possibly other deployments.
Florian Eckert [Tue, 6 Aug 2019 14:03:29 +0000 (16:03 +0200)]
luci-base: add vpn menu section
There is always more vpn services. To make the LuCI menu look cleaner, a
new top level menu "VPN" will be added with this commit. All luci-app-*
that have something to do with VPN should move to this new menu entry.
Hannu Nyman [Wed, 31 Jul 2019 21:41:14 +0000 (00:41 +0300)]
luci-app-statistics: add options for graph series sorting and color
Add two data series-level options "negweight" and "posweight" that
will use the numerical value of the data instance name
as the sorting factor. This enables e.g. sorting by CPU frequency
in the cpufreq module.
Add new graph-level option "ordercolor" to use colorsfrom a
pre-defined color table for the data series. This enables keeping
similar colors for similar data series in different plugin instances.
E.g. CPU frequencies in several cores that are handled and displayed
separately.
(note: the table has 8 items and if there are more series, it uses
the same colors again. The table can be easily extended/modified)
Hannu Nyman [Tue, 30 Jul 2019 17:47:02 +0000 (20:47 +0300)]
luci-app-statistics: cpufreq: changes in data structure
Collectd 5.9.0 changed the data structure of the cpufreq plugin:
CPU cores are now handled as separate plugin instances.
There are also new data items per core:
* time spent at each frequency
* amount of frequency transitions
Enable these new data items, but initially hide them behind
a new config option "ExtraItems" (default: disabled), as
the amount of graphs in multi-core systems could be rather large.
Note that the frequencies are not (yet) sorted, so the
information value of the time-spent graph is semi-random.
802.11w has to be enabled in station mode to be effective. If the AP is using WPA3-SAE or requires 11w, station will not connect unless 11w is enabled via this option.