List Info

Thread: OpenSSL: openssl/ Makefile.org openssl/tools/ c_rehash.in




OpenSSL: openssl/ Makefile.org openssl/tools/ c_rehash.in
user name
2006-10-21 16:28:03
  OpenSSL CVS Repository
  http://cvs.openssl.org/
 
____________________________________________________________
________________

  Server: cvs.openssl.org                  Name:   Andy
Polyakov
  Root:   /v/openssl/cvs                   Email:  approopenssl.org
  Module: openssl                          Date:  
21-Oct-2006 18:28:03
  Branch: HEAD                             Handle:
2006102117280300

  Modified files:
    openssl                 Makefile.org
    openssl/tools           c_rehash.in

  Log:
    Make c_rehash more platform neutral and make it work in
mixed environment,
    such as MSYS with "native" Win32 perl.

  Summary:
    Revision    Changes     Path
    1.278       +1  -0      openssl/Makefile.org
    1.10        +17 -5      openssl/tools/c_rehash.in
 
____________________________________________________________
________________

  patch -p0 <<' .'
  Index: openssl/Makefile.org
 
============================================================
================
  $ cvs diff -u -r1.277 -r1.278 Makefile.org
  --- openssl/Makefile.org	21 Oct 2006 13:38:15 -0000	1.277
  +++ openssl/Makefile.org	21 Oct 2006 16:28:03 -0000	1.278
   -388,6 +388,7 
   rehash.time: certs apps
   	if [ -z "$(CROSS_COMPILE_PREFIX)" ]; then 
   		(OPENSSL="`pwd`/util/opensslwrap.sh"; 
  +		[ -x "apps/openssl.exe" ] &&
OPENSSL="apps/openssl.exe"; 
   		OPENSSL_DEBUG_MEMORY=on; 
   		export OPENSSL OPENSSL_DEBUG_MEMORY; 
   		$(PERL) tools/c_rehash certs) && 
   .
  patch -p0 <<' .'
  Index: openssl/tools/c_rehash.in
 
============================================================
================
  $ cvs diff -u -r1.9 -r1.10 c_rehash.in
  --- openssl/tools/c_rehash.in	11 Oct 2002 20:31:27
-0000	1.9
  +++ openssl/tools/c_rehash.in	21 Oct 2006 16:28:03
-0000	1.10
   -15,11 +15,14 
   	$ENV = $openssl;
   }
   
  -$ENV .= ":$dir/bin";
  +my $pwd = `pwd`; chomp $pwd;
  +my $path_delim = ($pwd =~ /^[a-z]:/i) ? ';' : ':'; #
DOS/Win32 or Unix delimiter?
  +
  +$ENV .= "$path_delim$dir/bin";
   
   if(! -x $openssl) {
   	my $found = 0;
  -	foreach (split /:/, $ENV) {
  +	foreach (split /$path_delim/, $ENV) {
   		if(-x "$_/$openssl") {
   			$found = 1;
   			last;
   -34,11 +37,16 
   if(ARGV) {
   	dirlist = ARGV;
   } elsif($ENV) {
  -	dirlist = split /:/, $ENV;
  +	dirlist = split /$path_delim/, $ENV;
   } else {
   	$dirlist[0] = "$dir/certs";
   }
   
  +if (-d $dirlist[0]) {
  +	chdir $dirlist[0];
  +	$openssl="$pwd/$openssl" if (!-x $openssl);
  +	chdir $pwd;
  +}
   
   foreach (dirlist) {
   	if(-d $_ and -w $_) {
   -101,7 +109,7 
   sub link_hash_cert {
   		my $fname = $_[0];
   		$fname =~ s/'/'\''/g;
  -		my ($hash, $fprint) = `"$openssl" x509 -hash
-fingerprint -noout -in '$fname'`;
  +		my ($hash, $fprint) = `"$openssl" x509 -hash
-fingerprint -noout -in "$fname"`;
   		chomp $hash;
   		chomp $fprint;
   		$fprint =~ s/^.*=//;
   -122,7 +130,11 
   		if ($symlink_exists) {
   			symlink $fname, $hash;
   		} else {
  -			system ("cp", $fname, $hash);
  +			open IN,"<$fname" or die "can't open
$fname for read";
  +			open OUT,">$hash" or die "can't open
$hash for write";
  +			print OUT <IN>;	# does the job for small text
files
  +			close OUT;
  +			close IN;
   		}
   		$hashlist{$hash} = $fprint;
   }
   .
____________________________________________________________
__________
OpenSSL Project                                 http://www.openssl.org
CVS Repository Commit List                    
openssl-cvsopenssl.org
Automated List Manager                          
majordomoopenssl.org
[1]

about | contact  Other archives ( Real Estate discussion Medical topics )