Skip to content

Commit 40b1942

Browse files
committed
Use for loop
- Fix bug with part of banned username being rejected for example: buffer was also banned - Add extra tests for id_buffer "Blacklisted" username buffer "Valid username" but containing string within "banned username"
1 parent 4e7b27b commit 40b1942

File tree

2 files changed

+23
-1
lines changed

2 files changed

+23
-1
lines changed

bin/v-add-user

Lines changed: 5 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -36,10 +36,14 @@ is_user_free() {
3636
# these names may cause issues with MariaDB/MySQL database names and should be reserved:
3737
# sudo has been added due to Privilege escalation as sudo group has always sudo permission
3838
reserved_names=("aria" "aria_log" "mysql" "mysql_upgrade" "ib" "ib_buffer" "ddl" "ddl_recovery" "performance" "sudo")
39-
if [[ "${reserved_names[@],,}" =~ "${user,,}" ]]; then
39+
for value in "${reserved_names[@]}"
40+
do
41+
if [ "${user,,}" = "$value" ]; then
4042
check_result "$E_INVALID" "The user name '$user' is reserved and cannot be used. List of reserved names: ${reserved_names[*]}"
4143
return
4244
fi
45+
done
46+
4347
check_sysuser=$(cut -f 1 -d : /etc/passwd | grep "^$user$")
4448
if [ -n "$check_sysuser" ] || [ -e "$USER_DATA" ]; then
4549
check_result "$E_EXISTS" "user $user exists"

test/test.bats

Lines changed: 18 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -396,6 +396,12 @@ function check_ip_not_banned(){
396396
assert_output --partial 'Error: invalid user format'
397397
}
398398

399+
@test "User: Add new user Failed 6" {
400+
run v-add-user 'ib_Buffer' $user $user@hestiacp2.com default "Super Test"
401+
assert_failure $E_INVALID
402+
assert_output --partial 'Error: invalid user format'
403+
}
404+
399405
@test "User: Add new user Success 1" {
400406
run v-add-user 'jaap01' $user $user@hestiacp2.com default "Super Test"
401407
assert_success
@@ -408,6 +414,18 @@ function check_ip_not_banned(){
408414
refute_output
409415
}
410416

417+
@test "User: Add new user Success 2" {
418+
run v-add-user 'buffer' $user $user@hestiacp2.com default "Super Test"
419+
assert_success
420+
refute_output
421+
}
422+
423+
@test "User: Add new user Success 2 Delete" {
424+
run v-delete-user buffer
425+
assert_success
426+
refute_output
427+
}
428+
411429
@test "User: Change user password" {
412430
run v-change-user-password "$user" "$userpass2"
413431
assert_success

0 commit comments

Comments
 (0)