fix(haproxyctl): Handle multiple users in userlist
- Changed _print_uci_userlist to use config_list_foreach - Each user now gets separate "user ... password ..." line - Fixes HAProxy basic auth with multiple users Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
This commit is contained in:
parent
a85a7dd39c
commit
a612bbe199
@ -523,22 +523,24 @@ generate_certs_list() {
|
|||||||
# Helper to print a single userlist from UCI
|
# Helper to print a single userlist from UCI
|
||||||
_print_uci_userlist() {
|
_print_uci_userlist() {
|
||||||
local section="$1"
|
local section="$1"
|
||||||
local name user
|
local name
|
||||||
|
|
||||||
config_get name "$section" name
|
config_get name "$section" name
|
||||||
config_get user "$section" user
|
|
||||||
|
|
||||||
[ -z "$name" ] && return
|
[ -z "$name" ] && return
|
||||||
[ -z "$user" ] && return
|
|
||||||
|
|
||||||
echo "userlist $name"
|
echo "userlist $name"
|
||||||
# user format in UCI: username:password_hash
|
# Handle list of users
|
||||||
local username="${user%%:*}"
|
config_list_foreach "$section" user _print_userlist_user
|
||||||
local password="${user#*:}"
|
|
||||||
echo " user $username password $password"
|
|
||||||
echo ""
|
echo ""
|
||||||
}
|
}
|
||||||
|
|
||||||
|
_print_userlist_user() {
|
||||||
|
local entry="$1"
|
||||||
|
local username="${entry%%:*}"
|
||||||
|
local password="${entry#*:}"
|
||||||
|
echo " user $username password $password"
|
||||||
|
}
|
||||||
|
|
||||||
# Generate all UCI-defined userlists
|
# Generate all UCI-defined userlists
|
||||||
_generate_uci_userlists() {
|
_generate_uci_userlists() {
|
||||||
config_load haproxy
|
config_load haproxy
|
||||||
|
|||||||
Loading…
Reference in New Issue
Block a user