Commit Graph

2147 Commits

Author SHA1 Message Date
Felix Fietkau
08cc7e881e bridger: update to Git HEAD (2025-08-10)
ccdc0394c833 optimize bridge local-rx handling
544551f1beae add udebug support

Signed-off-by: Felix Fietkau <nbd@nbd.name>
2025-08-10 18:49:17 +02:00
Felix Fietkau
3aee42001f wifi-scripts: add modular wps button handler scripts
Execute scripts in /etc/rc.wps until one of them returns a exit code of 0.
Split up sta and ap handling of wps into separate scripts.

Signed-off-by: Felix Fietkau <nbd@nbd.name>
2025-08-08 18:53:30 +02:00
Konstantin Demin
68e5f46899 dropbear: relax path permission checks for authorized keys
Check permissions of correct folder for certificates too.

Fixes: bbe4d6ddb2 ("dropbear: bump to 2025.88")
Signed-off-by: Konstantin Demin <rockdrilla@gmail.com>
Link: https://github.com/openwrt/openwrt/pull/19611
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2025-08-07 16:46:30 +02:00
Konstantin Demin
27baa3c731 dropbear: fix FTBFS when CONFIG_DROPBEAR_SVR_PUBKEY_OPTIONS is not enabled
While this is discouraged to disable this option, both upstream and OpenWrt allows one to do it.

Signed-off-by: Konstantin Demin <rockdrilla@gmail.com>
Link: https://github.com/openwrt/openwrt/pull/19611
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2025-08-07 16:44:11 +02:00
Konstantin Demin
07b20b6d35 dropbear: fix typos in path configuration
Replace _FILE with _PATH

Fixes: d8ff2d8cba ("dropbear: refactor configuration")
Signed-off-by: Konstantin Demin <rockdrilla@gmail.com>
Link: https://github.com/openwrt/openwrt/pull/19611
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2025-08-07 16:43:59 +02:00
Nick Hainke
6719bf5672 ead: replace legacy RETSIGTYPE with void in signal handler
The RETSIGTYPE macro was historically used for signal handler return types,
defaulting to int on some legacy systems. This is no longer needed,
so we now use void as the return type.

Fixes a compiler error:
  error: assignment to 'void (*)(int)' from incompatible pointer type 'int (*)()' [-Wincompatible-pointer-types]

Link: https://github.com/openwrt/openwrt/pull/19681
Signed-off-by: Nick Hainke <vincent@systemli.org>
2025-08-06 06:39:47 +02:00
Felix Fietkau
a2c361c520 hostapd: add missing MLO check on ucode bss stop
Fixes a crash on some config reload types

Fixes: 816c2d86e7 ("hostapd: add support for MLO interfaces in ucode")
Signed-off-by: Felix Fietkau <nbd@nbd.name>
2025-08-03 06:50:42 +02:00
Felix Fietkau
3786d15561 hostapd: fix bss config reload while in DFS state
Only start a BSS after a config change if it was started before.

Signed-off-by: Felix Fietkau <nbd@nbd.name>
2025-08-02 16:46:59 +02:00
Felix Fietkau
816c2d86e7 hostapd: add support for MLO interfaces in ucode
MLO interface config is provided in a separate ubus call before
adding regular per-phy interfaces.
Preparation for full MLO support.

Signed-off-by: Felix Fietkau <nbd@nbd.name>
2025-08-02 16:46:59 +02:00
Felix Fietkau
be2916b1d4 hostapd: remove unnecessary ucv_gc calls
They should not be needed, since the code doesn't use circular references

Signed-off-by: Felix Fietkau <nbd@nbd.name>
2025-08-02 16:46:59 +02:00
Felix Fietkau
bcd3d62834 hostapd: maintain ucode hostapd.bss list per interface
Preparation for MLO support

Signed-off-by: Felix Fietkau <nbd@nbd.name>
2025-08-02 16:46:59 +02:00
Christian Korber
682de550a0 hostapd: fix logging of configuration content
As discussed in openwrt#17517, there are contents of hostapd's configuration file logged in syslog.
This includes critical information like `passphrase`. To circumvent this condition,
this commit logs only "inline" if config_fname is inline data.

Otherwise the upstream logic of hostapd applies.

Fixes: openwrt#14049

Signed-off-by: Christian Korber <ck@dev.tdt.de>
Link: https://github.com/openwrt/openwrt/pull/17718
Signed-off-by: Robert Marko <robimarko@gmail.com>
2025-08-01 22:14:08 +02:00
Konstantin Demin
467b7c0dc6 uhttpd: bump PKG_RELEASE
improves ec62e87c0c "uhttpd: adjust with glibc and libcrypt-compat"

