summaryrefslogtreecommitdiff
path: root/FS/FS/svc_acct.pm
diff options
context:
space:
mode:
authorivan <ivan>2010-11-04 17:38:35 +0000
committerivan <ivan>2010-11-04 17:38:35 +0000
commit696a5c1ac572c9327021d01d2d49121f1198c7da (patch)
tree3755648eddcaaf879872bc4afefc3bf4966909cd /FS/FS/svc_acct.pm
parent525583dc4bf34e3668871868b3374f590e4928a4 (diff)
finish username-slash and username-equals, RT#10452
Diffstat (limited to 'FS/FS/svc_acct.pm')
-rw-r--r--FS/FS/svc_acct.pm16
1 files changed, 7 insertions, 9 deletions
diff --git a/FS/FS/svc_acct.pm b/FS/FS/svc_acct.pm
index 43ff2a5..94a839b 100644
--- a/FS/FS/svc_acct.pm
+++ b/FS/FS/svc_acct.pm
@@ -1243,16 +1243,14 @@ sub check {
}
my $ulen = $usernamemax || $self->dbdef_table->column('username')->length;
- if ( $username_uppercase ) {
- $recref->{username} =~ /^([a-z0-9_\-\.\&\%\:\/\=]{$usernamemin,$ulen})$/i
- or return gettext('illegal_username'). " ($usernamemin-$ulen): ". $recref->{username};
- $recref->{username} = $1;
- } else {
- $recref->{username} =~ /^([a-z0-9_\-\.\&\%\:]{$usernamemin,$ulen})$/
- or return gettext('illegal_username'). " ($usernamemin-$ulen): ". $recref->{username};
- $recref->{username} = $1;
- }
+ $recref->{username} =~ /^([a-z0-9_\-\.\&\%\:\/\=]{$usernamemin,$ulen})$/i
+ or return gettext('illegal_username'). " ($usernamemin-$ulen): ". $recref->{username};
+ $recref->{username} = $1;
+
+ unless ( $username_uppercase ) {
+ $recref->{username} =~ /[A-Z]/ and return gettext('illegal_username');
+ }
if ( $username_letterfirst ) {
$recref->{username} =~ /^[a-z]/ or return gettext('illegal_username');
} elsif ( $username_letter ) {