home *** CD-ROM | disk | FTP | other *** search
/ PC World 2005 December (Special) / PCWorld_2005-12_Special_cd.bin / Bezpecnost / lsti / lsti.exe / framework-2.5.exe / randomize.al < prev    next >
Text File  |  2005-04-23  |  1KB  |  32 lines

  1. # NOTE: Derived from blib/lib/Net/SSLeay.pm.
  2. # Changes made here will be lost when autosplit is run again.
  3. # See AutoSplit.pm.
  4. package Net::SSLeay;
  5.  
  6. #line 1687 "blib/lib/Net/SSLeay.pm (autosplit into blib/lib/auto/Net/SSLeay/randomize.al)"
  7. ### Arrange some randomness for eay PRNG
  8.  
  9. sub randomize (;$$) {
  10.     my ($rn_seed_file, $seed, $egd_path) = @_;
  11.     my $rnsf = defined($rn_seed_file) && -r $rn_seed_file;
  12.  
  13.     $egd_path = $ENV{'EGD_PATH'} if $ENV{'EGD_PATH'};
  14.     $egd_path = '/tmp/entropy'   unless $egd_path;
  15.     
  16.     RAND_seed(rand() + $$);  # Stir it with time and pid
  17.     
  18.     unless ($rnsf || -r $Net::SSLeay::random_device || $seed || -S $egd_path) {
  19.     warn "Random number generator not seeded!!!" if $trace;
  20.     }
  21.     
  22.     RAND_load_file($rn_seed_file, -s _) if $rnsf;
  23.     RAND_seed($seed) if $seed;
  24.     RAND_seed($ENV{RND_SEED}) if $ENV{RND_SEED};
  25.     RAND_egd($egd_path) if -S $egd_path;
  26.     RAND_load_file($Net::SSLeay::random_device, $Net::SSLeay::how_random/8)
  27.     if -r $Net::SSLeay::random_device;
  28. }
  29.  
  30. # end of Net::SSLeay::randomize
  31. 1;
  32.