Commit graph

1677 commits

Author SHA1 Message Date
Hannu Nyman
46a8abc54b luci-lib-rpcc: Remove old broken lib
Remove the old library that has been BROKEN since 2015.

Signed-off-by: Hannu Nyman <hannu.nyman@iki.fi>
2023-08-06 22:27:18 +03:00
Andre Heider
ff2c45d4a6 luci-lib-px5g: refactor to use PKG_BUILD_FLAGS:=no-mips16
See commit 5c545bdb "treewide: replace PKG_USE_MIPS16:=0 with
PKG_BUILD_FLAGS:=no-mips16" on the main repository.

Signed-off-by: Andre Heider <a.heider@gmail.com>
2023-03-23 10:09:02 +01:00
Jo-Philipp Wich
2234d0c5dd
Merge pull request #6104 from dhewg/6g
luci-mod-network: enable configuring wifi ax networks on the 6G band
2023-02-07 14:05:17 +01:00
Jo-Philipp Wich
a570e30006 rpcd-mod-luci: fix reporting network device flags
Fix reporting of ceertain flag values larger than 255, such as IFF_PROMISC
by explicitly casting the bit test expression to a boolean result since
the implicit integer truncation to uint8_t will turn the `0x100` result of
a set IFF_PROMISC bit into just `0x0`.

Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2023-02-07 10:09:42 +01:00
Sasha Andonov
e776759549 luci-lib-httpprotoutils: add airplay mime types
Airplay of a statically hosted video file from one Apple device to another
fails due to unrecognized content-type. Adding Airplay supported
mime types fixes the issue.

Signed-off-by: Sasha Andonov <s.andonnov@gmail.com>
2023-01-24 10:00:51 -05:00
Andre Heider
eb93ea0ac2 rpcd-mod-luci: bump version
Signed-off-by: Andre Heider <a.heider@gmail.com>
2023-01-23 14:51:28 +01:00
Andre Heider
ed2ee96e44 rpcd-mod-luci: add "hwmodes_text" to the iwinfo info output
This is a preformatted string like "ac/ax/b/g/n" for presentation.

Signed-off-by: Andre Heider <a.heider@gmail.com>
2023-01-23 14:51:28 +01:00
Andre Heider
eae86ee9bd rpcd-mod-luci: reuse infos provided by libiwinfo
Don't hardcode bit/name pairs, instead iterate over what's known to the
library and use that instead.

This automatically adds the missing ad hwmode and HE80+80 htmode - and any
future ones.

The only difference in the output is the order of the 'hwmodes' array.

Signed-off-by: Andre Heider <a.heider@gmail.com>
2023-01-23 14:51:28 +01:00
Christian Marangi
938e54df17
treewide: bump PKG_RELEASE for libiwinfo ABI change
Bump PKG_RELEASE for libiwinfo ABI change for rpcd-mod-luci and
luci-mod-status.

Signed-off-by: Christian Marangi <ansuelsmth@gmail.com>
2023-01-23 14:03:10 +01:00
Jo-Philipp Wich
9118452313 luci-lib-base: ensure that luci.http can be required standalone
Various existing Lua software is requiring the `luci.http` library for
URL encoding/decoding tasks so ensure that it can be loaded in a stand
alone manner even if the emulated Lua runtime environment is not
available.

Fixes: cea2c3578e ("luci-lib-base: forward luci.http.context.request.message to ucode")
Ref: https://forum.openwrt.org/t/x/141817
Ref: https://github.com/openwrt/luci/pull/5976#issuecomment-1296220586
Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2022-11-04 16:10:12 +01:00
Jo-Philipp Wich
036424df5b treewide: add explicit Lua runtime dependencies where needed
Some packages require Lua libraries but do not ship with a luasrc directory,
add explicit dependencies in these cases.

Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2022-10-25 01:03:37 +02:00
Jo-Philipp Wich
cea2c3578e luci-lib-base: forward luci.http.context.request.message to ucode
Some existing LuCI application code accesses the
`luci.http.context.request.message.params` HTTP parameter table directly.

