Explorar el Código

Merge pull request #4279 from Skamasle/patch-6

Remove PHP code, and fix installer warning
Jaap Marcus hace 2 años
padre
commit
db385feec9
Se han modificado 2 ficheros con 26 adiciones y 6 borrados
  1. 8 6
      bin/v-add-user
  2. 18 0
      test/test.bats

+ 8 - 6
bin/v-add-user

@@ -35,12 +35,14 @@ source_conf "$HESTIA/conf/hestia.conf"
 is_user_free() {
 	# these names may cause issues with MariaDB/MySQL database names and should be reserved:
 	# sudo has been added due to Privilege escalation as sudo group has always sudo permission
-	check_sysuser=$(php -r '$reserved_names=array("aria", "aria_log", "mysql", "mysql_upgrade", "ib", "ib_buffer",
- "ddl", "ddl_recovery", "performance", "sudo"); if(in_array(strtolower($argv[1]), $reserved_names, true)){echo implode(", ", $reserved_names);}' "$user")
-	if [ -n "$check_sysuser" ]; then
-		check_result "$E_INVALID" "The user name '$user' is reserved and cannot be used. List of reserved names: $check_sysuser"
-		return
-	fi
+	reserved_names=("aria" "aria_log" "mysql" "mysql_upgrade" "ib" "ib_buffer" "ddl" "ddl_recovery" "performance" "sudo")
+	for value in "${reserved_names[@]}"; do
+		if [ "${user,,}" = "$value" ]; then
+			check_result "$E_INVALID" "The user name '$user' is reserved and cannot be used. List of reserved names: ${reserved_names[*]}"
+			return
+		fi
+	done
+
 	check_sysuser=$(cut -f 1 -d : /etc/passwd | grep "^$user$")
 	if [ -n "$check_sysuser" ] || [ -e "$USER_DATA" ]; then
 		check_result "$E_EXISTS" "user $user exists"

+ 18 - 0
test/test.bats

@@ -396,6 +396,12 @@ function check_ip_not_banned(){
 	assert_output --partial 'Error: invalid user format'
 }
 
+@test "User: Add new user Failed 6" {
+	run v-add-user 'ib_Buffer'  $user $user@hestiacp2.com default "Super Test"
+	assert_failure $E_INVALID
+	assert_output --partial 'Error: The user name'
+}
+
 @test "User: Add new user Success 1" {
 	run v-add-user 'jaap01'  $user $user@hestiacp2.com default "Super Test"
 	assert_success
@@ -408,6 +414,18 @@ function check_ip_not_banned(){
 	refute_output
 }
 
+@test "User: Add new user Success 2" {
+	run v-add-user 'buffer'  $user $user@hestiacp2.com default "Super Test"
+	assert_success
+	refute_output
+}
+
+@test "User: Add new user Success 2 Delete" {
+	run v-delete-user buffer
+	assert_success
+	refute_output
+}
+
 @test "User: Change user password" {
     run v-change-user-password "$user" "$userpass2"
     assert_success