diff options
author | Ivan Kohler <ivan@freeside.biz> | 2013-01-28 22:50:22 -0800 |
---|---|---|
committer | Ivan Kohler <ivan@freeside.biz> | 2013-01-28 22:50:22 -0800 |
commit | aa97e36a3bb5c92251ab14a47c710ffecb5b26c8 (patch) | |
tree | 57fdcb8b616fb77823a5f58e36728aad671d36fe /FS/FS/svc_acct.pm | |
parent | 52380fd490b228e5b2a7cdd3a98ea5185b44a7a9 (diff) |
username-exclamation, RT#18227
Diffstat (limited to 'FS/FS/svc_acct.pm')
-rw-r--r-- | FS/FS/svc_acct.pm | 7 |
1 files changed, 6 insertions, 1 deletions
diff --git a/FS/FS/svc_acct.pm b/FS/FS/svc_acct.pm index 8e71d829d..bd71b0ba1 100644 --- a/FS/FS/svc_acct.pm +++ b/FS/FS/svc_acct.pm @@ -15,6 +15,7 @@ use vars qw( $DEBUG $me $conf $skip_fuzzyfiles $username_noperiod $username_nounderscore $username_nodash $username_uppercase $username_percent $username_colon $username_slash $username_equals $username_pound + $username_exclamation $password_noampersand $password_noexclamation $warning_template $warning_from $warning_subject $warning_mimetype $warning_cc @@ -85,6 +86,7 @@ FS::UID->install_callback( sub { $username_slash = $conf->exists('username-slash'); $username_equals = $conf->exists('username-equals'); $username_pound = $conf->exists('username-pound'); + $username_exclamation = $conf->exists('username-exclamation'); $password_noampersand = $conf->exists('password-noexclamation'); $password_noexclamation = $conf->exists('password-noexclamation'); $dirhash = $conf->config('dirhash') || 0; @@ -1193,7 +1195,7 @@ sub check { my $ulen = $usernamemax || $self->dbdef_table->column('username')->length; - $recref->{username} =~ /^([a-z0-9_\-\.\&\%\:\/\=\#]{$usernamemin,$ulen})$/i + $recref->{username} =~ /^([a-z0-9_\-\.\&\%\:\/\=\#\!]{$usernamemin,$ulen})$/i or return gettext('illegal_username'). " ($usernamemin-$ulen): ". $recref->{username}; $recref->{username} = $1; @@ -1234,6 +1236,9 @@ sub check { unless ( $username_pound ) { $recref->{username} =~ /\#/ and return $uerror; } + unless ( $username_exclamation ) { + $recref->{username} =~ /\!/ and return $uerror; + } $recref->{popnum} =~ /^(\d*)$/ or return "Illegal popnum: ".$recref->{popnum}; |