Forward the `luci.http.context.request.message` object to the ucode
`luci.http.message` instance in order to properly support this.

Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2022-10-25 01:03:37 +02:00
Jo-Philipp Wich
673f38246a treewide: separate Lua runtime resources
Move classes required for Lua runtime support into a new `luci-lua-runtime`
package. Also replace the `luci.http` and `luci.util` classes in
`luci-lib-base` with stubbed versions interacting with the ucode based
runtime environment.

Finally merge `luci-base-ucode` into the remainders of `luci-base`.

Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2022-10-25 01:03:37 +02:00
Joerg Werner
7e4c087f86 rpc-mod-luci: Add support for ccmp-256/gcmp/gcmp-256 ciphers
Signed-off-by: Joerg Werner <schreibubi@gmail.com>
2022-08-25 15:28:11 +03:00
Eneas U de Queiroz
88b9088514
luci-lib-nixio: always build without TLS support
The build system fails to set up the chosen TLS provider and always
builds the package without TLS.

While this could be easily fixed, the package would fail to build with
axTLS and cyaSSL without further intervention.

The version of axTLS included with the source is outdated, as is the API
used with cyaSSL, now wolfSSL.

OpenSSL support could be enabled, but the TLS code limits connections to
TLS 1.0, deprecated by RFC 8996: "TLS 1.0 MUST NOT be used".

Remove the provider configuration from build options, and always build
the library without TLS.

Signed-off-by: Eneas U de Queiroz <cotequeiroz@gmail.com>
2022-08-10 16:52:35 -03:00
Markus Stockhausen
77d29c9dc0 rpcd-mod-luci: update filter for rpc_luci_get_network_devices
When kernel bonding module is loaded it will create a special
file /sys/class/net/bonding_masters. This is no network device.
Filter it out for getNetworkDevices() call.

Signed-off-by: Markus Stockhausen <markus.stockhausen@gmx.de>
2022-06-28 11:06:23 +02:00
Justin Klaassen
45f411b7a2 luci-lib-jsonc: stringify int use json_object_new_int64 instead
Fixes: #3293
Signed-off-by: Justin Klaassen <jck112@users.noreply.github.com>
2022-03-20 08:11:33 -07:00
Jo-Philipp Wich
4424424366 rpcd-mod-luci: parse prefix size from DHCPv6 leases
Remember the prefix size when parsing odhcpd lease entries and expose
it in the ip6addrs array.

Fixes: #4345
Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2021-10-26 19:40:35 +02:00
Jo-Philipp Wich
af4352c07e rpcd-mod-luci: fix syntax error
Fixes: 45a398e1ed ("rpcd-mod-luci: avoid PTR requests for IPv6 link-local and ULA addrs")
Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2021-09-22 12:42:54 +02:00
Jo-Philipp Wich
45a398e1ed rpcd-mod-luci: avoid PTR requests for IPv6 link-local and ULA addrs
Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2021-09-22 09:56:09 +02:00
Jo-Philipp Wich
93bd93e220 rpcd-mod-luci: let IPv4 hostnames take precedence over IPv6 ones
Do not overwrite IPv4-resolved hostnames with IPv6 ones in case both are
available or resolvable.

Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2021-09-22 09:56:09 +02:00
Jo-Philipp Wich
a26b53314d rpcd-mod-luci: bump version
Fixes: a78b74784d ("rpcd-mod-luci: refactor host hint gathering")
Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2021-06-15 10:02:44 +02:00
Jo-Philipp Wich
a78b74784d rpcd-mod-luci: refactor host hint gathering
- Do not incorrectly put the IP addresses from the rrdns reply into the
   first hint, instead distribute hostnames to the appropriate hints.

 - Avoid returning stale lease information from previously parsed records
   by clearing the static struct before each parse attempt.

 - Improve existing checks for empty MAC addresses and unspecified IPv6
   addresses.

Fixes: #5126
Fixes: 87bcf9e923 ("rpcd-mod-luci: Return array of addresses in getHostHints")
Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2021-06-14 21:52:56 +02:00
Jo-Philipp Wich
113c0b0d26 rpcd-mod-luci: add link details to ubus netdev information
Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2021-06-11 08:32:03 +02:00
David Bauer
516c58e133
Merge pull request #5070 from blocktrron/pr-luci-wifi6
luci-mod-network: add 802.11ax HE support
2021-06-05 19:04:11 +02:00
David Bauer
7b11e848ac rpcd-mod-luci: support parsing 11ax HW / HT modes
Add support for parsing 11ax modes returned from UBUS. This is required
so the frontend can display information about supported 11ax operation.

