luci-base: dispatcher.uc: skip login nodes when resolving w/ active session
authorJo-Philipp Wich <jo@mein.io>
Tue, 30 Jul 2024 21:50:41 +0000 (23:50 +0200)
committerJo-Philipp Wich <jo@mein.io>
Tue, 30 Jul 2024 22:01:22 +0000 (00:01 +0200)
commit65b8002adbf8219b5dad37637756fa8fcae871a6
tree90a1aec160641f7b7cd0137f114b235e0df5feeb
parent79a7012dce62624d61bb50934f1b382518455cdc
luci-base: dispatcher.uc: skip login nodes when resolving w/ active session

When resolving eligible child nodes during evaluation of the "firstchild"
dispatch action, do not consider nodes allowing a login as allowed when
there already is an established session.

This fixes cases where restricted sessions are redirected to nodes they
have insufficent ACLs for, just because those nodes allow logins.

Fixes: #7218
Ref: https://forum.openwrt.org/t/x/174687
Suggested-by: @mikma
Signed-off-by: Jo-Philipp Wich <jo@mein.io>
modules/luci-base/ucode/dispatcher.uc