Signed-off-by: Konstantin Demin <rockdrilla@gmail.com>
Link: https://github.com/openwrt/openwrt/pull/19404
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2025-07-19 18:54:05 +02:00
Konstantin Demin
d03f65a8f2 ppp: bump PKG_RELEASE
improves ea6bcebc41 "ppp: adjust with glibc and libcrypt-compat"

Signed-off-by: Konstantin Demin <rockdrilla@gmail.com>
Link: https://github.com/openwrt/openwrt/pull/19404
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2025-07-19 18:54:05 +02:00
Konstantin Demin
c4064c55bd dropbear: bump PKG_RELEASE
improves eecc53cbe5 "dropbear: adjust with glibc and libcrypt-compat"

Signed-off-by: Konstantin Demin <rockdrilla@gmail.com>
Link: https://github.com/openwrt/openwrt/pull/19404
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2025-07-19 18:54:05 +02:00
Hauke Mehrtens
efb4200ba5 uhttpd: update to Git HEAD (2025-07-06)
b3e3c05 client: don't send stray EOF chunk on connection timeout
fad0d05 proc: inhibit chunked transfer encoding on existing TEs or known length
3d6f01b file: prevent writes beyond end of uh_buf on enumerating directories
c7294e7 client: reject requests with multiple content-lengths and/or TEs
7e64e8b client: Allow sending content in DONE state

uhttpd commit 3d6f01b fixes: CVE-2025-32108

Link: https://github.com/openwrt/openwrt/pull/19290
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2025-07-15 22:06:10 +02:00
Konstantin Demin
ec62e87c0c uhttpd: adjust with glibc and libcrypt-compat
glibc 2.39 has removed libcrypt completely.
solution: link against libxcrypt built with glibc compatibility.

Signed-off-by: Konstantin Demin <rockdrilla@gmail.com>
Link: https://github.com/openwrt/openwrt/pull/19293
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2025-07-12 23:38:19 +02:00
Konstantin Demin
ea6bcebc41 ppp: adjust with glibc and libcrypt-compat
glibc 2.39 has removed libcrypt completely.
solution: link against libxcrypt built with glibc compatibility.

Signed-off-by: Konstantin Demin <rockdrilla@gmail.com>
Link: https://github.com/openwrt/openwrt/pull/19293
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2025-07-12 23:38:19 +02:00
Konstantin Demin
eecc53cbe5 dropbear: adjust with glibc and libcrypt-compat
glibc 2.39 has removed libcrypt completely.
solution: link against libxcrypt built with glibc compatibility.

Signed-off-by: Konstantin Demin <rockdrilla@gmail.com>
Link: https://github.com/openwrt/openwrt/pull/19293
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2025-07-12 23:38:19 +02:00
Konstantin Demin
5e0fbca9b9 dropbear: disable RSA-SHA1 by default
Upstream has disabled SHA-1 algorithms by default since version 2025.87.
SHA-1 has known weakness and most SSH implementations support alternatives.

Signed-off-by: Konstantin Demin <rockdrilla@gmail.com>
2025-07-11 11:23:50 +02:00
Konstantin Demin
3dc05213e0 dropbear: simplify rebuild on config changes
It's hard or even impossible to track affected sources
so it's safe to remove all built objects (if any).

Signed-off-by: Konstantin Demin <rockdrilla@gmail.com>
2025-07-11 11:23:50 +02:00
Konstantin Demin
d8ff2d8cba dropbear: refactor configuration
This allows to fine-tune dropbear build options.

This change is heavily based on similar work done by Marius Dinu earlier
so I'd like to say many thanks to original author.

Signed-off-by: Konstantin Demin <rockdrilla@gmail.com>
2025-07-11 11:23:50 +02:00
Konstantin Demin
bbe4d6ddb2 dropbear: bump to 2025.88
- update dropbear to latest stable 2025.88;
  for the changes see https://matt.ucc.asn.au/dropbear/CHANGES
- rewrite 100-pubkey_path.patch
- refresh remaining patches

Signed-off-by: Konstantin Demin <rockdrilla@gmail.com>
2025-07-11 11:23:49 +02:00
Felix Fietkau
bcf51747a2 unetd: update to Git HEAD (2025-07-05)
790b41b6b987 pex: indicate refused update requests
8b100a9e311a host: add support for defining per-host metadata

Signed-off-by: Felix Fietkau <nbd@nbd.name>
2025-07-10 10:48:19 +02:00
Felix Fietkau
db763342af hostapd: ignore comment lines for hash comparison
Fixes spurious unnecessary bss restarts

Signed-off-by: Felix Fietkau <nbd@nbd.name>
2025-07-09 12:14:30 +02:00
Felix Fietkau
a7ab0d5bff hostapd: enable CONFIG_OCV when 802.11be support is enabled
The 802.11be supoort code unconditionally calls ocv related functions