Signed-off-by: David Bauer <mail@david-bauer.net>
2021-06-05 16:24:19 +02:00
Niels Widger
a5195e7825 rpcd-mod-luci: Return array of addresses in getHostHints
Update luci-rpc's getHostHints method to return two string arrays for
each host, `ipaddrs` and `ip6addrs`, each containing the host's IPv4
and IPv6 addresses, respectively.  Each array is sorted by a priority
derived from the source from which the address was discovered.  The
current address sources and their priority is as follows (a
higher (larger) priority is listed first):

    - neighbor table entries: 10
    - /etc/ethers entries:    50
    - DHCP leasefile:        100
    - RRDNS queries:         100
    - getifaddrs():          200
    - UCI static leases:     200

The existing `ipv4` and `ipv6` string fields for each host in
`getHostHints` has been removed.  Downstream users of getHostHints
still need to be updated.

Fixes: #4838
Signed-off-by: Niels Widger <niels@qacafe.com>
[squash commits, reformat fixes tag]
Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2021-06-03 09:51:09 +02:00
Jo-Philipp Wich
71feaa5285 rpcd-mod-luci: expose devtype and iflink properties in getNetworkDevices
Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2021-03-18 17:28:40 +01:00
Niels Widger
8920a2bf71
rpcd-mod-luci: Fix parsing of DUID-LLT's in duid2ea
Fix parsing of DUID-LLT's in duid2ea.  Unlike DUID-LL's, DUID-LLT's have a 32-bit time field between the hardware type and link-layer address fields, see RFC 3315 Sections 9.2 and 9.4:

https://tools.ietf.org/html/rfc3315#section-9.2
https://tools.ietf.org/html/rfc3315#section-9.4

therefore, the link-layer address starts at offset 16 instead of 8.

Signed-off-by: Niels Widger <niels@qacafe.com>
2021-02-25 15:31:00 -05:00
Andre Heider
8b90932329 rpcd-mod-luci: get rid of now unused getDSLStatus ubus rpc
Good riddance.

Signed-off-by: Andre Heider <a.heider@gmail.com>
Tested-by: Martin Schiller <ms@dev.tdt.de>
2021-01-26 07:10:19 +01:00
Jo-Philipp Wich
bc121a5a45 rpcd-mod-luci: allow finding suffixed libwinfo.so
Recent versions ship a version suffixed libiwinfo.so, therefor we cannot
rely on a fixed path name anymore. Use globbing to find matching libraries
and load the first one we find.

Fixes: #4718
Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2021-01-08 18:34:17 +01:00
Karel Kočí
2e0a445ed5
rpcd-mod-*: improve postinst script
Usage of killall is replaced with init script. This is cleaner solution
as it does not consider some implementation detail but rather passes
that on to init script implementation.

IPKG_INSTROOT was added to prevent execution when not running in current
root. It is invalid to request reload if install-root is not current
root. In this case it can be considered harmless but it is invalid
nonetheless.

Last change is removal of `exit 0`. This caused skip of default
postinst. Execution of default postinst does no harm and is more
standard considering possible future expansion of it.

Signed-off-by: Karel Kočí <karel.koci@nic.cz>
2020-12-07 17:01:17 +01:00
Jo-Philipp Wich
d9b4f036ea rpcd-mod-luci: bump version
Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2020-11-07 22:10:25 +01:00
Jo-Philipp Wich
0c7a335230 rpcd-mod-luci: handle lease files from all dnsmasq/odhcpd sections
Fixes: #911, #4303, #4308
Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2020-11-07 00:25:22 +01:00
Jo-Philipp Wich
bd40525a69
Merge pull request #4373 from wjowsa/ubus-connect-args
luci-base: Add possiblity to set path and timeout of ubus connection
2020-10-30 21:28:02 +01:00
Santiago Piccinini
62505bdd2d luci-lib-ip: fix tolinklocal invalid ipv6 result
Force zeroing uninitialized memory.

