32 lines
533 B
Go
32 lines
533 B
Go
package am
|
|
|
|
import (
|
|
"errors"
|
|
"fmt"
|
|
"regexp"
|
|
)
|
|
|
|
var namePattern = regexp.MustCompile(`^[a-zA-Z0-9\-_]+$`)
|
|
|
|
func validateName(s string) error {
|
|
if len(s) < 2 || !namePattern.MatchString(s) {
|
|
return fmt.Errorf("Invalid name: %s", s)
|
|
}
|
|
return nil
|
|
}
|
|
|
|
func validatePwd(pwd string) error {
|
|
if len(pwd) < 8 {
|
|
return errors.New("Password must be at least 8 characters.")
|
|
}
|
|
return nil
|
|
|
|
}
|
|
|
|
func validateAPIKey(key string) error {
|
|
if len(key) < 16 {
|
|
return errors.New("API key must be at least 16 characters.")
|
|
}
|
|
return nil
|
|
}
|