The stdout output of gluon-web scripts is directly sent to uhttpd,
becoming a part of the HTML output or even replacing HTTP status or
headers. The output of gluon-reconfigure is not supposed to end up
there.
While we're at it, also add an exec to avoid an unnecessary shell
process.
(cherry picked from commit eea49a2834)
The OpenLayers JS/CSS download URL is dead. Update it to make the map
work again:
- Update from OpenLayers 5.2.0 to 5.3.0
- Switch from the obsolete rawgit.com URL to jsdelivr.net (rawgit.com
was only redirecting to jsdelivr.net for the last few years anyways)
- Set a fixed commit in the URL, so the URL doesn't become outdated again
(cherry picked from commit 62b24ed7ce)
As gluon-web uses standard multipart/form-data requests, browsers don't
enforce any cross-origin restrictions. To prevent malicious injection of
POST requests into the config mode, match the Origin header against the
Host header of the request.
(cherry picked from commit a83466be6e)
Actually raise an error and turn it into an HTTP 400 return code when
something goes wrong, rather than ignoring the error.
We also improve the conditions under which errors are thrown before
pump() is called: We don't need to check for the multipart/form-data
content-type twice, and a POST without this content-type is now always
an error.
(cherry picked from commit f3960eeb47)
Using apt in scripts is discouraged. Also add an update to hopefully fix
the lua-check installation failure in CI.
(cherry picked from commit c75d90d9ab)
The network.wireless status ubus call only returns the configured
channel from UCI, breaking the status page in outdoor mode, where the
configuration contains 'auto' instead of a number.
Fixes: 0d3fa6b59b ("gluon-status-page: use ubus to get radio channels")
Closes#2336
(cherry picked from commit 201e1597b1)
In js `return` does behave like `continue` in a forEach() iteration.
The fixed function was intended to return nothing on error and does so
now, instead of a shorter (useless) array like before.
(cherry picked from commit 8c85be2125)
Fixes the display of client counts, which are numbers and not strings
in the respondd data.
Fixes: 3a885a1b22 ("gluon-status-page: make "gateway nexthop" a link (#2278)")
(cherry picked from commit a357278464)
Do not depend on the respondd-airtime module just to get the configured
channels. This removes the display of the frequency in addition to the
channel, as it is not readily available.
In addition, the translation string is improved to allow for text after
the channel number.
(cherry picked from commit 0d3fa6b59b)
This code is usually running on an embedded CPU without FPU. In
addtition to its inefficience, the algorithm is also much harder to
understand.
Replace the logarithm formula with a simple loop.
(cherry picked from commit f2e0f7e3a8)
It was found that a one second timeout for nodeinfo data may be too low,
so that when a node is otherwise occupied that timeout may be reached
too often.
The nodeinfo query response is also vital to the status-page base
template, so that when it times out, the site will be turned in a broken
state, that it cannot recover from.
Fixes: #2256
(cherry picked from commit 76185e3a2a)
The site.mk target was only evaluated after the whole makefile was
parsed. This caused the GLUON_DEPRECATED error to be emitted first
(hiding the more helpful message that no site config was found) on Gluon
2021.1.x, where GLUON_DEPRECATED is used in a toplevel if in targets.mk.
By moving the check from recipe context to the toplevel, we ensure that
it is evaluated during parsing.
(cherry picked from commit 286d07b35f)
It was noticed that various devices had not the correct board-2.bin
installed. This was caused by a typo in the package name. The ath10k driver
(unfortunately) is then loading a completely unrelated BDF from the
ath10k-board-qca4019 board-2.bin. It is usually a rather bad idea to use
calibration data from a different board - but the effects depend on the
actual device.
For the PA1200, it was mostly noticed by the bad 2.4GHz performance.
Signed-off-by: Sven Eckelmann <sven@narfation.org>
9882a54c48 kernel: bump 4.14 to 4.14.245
fdea0036a2 openssl: bump to 1.1.1l
40c03b101c openssl: use --cross-compile-prefix in Configure
Signed-off-by: David Bauer <mail@david-bauer.net>
The OpenWrt routing feed was moved to the OpenWrt GitHub org.
Update the URL, as the old one might not work in the future.
Signed-off-by: David Bauer <mail@david-bauer.net>
(cherry picked from commit 3f8d12f55c)
read_stdout can return NULL and thus the return value need to be checked
prior to accessing it.
Signed-off-by: David Bauer <mail@david-bauer.net>
(cherry picked from commit 344f8a47db)
In case the limit_ingress or limit_egress options are not present in
gluon's mesh_vpn section the respondd provider compares a string literal
with a NULL pointer, crashing respondd.
Check both pointers prior to comparing them in order to mitigate this
issue.
Suggested-by: Matthias Schiffer <mschiffer@universe-factory.net>
Signed-off-by: David Bauer <mail@david-bauer.net>
(cherry picked from commit 7e1e9fe2bd)
I mixed up two separate improvements into one, this change aims to
clarify them based on a suggestion and conversation with @T-X.
(cherry picked from commit 05199e7e33)