Signed-off-by: Santiago Piccinini <spiccinini@altermundi.net>
2020-09-06 18:15:29 -03:00
Paul Spooren
c4a4e43e2e treewide: replace which with command -v
Fix shellcheck SC2230
> which is non-standard. Use builtin 'command -v' instead.

Once applied to everything concerning OpenWrt we can disable the busybox
feature `which` and save 3.8kB.

Signed-off-by: Paul Spooren <mail@aparcar.org>
2020-08-20 15:54:54 -10:00
Wojciech Jowsa
1f6dc29f74 luci-base: Add possiblity to set path and timeout of ubus connection
It might happen (e.g. when downloading a large file with low speed
connection) that the ubus connection will time out.
The ubus_connect function allows to specify
ubus socket path and ubus connection timeout
so it should allowed to set these arguments from luci.

Signed-off-by: Wojciech Jowsa <wojciech.jowsa@gmail.com>
2020-08-19 13:00:49 +02:00
Sven Roederer
68521fca04 luci-base(-libs): move pcdata() and striptags() from util- to xml-class
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>
2020-07-19 20:14:35 +02:00
Sven Roederer
8b8d83e42d luci-base: move some generic classes into a separate luci-base-libs package
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>
2020-07-19 20:14:22 +02:00
Rosen Penev
6555d3f587
move nixio__bin2hex to header and make static
This fixes compilation under GCC10.

There's no reason for this to be in a C file anyway.

Also fixed a -Wmissing-prototypes warning with nixio__addr_prefix.

Signed-off-by: Rosen Penev <rosenp@gmail.com>
2020-06-21 19:58:53 -07:00
Jo-Philipp Wich
d1134c1a40
Merge pull request #3676 from Tarnyko/master
luci-lib-nixio: allow building with Lua5.2/LuaJIT
2020-06-16 17:27:01 +02:00
Daniel F. Dickinson
119166ddba treewide: Remove myself as maintainer
Life changes, I'm no longer avaiable to be an sufficiently active
OpenWrt developer.  Therefore removing myself from maintainer from
all packages I maintained in OpenWrt.

All the best for those who keep up the good work!

Signed-off-by: Daniel F. Dickinson <cshored@thecshore.com>
2020-03-20 14:49:07 -04:00
Jo-Philipp Wich
ff4111f657 rpcd-mod-luci: use correct dlopen() flags
Fixes: #3707
Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2020-03-02 08:18:30 +01:00
Manuel BACHMANN
6c0b8a40f7 luci-lib-nixio: allow building with Lua5.2/LuaJIT
Lua 5.1 defines a "luaL_Reg" alias for deprecated
"luaL_reg", but Lua >= 5.2 and LuaJIT do not.
Replace by "luaL_Reg", and define a "luaL_reg"
alias in case we build with old Lua 5.0.

Signed-off-by: Manuel BACHMANN <tarnyko@tarnyko.net>
2020-02-24 11:04:54 +01:00
Jo-Philipp Wich
3702e13f54 rpcd-mod-luci: honour dhcp leases without ip address for host hints
Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2020-02-13 19:26:33 +01:00
Jo-Philipp Wich
c2eeb09bd9 luci-lib-ip: explicitly clear scope when allocating new userdata
Fixes: #3609
Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2020-02-08 11:03:56 +01:00
Jo-Philipp Wich
5cbbfaba3e luci-lib-ip: explicitly initialize address scope value
Explicitly initialize the address scope value to zero in parse_cidr() and
L_setaddr() to avoid stray scope identifiers getting added when formatting
the address object as string.

Fixes: 1d2b4c777 ("luci-lib-ip: support scoped IPv6 addresses")
Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2020-01-23 12:33:49 +01:00
Balázs Úr
39196b0de9 luci-app-fwknopd: fix typos
Signed-off-by: Balázs Úr <balazs@urbalazs.hu>
2019-12-20 23:12:48 +01:00
Jo-Philipp Wich
d87169c0f6 luci-lib-httpclient: accept scoped IPv6 addresses
Ref: https://github.com/openwrt/luci/issues/3380
Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2019-12-09 17:36:05 +01:00