Signed-off-by: Felix Fietkau <nbd@nbd.name>
2025-07-07 17:16:23 +02:00
Felix Fietkau
bb279e1a69 hostapd: revert a broken upstream patch that was breaking multi-band operation
nl80211 events were propagated to the wrong interfaces

Fixes: 2ac791e87d ("hostapd: update to version 2025-06-27")
Signed-off-by: Felix Fietkau <nbd@nbd.name>
2025-07-06 18:47:41 +02:00
Agustin Lorenzo
2ac791e87d hostapd: update to version 2025-06-27
Manually refreshed:

140-tests-Makefile-make-run-tests-with-CONFIG_TLS.patch
601-ucode_support.patch

Fixed in upstream:

804-hostapd-revert-ACS-Validate-6-GHz-AP-criteria-before.patch [1]

Automatically rebased all other patches.

[1] https://w1.fi/cgit/hostap/commit/?id=0b60826a66885bffa2fd709ed5e48cd5fe241b6b

Signed-off-by: Agustin Lorenzo <agustin.lorenzo@thinco.es>
Signed-off-by: Felix Fietkau <nbd@nbd.name>
2025-07-05 14:41:57 +02:00
Felix Fietkau
39580b1d7b hostapd: disable 802.11be support in the mini variant
802.11be capable platforms are big enough to not need the mini variant,
and removing it here saves space for other other devices.

Signed-off-by: Felix Fietkau <nbd@nbd.name>
2025-07-05 14:41:00 +02:00
Felix Fietkau
6e1d4afa86 hostapd: fix potential double free in ubus code
Ensure that the object name is never freed twice

Signed-off-by: Felix Fietkau <nbd@nbd.name>
2025-07-05 14:41:00 +02:00
Felix Fietkau
f940f7c1ac hostapd: preserve vif radio mask for extra bss interfaces
Fixes status information and scanning on extra BSS interfaces when operating
on multi-radio devices.

Reported-by: Chad Monroe <chad.monroe@adtran.com>
Signed-off-by: Felix Fietkau <nbd@nbd.name>
2025-06-23 11:23:12 +02:00
Felix Fietkau
91a50b27bc unetmsg: make remote connection TCP timeout more aggressive
It is meant for reliable network connections, so requests should fail
early if a node goes down.

Signed-off-by: Felix Fietkau <nbd@nbd.name>
2025-06-21 17:12:46 +02:00
Felix Fietkau
9850052190 hostapd: fix generating own neighbor report for dynamically added/changed interfaces
hostapd_neighbor_set_own_report is normally called from interface setup only.

Signed-off-by: Felix Fietkau <nbd@nbd.name>
2025-06-20 14:57:35 +02:00
Felix Fietkau
3ebf110711 hostapd: fix dealing with mac address changes for the primary BSS
Ensure that hapd->own_addr is set properly, since hostapd_setup_bss
only handles it for secondary BSS interfaces

Signed-off-by: Felix Fietkau <nbd@nbd.name>
2025-06-20 14:57:35 +02:00
Rui Salvaterra
cc80fbb0aa ppp: fix building with GCC 15.1
Backport two patches in order to fix it.

Signed-off-by: Rui Salvaterra <rsalvaterra@gmail.com>
Link: https://github.com/openwrt/openwrt/pull/18600
Signed-off-by: Robert Marko <robimarko@gmail.com>
2025-06-08 12:20:15 +02:00
Felix Fietkau
ed26185bf6 hostapd: tweak ACS retry behavior
When running ACS on multi-radio devices, ACS on one band can block another.
Increase the number of retries and prevent bouncing interfaces between AP
and STA mode during attempts.

Signed-off-by: Felix Fietkau <nbd@nbd.name>
2025-05-31 16:22:48 +02:00
Felix Fietkau
e29669dae1 unetmsg: set TCP timeout for outgoing connections
Avoid running into long timeouts

Signed-off-by: Felix Fietkau <nbd@nbd.name>
2025-05-31 16:22:39 +02:00
Florian Eckert
ae198c6ba0 dnsmasq: fix start if dhcp-range is not correct
If the uci 'dhcp' configuration for the dhcp leases is incorrect then
the call to 'ipclac' fails. However, the problem is that the dnsmasq
configuration option 'dhcp-range' is still written for this uci section
even though the information generated by ipcalc is incorrect or not set.

Due to the incorrectly generated configuration for dnsmasq, the service
cannot start.

To prevent an incorrect configuration from being written to the configuration,
a check is now made beforehand to ensure that the required variables are
present and valid. If the configuration is incorrect, a message is emitted
to the log that this configuration section is incorrect and this uci
configuration section is omitted.

