Procházet zdrojové kódy

Only check for new users

Jaap Marcus před 2 roky
rodič
revize
fe4ae48f98
3 změnil soubory, kde provedl 15 přidání a 2 odebrání
  1. 3 0
      bin/v-add-user
  2. 6 2
      func/main.sh
  3. 6 0
      test/test.bats

+ 3 - 0
bin/v-add-user

@@ -21,6 +21,9 @@ name=$5
 if [ -n "$6" ]; then
 	name="$name $6"
 fi
+
+FROM_V_ADD_USER=true
+
 # Includes
 # shellcheck source=/etc/hestiacp/hestia.conf
 source /etc/hestiacp/hestia.conf

+ 6 - 2
func/main.sh

@@ -748,8 +748,12 @@ is_user_format_valid() {
 	if [ "$1" != "${1//[^[:ascii:]]/}" ]; then
 		check_result "$E_INVALID" "invalid $2 format :: $1"
 	fi
-	if ! [[ "$1" =~ ^[a-zA-Z]+ ]]; then
-		check_result "$E_INVALID" "invalid $2 format :: $1"
+
+	# Only for new users
+	if [[ "$FROM_V_ADD_USER" == "true" ]]; then
+		if ! [[ "$1" =~ ^[a-zA-Z][-|.|_[:alnum:]]{0,28}[[:alnum:]]$ ]]; then
+			check_result "$E_INVALID" "invalid $2 format :: $1"
+		fi
 	fi
 }
 

+ 6 - 0
test/test.bats

@@ -390,6 +390,12 @@ function check_ip_not_banned(){
 	assert_output --partial 'Error: invalid user format'
 }
 
+@test "User: Add new user Failed 5" {
+	run v-add-user '1aap'  $user $user@hestiacp2.com default "Super Test"
+	assert_failure $E_INVALID
+	assert_output --partial 'Error: invalid user format'
+}
+
 @test "User: Add new user Success 1" {
 	run v-add-user 'jaap01'  $user $user@hestiacp2.com default "Super Test"
 	assert_success