From 9becf666212e3e75942e81621f57fc6286eda623 Mon Sep 17 00:00:00 2001 From: "Dr. Stephen Henson" Date: Sat, 13 Feb 1999 23:13:32 +0000 Subject: [PATCH] Oops... add other changes this time too. --- CHANGES | 6 ++++++ Configure | 58 +++++++++++++++++++++++++++++++++++++++++++++++++++++++ 2 files changed, 64 insertions(+) diff --git a/CHANGES b/CHANGES index f8b587975f..062e23b79d 100644 --- a/CHANGES +++ b/CHANGES @@ -5,6 +5,12 @@ Changes between 0.9.1c and 0.9.2 + *) Modify configure script 'Configure' to automatically create crypto/date.h + file under Win32 and also build pem.h from pem.org. New script + util/mkfiles.pl to create the MINFO file on environments that can't do a + 'make files': perl util/mkfiles.pl >MINFO should work. + [Steve Henson] + *) Major rework of DES function declarations, in the pursuit of correctness and purity. As a result, many evil casts evaporated, and some weirdness, too. You may find this causes warnings in your code. Zapping your evil diff --git a/Configure b/Configure index ff9e21d729..ef56bf75ea 100755 --- a/Configure +++ b/Configure @@ -225,6 +225,20 @@ my %table=( "OpenBSD-mips","gcc:-O2 -DL_ENDIAN:BN_LLONG MD2_CHAR RC4_INDEX RC4_CHAR DES_UNROLL DES_RISC2 DES_PTR BF_PTR::::", ); +# Miscellaneous hacks: this is designed to allow environments where the "one +# makefile" option does not auto build all files. +# The first six fields are the hard coded versions of the stuff generated by +# ctx_size for pem.h: that is EVP_ENCODE_CTX_SIZE, EVP_MD_SIZE EVP_MD_CTX_SIZE, +# EVP_CIPHER_SIZE, EVP_CIPHER_CTX_SIZE and EVP_MAX_MD_SIZE respectively. +# If the seventh field is 1 then auto generate +# crypto/date.h +# Need to add Win16 and others here. + +my %misc_table = ( +"VC-WIN32", "96:60:152:40:4212:20:1", +"VC-NT", "96:60:152:40:4212:20:1" +); + my $no_asm=0; my $postfix="org"; my $Makefile="Makefile.ssl"; @@ -575,6 +589,50 @@ close(OUT); &Rename($bf,&file_old($bf)); &Rename($n,$bf); +# Now the miscellaneous fixups + +if(defined $misc_table{$target}) { + my ($enc_ctx, $md_size, $md_ctx_size, $cipher_size, $cipher_ctx_size, + $max_md_size, $date_fix) = + split(/\s*:\s*/,$misc_table{$target} . ":", -1); + +#print "EVP_ENCODE_CTX_SIZE $enc_ctx\n"; +#print "EVP_MD_SIZE $md_size\n"; +#print "EVP_MD_CTX_SIZE $md_ctx_size\n"; +#print "EVP_CIPHER_SIZE $cipher_size\n"; +#print "EVP_CIPHER_CTX_SIZE $cipher_ctx_size\n"; +#print "EVP_MAX_MD_SIZE $max_md_size\n"; +#printf "Date fix: %s\n", $date_fix ? "Yes" : "No"; + +# Fix the date + +if($date_fix) { + open (OUT,">crypto/date.h") || die "Can't open date.h"; + printf OUT "#define DATE \"%s\"\n", scalar gmtime(); + close(OUT); +} + +open (IN, "crypto/pem/pem.org") || die "Can't open crypto/pem/pem.org"; +open (OUT, ">crypto/pem/pem.h") || die "Can't create crypto/pem/pem.h"; + +# Now fix up pem.h +while() { + chop; + s/^(#define EVP_ENCODE_CTX_SIZE).*$/$1 $enc_ctx/; + s/^(#define EVP_MD_SIZE).*$/$1 $md_size/; + s/^(#define EVP_MD_CTX_SIZE).*$/$1 $md_ctx_size/; + s/^(#define EVP_CIPHER_SIZE).*$/$1 $cipher_size/; + s/^(#define EVP_CIPHER_CTX_SIZE).*$/$1 $cipher_ctx_size/; + s/^(#define EVP_MAX_MD_SIZE).*$/$1 $max_md_size/; + print OUT "$_\n"; +} + +close (IN); +close (OUT); + + +} + print "SIXTY_FOUR_BIT_LONG mode\n" if $b64l; print "SIXTY_FOUR_BIT mode\n" if $b64; print "THIRTY_TWO_BIT mode\n" if $b32; -- GitLab