@@ -554,9 +554,18 @@ validate_format_email() {
554554 fi
555555}
556556
557+ # Name
558+ validate_format_name () {
559+ if ! [[ " $1 " =~ ^[[:alnum:]][-| \. | _[:alnum:]]{0,28}[[:alnum:]]$ ]]; then
560+ echo " Error: $2 $1 is not valid"
561+ log_event " $E_INVALID " " $EVENT "
562+ exit $E_INVALID
563+ fi
564+ }
565+
557566# Username
558567validate_format_username () {
559- if ! [[ " $1 " =~ ^[[:alnum:]][- | \. | _[:alnum:]]{0,28}[[:alnum:]] $ ]]; then
568+ if ! [[ " $1 " =~ ^[a-zA-Z0-9] + ([ \. | _| -][a-zA-Z0-9]+) ? $ ]]; then
560569 echo " Error: $2 $1 is not valid"
561570 log_event " $E_INVALID " " $EVENT "
562571 exit $E_INVALID
@@ -710,7 +719,7 @@ validate_format(){
710719 antivirus) validate_format_boolean " $arg " ' antivirus' ;;
711720 autoreply) validate_format_autoreply " $arg " ;;
712721 backup) validate_format_date " $arg " ;;
713- charset) validate_format_username " $arg " " $arg_name " ;;
722+ charset) validate_format_name " $arg " " $arg_name " ;;
714723 charsets) validate_format_common " $arg " ' charsets' ;;
715724 database) validate_format_database " $arg " ' database' ;;
716725 day) validate_format_mhdmw " $arg " $arg_name ;;
@@ -724,7 +733,7 @@ validate_format(){
724733 email) validate_format_email " $arg " ;;
725734 exp) validate_format_date " $arg " ;;
726735 extentions) validate_format_common " $arg " ' extentions' ;;
727- fname) validate_format_username " $arg " " $arg_name " ;;
736+ fname) validate_format_name " $arg " " $arg_name " ;;
728737 forward) validate_format_email " $arg " ;;
729738 ftp_password) validate_format_password " $arg " ;;
730739 ftp_user) validate_format_username " $arg " " $arg_name " ;;
@@ -737,7 +746,7 @@ validate_format(){
737746 ip_status) validate_format_ip_status " $arg " ;;
738747 job) validate_format_int " $arg " ;;
739748 key) validate_format_username " $arg " " $arg_name " ;;
740- lname) validate_format_username " $arg " " $arg_name " ;;
749+ lname) validate_format_name " $arg " " $arg_name " ;;
741750 malias) validate_format_username " $arg " " $arg_name " ;;
742751 mask) validate_format_ip " $arg " ;;
743752 max_db) validate_format_int " $arg " ;;
@@ -747,7 +756,7 @@ validate_format(){
747756 ns2) validate_format_domain " $arg " ;;
748757 ns3) validate_format_domain " $arg " ;;
749758 ns4) validate_format_domain " $arg " ;;
750- package) validate_format_username " $arg " " $arg_name " ;;
759+ package) validate_format_name " $arg " " $arg_name " ;;
751760 password) validate_format_password " $arg " ;;
752761 port) validate_format_int " $arg " ;;
753762 quota) validate_format_int " $arg " ;;
@@ -758,7 +767,7 @@ validate_format(){
758767 soa) validate_format_domain " $arg " ;;
759768 stats_pass) validate_format_password " $arg " ;;
760769 stats_user) validate_format_username " $arg " " $arg_name " ;;
761- template) validate_format_username " $arg " " $arg_name " ;;
770+ template) validate_format_name " $arg " " $arg_name " ;;
762771 ttl) validate_format_int " $arg " ;;
763772 user) validate_format_username " $arg " " $arg_name " ;;
764773 wday) validate_format_mhdmw " $arg " $arg_name ;;
0 commit comments