diff options
author | ivan <ivan> | 2011-06-10 18:46:55 +0000 |
---|---|---|
committer | ivan <ivan> | 2011-06-10 18:46:55 +0000 |
commit | ac306e4f3963dd6d46217b7bbd80259c2e0ff3ce (patch) | |
tree | 87e9843f6edb55fac4e9dab8514445356fa13625 /FS/FS/svc_acct.pm | |
parent | 6361e71971a84c4f798c2f4eef89bbd454a3cb0d (diff) |
add sha1_base64 password encryption option to acct_sql export
Diffstat (limited to 'FS/FS/svc_acct.pm')
-rw-r--r-- | FS/FS/svc_acct.pm | 18 |
1 files changed, 11 insertions, 7 deletions
diff --git a/FS/FS/svc_acct.pm b/FS/FS/svc_acct.pm index a901f3bbb..8e5831584 100644 --- a/FS/FS/svc_acct.pm +++ b/FS/FS/svc_acct.pm @@ -2676,12 +2676,12 @@ sub crypt_password { my $encryption = ( scalar(@_) && $_[0] ) ? shift : 'crypt'; if ( $encryption eq 'crypt' ) { - crypt( + return crypt( $self->_password, $saltset[int(rand(64))].$saltset[int(rand(64))] ); } elsif ( $encryption eq 'md5' ) { - unix_md5_crypt( $self->_password ); + return unix_md5_crypt( $self->_password ); } elsif ( $encryption eq 'blowfish' ) { croak "unknown encryption method $encryption"; } else { @@ -2689,7 +2689,7 @@ sub crypt_password { } } elsif ( $self->_password =~ /^\{CRYPT\}(.+)$/ ) { - $1; + return $1; } } elsif ( $self->_password_encoding eq 'crypt' ) { @@ -2702,12 +2702,16 @@ sub crypt_password { my $encryption = ( scalar(@_) && $_[0] ) ? shift : 'crypt'; if ( $encryption eq 'crypt' ) { - crypt( + return crypt( $self->_password, $saltset[int(rand(64))].$saltset[int(rand(64))] ); } elsif ( $encryption eq 'md5' ) { - unix_md5_crypt( $self->_password ); + return unix_md5_crypt( $self->_password ); + } elsif ( $encryption eq 'sha1_base64' ) { #for acct_sql + my $pass = sha1_base64( $self->_password ); + $pass .= '=' x (4 - length($pass) % 4); #properly padded base64 + return $pass; } elsif ( $encryption eq 'blowfish' ) { croak "unknown encryption method $encryption"; } else { @@ -2728,12 +2732,12 @@ sub crypt_password { my $encryption = ( scalar(@_) && $_[0] ) ? shift : 'crypt'; if ( $encryption eq 'crypt' ) { - crypt( + return crypt( $self->_password, $saltset[int(rand(64))].$saltset[int(rand(64))] ); } elsif ( $encryption eq 'md5' ) { - unix_md5_crypt( $self->_password ); + return unix_md5_crypt( $self->_password ); } elsif ( $encryption eq 'blowfish' ) { croak "unknown encryption method $encryption"; } else { |