Changeset 1634 for trunk


Ignore:
Timestamp:
01/14/16 09:33:12 (8 years ago)
Author:
nanardon
Message:

Don't decrypt all password if not need

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/LATMOS-Accounts/bin/la-sql-crypt-passwd

    r1314 r1634  
    7878 
    7979sub get_clear_password { 
     80 
     81    my @users_to_decode = @_; 
     82 
    8083    $clear and return $clear; 
    8184    my %encpasswd = $labase->get_rsa_password; 
     
    8689    ReadMode 0; 
    8790    print "\n"; 
    88     printf "Trying to get current stored password (%d)\n", scalar(keys %encpasswd); 
    8991    my $private_key = $labase->private_key($password) or 
    9092        die "Cannot get private key\n"; 
    9193    my $rsa = new Crypt::RSA ES => 'PKCS1v15'; 
     94 
    9295    my %clear_passwd; 
    93     foreach (keys %encpasswd) { 
     96 
     97    if (!@users_to_decode) { 
     98        @users_to_decode = sort keys %encpasswd; 
     99    } 
     100 
     101    printf 
     102        "Trying to get current stored password (%d)\n", 
     103        scalar(@users_to_decode); 
     104 
     105    foreach (@users_to_decode) { 
    94106        my $clearp = $rsa->decrypt ( 
    95107                Cyphertext => $encpasswd{$_}, 
     
    112124    } 
    113125    my $destbase = $LA->base($set) or die "Cannot get base $set\n"; 
    114     my $clearpasswd = get_clear_password(); 
     126    my $clearpasswd = get_clear_password(@users); 
    115127 
    116128    my @userstoset = @users ? @users : keys %$clearpasswd; 
Note: See TracChangeset for help on using the changeset viewer.