Signed-off-by: Florian Eckert <fe@dev.tdt.de>
Link: https://github.com/openwrt/openwrt/pull/18641
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2025-05-29 23:54:18 +02:00
Felix Fietkau
0937098512 umdns: update to Git HEAD (2025-05-29)
263a0cb87b50 udebug: use proper libudebug API
ca9b8765aea3 dns: rework packet API
ea40cfdf7eb0 cache: send multiple queries in a single packet
d62813727e53 cache: add explicit lookup for host addresses
0ce73d80dc0c dns: add cache/queue for outgoing queries
083be33749b1 cache: improve service refresh behavior
55d0c1bc1ac5 interface: ask for unicast responses by default
ce508467a533 service: add support for setting service specific hostname
632953a1582d interface: when interface properties change, reinitialise
695ac3708aa0 ubus: fix ubus announcements txt fields
cecbe1c0caae Make mdns responder case-insensitive.
2b28094d31ca dns: add support for reverse address mapping queries

Signed-off-by: Felix Fietkau <nbd@nbd.name>
2025-05-29 13:32:16 +02:00
Felix Fietkau
3174182366 umdns: fix udebug with jail
Signed-off-by: Felix Fietkau <nbd@nbd.name>
2025-05-29 13:32:06 +02:00
Agustin Lorenzo
93e944648b hostapd: revert "ACS: Validate 6 GHz AP criteria before ACS"
By OpenWrt's design, hostapd runs in a single global instance for all radios supported by the device, rather than one instance per radio like hostapd usually does.

Signed-off-by: Agustin Lorenzo <agustin.lorenzo@thinco.es>
Link: https://github.com/openwrt/openwrt/pull/18426
Signed-off-by: Robert Marko <robimarko@gmail.com>
2025-05-29 11:34:48 +02:00
Agustin Lorenzo
70505e0e51 hostapd: update to version 2025-05-23
Manually refreshed:

301-mesh-noscan.patch
601-ucode_support.patch
770-radius_server.patch

Automatically rebased all other patches.

Signed-off-by: Agustin Lorenzo <agustin.lorenzo@thinco.es>
Link: https://github.com/openwrt/openwrt/pull/18426
Signed-off-by: Robert Marko <robimarko@gmail.com>
2025-05-29 11:34:48 +02:00
Felix Fietkau
82cc7f56e3 unetmsg: fix host name in response messages
Avoid using loop iterator variable when generating the closure

Signed-off-by: Felix Fietkau <nbd@nbd.name>
2025-05-20 18:38:39 +02:00
Felix Fietkau
12f4814c41 unetmsg: add support for sending requests/messages to specific hosts
Makes it possible to implement unetmsg APIs for host control

Signed-off-by: Felix Fietkau <nbd@nbd.name>
2025-05-20 18:38:39 +02:00
Mieczyslaw Nalewaj
a238170e57 treewide: strip trailing whitespace
Strip trailing whitespace in all code:
find . -type f | grep "\.c$" | xargs sed -i 's/[ \t]\+$//'
find . -type f | grep "\.h$" | xargs sed -i 's/[ \t]\+$//'
find . -type f | grep "\.dts$" | xargs sed -i 's/[ \t]\+$//'
find . -type f | grep "\.dtsi$" | xargs sed -i 's/[ \t]\+$//'

Signed-off-by: Mieczyslaw Nalewaj <namiltd@yahoo.com>
Link: https://github.com/openwrt/openwrt/pull/18626
Signed-off-by: Robert Marko <robimarko@gmail.com>
2025-05-20 00:47:37 +02:00
Felix Fietkau
f60bbfa23f unetmsg: list remotely published ids via ubus call
Before this change, only locally published ids were listed

Signed-off-by: Felix Fietkau <nbd@nbd.name>
2025-05-16 13:01:41 +02:00
Felix Fietkau
a242cfb4e1 unetmsg: return the request data when issuing async requests
Makes it possible to track and cancel requests

Signed-off-by: Felix Fietkau <nbd@nbd.name>
2025-05-16 13:01:41 +02:00
Felix Fietkau
7f1b9a4209 unetd: cli: add hook calls for invite/join status changes
Allows different frontends to interact without parsing human readable
messages

Signed-off-by: Felix Fietkau <nbd@nbd.name>
2025-05-14 11:23:09 +02:00
Felix Fietkau
6e60ce007b unetmsg: clean up remote data when replacing the incoming connection
Ensure that pub/sub state is in sync

Signed-off-by: Felix Fietkau <nbd@nbd.name>
2025-05-12 12:47:20 +02:00
Felix Fietkau
9bdbe24176 unetmsg: ping on tx channel after new incoming connection
Ensure that stale connections are timed out faster

Signed-off-by: Felix Fietkau <nbd@nbd.name>
2025-05-12 12:47:20 +02:00