From 9e43e2ac1373d5be5c6500c1bc3b1dd6ee9584b4 Mon Sep 17 00:00:00 2001 From: ryker <> Date: Mon, 5 Oct 1998 20:13:16 +0000 Subject: Import of SSLeay-0.9.0b with RSA and IDEA stubbed + OpenBSD build functionality for shared libs. Note that routines such as sslv2_init and friends that use RSA will not work due to lack of RSA in this library. Needs documentation and help from ports for easy upgrade to full functionality where legally possible. --- src/lib/libcrypto/util/mklink.sh | 35 +++++++++++++++++ src/lib/libcrypto/util/ranlib.sh | 23 ++++++++++++ src/lib/libcrypto/util/sep_lib.sh | 37 ++++++++++++++++++ src/lib/libcrypto/util/ssldir.pl | 52 ++++++++++++++++++++++++++ src/lib/libcrypto/util/up_ver.pl | 79 +++++++++++++++++++++++++++++++++++++++ 5 files changed, 226 insertions(+) create mode 100644 src/lib/libcrypto/util/mklink.sh create mode 100644 src/lib/libcrypto/util/ranlib.sh create mode 100644 src/lib/libcrypto/util/sep_lib.sh create mode 100644 src/lib/libcrypto/util/ssldir.pl create mode 100644 src/lib/libcrypto/util/up_ver.pl (limited to 'src/lib/libcrypto/util') diff --git a/src/lib/libcrypto/util/mklink.sh b/src/lib/libcrypto/util/mklink.sh new file mode 100644 index 0000000000..1e052ed6ee --- /dev/null +++ b/src/lib/libcrypto/util/mklink.sh @@ -0,0 +1,35 @@ +#!/bin/sh +# +# A bit of an ugly shell script used to actually 'link' files. +# Used by 'make links' +# + +PATH=$PATH:.:util:../util:../../util +export PATH + +from=$1 +shift + +here=`pwd` +tmp=`dirname $from` +while [ "$tmp"x != "x" -a "$tmp"x != ".x" ] +do + t=`basename $here` + here=`dirname $here` + to="/$t$to" + tmp=`dirname $tmp` +done +to=..$to + +#echo from=$from +#echo to =$to +#exit 1 + +if [ "$*"x != "x" ]; then + for i in $* + do + /bin/rm -f $from/$i + point.sh $to/$i $from/$i + done +fi +exit 0; diff --git a/src/lib/libcrypto/util/ranlib.sh b/src/lib/libcrypto/util/ranlib.sh new file mode 100644 index 0000000000..543f712c6b --- /dev/null +++ b/src/lib/libcrypto/util/ranlib.sh @@ -0,0 +1,23 @@ +#!/bin/sh + +cwd=`pwd` +cd /tmp + +if [ -s /bin/ranlib ] ; then + RL=/bin/ranlib +else if [ -s /usr/bin/ranlib ] ; then + RL=/usr/bin/ranlib +fi +fi + +if [ "x$RL" != "x" ] +then + case "$1" in + /*) + $RL "$1" + ;; + *) + $RL "$cwd/$1" + ;; + esac +fi diff --git a/src/lib/libcrypto/util/sep_lib.sh b/src/lib/libcrypto/util/sep_lib.sh new file mode 100644 index 0000000000..2348db874e --- /dev/null +++ b/src/lib/libcrypto/util/sep_lib.sh @@ -0,0 +1,37 @@ +#!/bin/sh + +cwd=`pwd` +/bin/rm -fr tmp/* + +cd crypto/des +make -f Makefile.uni tar +make -f Makefile.uni tar_lit +/bin/mv libdes.tgz $cwd/tmp +/bin/mv libdes-l.tgz $cwd/tmp +cd $cwd + +for name in md5 sha cast bf idea rc4 rc2 +do + echo doing $name + (cd crypto; tar cfh - $name)|(cd tmp; tar xf -) + cd tmp/$name + /bin/rm -f Makefile + /bin/rm -f Makefile.ssl + /bin/rm -f Makefile.ssl.orig + /bin/rm -f *.old + /bin/mv Makefile.uni Makefile + + cp $cwd/util/ranlib.sh . + chmod +x ranlib.sh + + if [ -d asm ]; then + mkdir asm/perlasm + cp $cwd/crypto/perlasm/*.pl asm/perlasm + fi + cd .. + tar cf - $name|gzip >$name.tgz +# /bin/rm -fr $name + cd $cwd +done + + diff --git a/src/lib/libcrypto/util/ssldir.pl b/src/lib/libcrypto/util/ssldir.pl new file mode 100644 index 0000000000..10584686da --- /dev/null +++ b/src/lib/libcrypto/util/ssldir.pl @@ -0,0 +1,52 @@ +#!/usr/bin/perl + +$#ARGV == 0 || die "usage: ssldir.pl /new/path\n"; +@files=('crypto/cryptlib.h', + 'Makefile.ssl', + 'tools/c_rehash', + 'util/mk1mf.pl', + ); + +%cryptlib=( + '\sX509_CERT_AREA\s',"#define X509_CERT_AREA\t\t".'"%s"', + '\sX509_CERT_DIR\s', "#define X509_CERT_DIR\t\t".'"%s/certs"', + '\sX509_CERT_FILE\s', "#define X509_CERT_FILE\t\t".'"%s/cert.pem"', + '\sX509_PRIVATE_DIR\s',"#define X509_PRIVATE_DIR\t".'"%s/private"', + ); + +%Makefile_ssl=( + '^INSTALLTOP=','INSTALLTOP=%s', + ); + +%c_rehash=( + '^DIR=', 'DIR=%s', + ); + +%mk1mf=( + '^$INSTALLTOP=','$INSTALLTOP="%s";', + ); + +&dofile("crypto/cryptlib.h",$ARGV[0],%cryptlib); +&dofile("Makefile.ssl",$ARGV[0],%Makefile_ssl); +&dofile("tools/c_rehash",$ARGV[0],%c_rehash); +&dofile("util/mk1mf.pl",$ARGV[0],%mk1mf); + +sub dofile + { + ($f,$p,%m)=@_; + + open(IN,"<$f") || die "unable to open $f:$!\n"; + @a=; + close(IN); + foreach $k (keys %m) + { + grep(/$k/ && ($_=sprintf($m{$k}."\n",$p)),@a); + } + ($ff=$f) =~ s/\..*$//; + open(OUT,">$ff.new") || die "unable to open $f:$!\n"; + print OUT @a; + close(OUT); + rename($f,"$ff.old") || die "unable to rename $f\n"; + rename("$ff.new",$f) || die "unable to rename $ff.new\n"; + } + diff --git a/src/lib/libcrypto/util/up_ver.pl b/src/lib/libcrypto/util/up_ver.pl new file mode 100644 index 0000000000..32c086b2aa --- /dev/null +++ b/src/lib/libcrypto/util/up_ver.pl @@ -0,0 +1,79 @@ +#!/usr/bin/perl +# +# Up the version numbers in the files. +# + +@files=( + "crypto/crypto.h", + "crypto/des/ecb_enc.c", + "crypto/idea/i_ecb.c", + "crypto/lhash/lhash.c", + "crypto/conf/conf.c", + "crypto/md2/md2_dgst.c", + "crypto/md5/md5_dgst.c", + "crypto/ripemd/rmd_dgst.c", + "crypto/pem/pem_lib.c", + "crypto/bn/bn_lib.c", + "crypto/dh/dh_lib.c", + "crypto/rc2/rc2_ecb.c", + "crypto/rc4/rc4_skey.c", + "crypto/rc5/rc5_ecb.c", + "crypto/bf/bf_ecb.c", + "crypto/cast/c_ecb.c", + "crypto/rsa/rsa_lib.c", + "crypto/dsa/dsa_lib.c", + "crypto/sha/sha1dgst.c", + "crypto/sha/sha_dgst.c", + "crypto/asn1/asn1_lib.c", + "crypto/x509/x509_vfy.c", + "crypto/evp/evp_enc.c", + "crypto/rand/md_rand.c", + "crypto/stack/stack.c", + "crypto/txt_db/txt_db.c", + "crypto/cversion.c", + "ssl/ssl_lib.c", + "ssl/s2_lib.c", + "ssl/s3_lib.c", + "ssl/t1_lib.c", + "README", + ); + +@month=('Jan','Feb','Mar','Apr','May','Jun', + 'Jul','Aug','Sep','Oct','Nov','Dec'); +@a=localtime(time()); +$time=sprintf("%02d-%s-%04d",$a[3],$month[$a[4]],$a[5]+1900); + +$ver=$ARGV[0]; +($ver ne "") || die "no version number specified\n"; +($a,$b,$c,$d)=unpack('axaxac',$ver); +$d=defined($d)?$d-96:0; +$xver=sprintf("%x%x%x%x",$a,$b,$c,$d); + +foreach $file (@files) + { + open(IN,"<$file") || die "unable to open $file:$!\n"; + open(OUT,">$file.new") || die "unable to open $file.new:$!\n"; + $found=0; + + print STDERR "$file:"; + + while () + { + if ((s/SSLeay \d\.\d.\d[^"]*(\"|\s)/SSLeay $ver $time\1/) || + s/^(\#define\s+SSLEAY_VERSION_NUMBER\s+0x)[0-9a-zA-Z]+(.*)$/$1$xver$2/) + { + print STDERR " Done"; + $found++; + print OUT; + while () { print OUT; } + last; + } + print OUT; + } + print STDERR "\n"; + close(IN); + close(OUT); + (!$found) && die "unable to update the version number in $file\n"; + rename($file,"$file.old") || die "unable to rename $file:$!\n"; + rename("$file.new",$file) || die "unable to rename $file.new:$!\n"; + } -- cgit v1.2.3-55-g6feb