Note: This change is relevant for systems that don't
use uhttpd for LuCI.
This log can be later used for fail2ban etc.
Signed-off-by: Jan Pavlinec <jan.pavlinec@nic.cz>
The special characters '!' and '*' in /etc/shadow are
used to disable password login for a specific account.
The character 'x' has no special meaning, but should not
be interpreted as an empty password.
However, Luci treats the special characters '!' and 'x' like no password is
set and displays the "No password set!" notification.
As this might be misleading, the extra check for these special
characters is removed, so the invalid hash is returned in that case.
This aligns the behavior of this notification with a change in rpcd,
which also removed these extra checks, so no login is possible, if
password login is disabled [1].
[1] https://git.openwrt.org/?p=project/rpcd.git;a=commit;h=3df62bcebd2caff47506ccffb42df8d2d2123c06
Signed-off-by: Fabian Bläse <fabian@blaese.de>
Set the fallback value of the config change rollback timeout
to 90 seconds to match the change in /etc/config/luci by commit
81cf99a50.
That commit changed the value in the config file, but did
not change the underlying fallback values that do get applied
when there is no proper config item in etc/config/luci.
Users sysupgrading from old systems may have carried an ancient
/etc/config/luci (without rollback config) with them, so this
change should help them to see the intended user experience.
Signed-off-by: Hannu Nyman <hannu.nyman@iki.fi>
Tweak the lua regex string for process list, so that processes
with extremely large memory sizes (over 100 MB) are matched.
For those large processes busybox top shows a MB value like '234m'
instead of a normal kB value like 234000.
Fixes#4425
Reference to https://github.com/openwrt/luci/issues/4425#issuecomment-694073479
Signed-off-by: Hannu Nyman <hannu.nyman@iki.fi>
In the previous commit the luci.xml module was created, Let's change all
references to the old functions to the new xml-module.
Signed-off-by: Sven Roederer <freifunk@it-solutions.geroedel.de>
To complete the previous commit these functions are defined in the resulting
luci-base package but are also used in the new luci-base-libs package. So
move them into the new xml-module of the new package.
Signed-off-by: Sven Roederer <freifunk@it-solutions.geroedel.de>
The new package luci-base-libs provides the modules that not strictly relate
to the web-interface of luci. By separating these libs they can be used by
other packages without having to install the web-components.
This change was inspired by providing a shell-only interface for 4MB-flash
devices, by keeping as much code common with a full install.
Signed-off-by: Sven Roederer <freifunk@it-solutions.geroedel.de>
Support for sysauth_template was (inadvertently) dropped in refactorings
to support the json menu construction. This does not restore that
functionality, which allowed different templates for every node in the
dispatcher tree, but provides an alternative mechanism that allows a
theme to provide a sysauth.htm template file instead.
Tested-by: Karl Palsson <karlp@etactica.com>
Signed-off-by: Jo-Philipp Wich <jo@mein.io>
Template strings have no associated name, which led to an attempt to
concat nil with a string when formatting the error message in case of
exceptions.
Signed-off-by: Jo-Philipp Wich <jo@mein.io>
Update timezone data to 2020a
http://mm.icann.org/pipermail/tz-announce/2020-April/000058.html
2020a:
Morocco springs forward on 2020-05-31, not 2020-05-24.
Canada's Yukon advanced to -07 year-round on 2020-03-08.
America/Nuuk renamed from America/Godthab.
Signed-off-by: Hannu Nyman <hannu.nyman@iki.fi>
The LuCI.fspath() function allows constructing absolute filesystem paths
from path segments relative to the document root.
Signed-off-by: Jo-Philipp Wich <jo@mein.io>
The cbi() function has a second argument 'config' in which various
configuration parameters can be passed. When converting the lua menu
to JSON, we must also convert this parameter.
Signed-off-by: Anton Kikin <a.kikin@tano-systems.com>
Currently the ubus path that provide the webserver is hardcoded to be /ubus.
Change this to make it configurable from the luci config file.
Signed-off-by: Ansuel Smith <ansuelsmth@gmail.com>
Introduce two new properties for page nodes to allow for declaratively
specifiying system dependencies which is useful to e.g. make certain
views depend on specific uci values or the presence of certain files.
The recognized properties are:
- `uci_depends` - a nested table in one of the following forms:
1) `{ config = { section = { option = "exact_value" } }`
2) `{ config = { section = { option = true } }`
3) `{ config = { section = "exact_type" } }`
4) `{ config = { section = true } }`
5) `{ config = true }`
Depending on the declaration, the uci option or section type must either
match the given "exact_value" or "exact_type" values or be a non-nil value
in case boolean "true" is specified.
- `file_depends` - a flat lists of file paths that must be accessible
If a path listed in `file_depends` points to a directory, that directory
must be not empty, otherwise it suffices if the path exists.
Examples:
- Only display the node if an /etc/config/wireless file exists with
a "config wifi-device radio0" section.
node = page(...)
node.uci_depends = { wireless = { radio0 = "wifi-device" } }
- Only display the node when swconfig is installed.
node = page(...)
node.file_depends = { "/sbin/swconfig" }
Signed-off-by: Jo-Philipp Wich <jo@mein.io>