From 408a84ec76e5e41849f0af1841b13dc25db814ce Mon Sep 17 00:00:00 2001 From: marc Date: Sun, 12 Jul 1998 06:24:18 +0000 Subject: [PATCH] SSL port from dugsong@monkey.org --- security/SSLeay/Makefile | 72 +++++++++++++++++ security/SSLeay/files/do-rsaref-ssl | 49 ++++++++++++ security/SSLeay/files/md5 | 1 + security/SSLeay/files/rsaref.patch | 12 +++ security/SSLeay/patches/patch-aa | 42 ++++++++++ security/SSLeay/patches/patch-ab | 12 +++ security/SSLeay/pkg/COMMENT | 1 + security/SSLeay/pkg/DESCR | 13 +++ security/SSLeay/pkg/PLIST | 120 ++++++++++++++++++++++++++++ security/SSLeay/scripts/configure | 24 ++++++ 10 files changed, 346 insertions(+) create mode 100644 security/SSLeay/Makefile create mode 100644 security/SSLeay/files/do-rsaref-ssl create mode 100644 security/SSLeay/files/md5 create mode 100644 security/SSLeay/files/rsaref.patch create mode 100644 security/SSLeay/patches/patch-aa create mode 100644 security/SSLeay/patches/patch-ab create mode 100644 security/SSLeay/pkg/COMMENT create mode 100644 security/SSLeay/pkg/DESCR create mode 100644 security/SSLeay/pkg/PLIST create mode 100755 security/SSLeay/scripts/configure diff --git a/security/SSLeay/Makefile b/security/SSLeay/Makefile new file mode 100644 index 00000000000..82635d27302 --- /dev/null +++ b/security/SSLeay/Makefile @@ -0,0 +1,72 @@ +# OpenBSD makefile for: SSLeay +# Version required: 0.8.1b +# Date created: 1998-Jul-4 +# Whom: dugsong@OpenBSD.ORG +# +# $OpenBSD: Makefile,v 1.1.1.1 1998/07/12 06:24:18 marc Exp $ +# + +DISTNAME= SSLeay-0.8.1b +CATEGORIES= security + +MAINTAINER= dugsong@monkey.org + +NO_CDROM= "CRYPTO: Third party crypto not allowed." +RESTRICTED= "Crypto; export-controlled" + +MASTER_SITES= ftp://ftp.psy.uq.oz.au/pub/Crypto/SSL/ + +fetch-depends: +.if !defined(USA_RESIDENT) || ${USA_RESIDENT} != YES && ${USA_RESIDENT} != NO + @${ECHO} + @${ECHO} You must set the variable USA_RESIDENT to YES if you are a USA + @${ECHO} resident or NO otherwise. USA residents must use the RSAREF2 + @${ECHO} library to build this program \(RSA Inc. holds the patent on + @${ECHO} the RSA algorithm and public key crypto in general - using RSA + @${ECHO} implementations other than RSAREF violate US patent law\). + @${ECHO} "" + @${ECHO} RSAREF2 will be automatically used to build this program when + @${ECHO} given the command \"make USA_RESIDENT=YES\" + @${ECHO} "" + @${FALSE} +.endif + +post-patch: +.if defined(USA_RESIDENT) && ${USA_RESIDENT} == YES + ${PATCH} ${PATCH_DIST_ARGS} < ${FILESDIR}/rsaref.patch +.endif + +HAS_CONFIGURE= yes +CONFIGURE_SCRIPT= Configure + +.if defined(USA_RESIDENT) && ${USA_RESIDENT} == YES +LIB_DEPENDS= rsaref:${PORTSDIR}/security/rsaref +CONFIGURE_ENV+= USA_RESIDENT="YES" +CONFIGURE_ARGS+= -I../../rsaref/ -DRSAref +.endif + +# gcc-2.8.* confuses DES names? destest fails, but not with gcc-2.7.*. fix. +CONFIGURE_ARGS+= -DPERL5 + +.if (${MACHINE_ARCH} == "i386") +CONFIGURE_ARGS+= OpenBSD-x86 +.elif (${MACHINE_ARCH} == "sparc") +CONFIGURE_ARGS+= OpenBSD-sparc +.elif (${MACHINE_ARCH} == "alpha") +CONFIGURE_ARGS+= alpha-gcc +.else +CONFIGURE_ARGS+= gcc +.endif + +ALL_TARGET= all test + +pre-build: +.if defined(USA_RESIDENT) && ${USA_RESIDENT} == YES + ${CP} ${FILESDIR}/do-rsaref-ssl ${WRKSRC} +.endif + +post-install: + @${INSTALL_DATA} ${WRKSRC}/COPYRIGHT ${PREFIX}/ssl/ + @${ECHO} Please read ${PREFIX}/ssl/COPYRIGHT for license information. + +.include diff --git a/security/SSLeay/files/do-rsaref-ssl b/security/SSLeay/files/do-rsaref-ssl new file mode 100644 index 00000000000..34768986492 --- /dev/null +++ b/security/SSLeay/files/do-rsaref-ssl @@ -0,0 +1,49 @@ +#!/bin/sh + +# convert ssleay libs to use rsaref. +# ssleay should be build with ./Configure -DRSAref system-type +# and -I../../rsaref should be added to CFLAGS in the top Makefile. +# do a 'make', and run this script after it barfs out on the SSL +# apps (linking ssleay). then run 'make' again to finish off. +# +# dugsong@monkey.org + +TMPDIR=/tmp/ssleay-rsaref$$ +CWD=`pwd` + +trap 'rm -rf $TMPDIR ; exit 0' 0 1 2 3 13 15 + +if [ ! -f librsaref.a ]; then + echo "where is librsaref? put it in $CWD" + exit 1 +fi + +mkdir $TMPDIR +cp *.a $TMPDIR +cd $TMPDIR + +echo "unpacking rsaref libs" +ar xv libRSAglue.a +ar xv librsaref.a + +echo "adding rsaref objs to libcrypto" +ar -r -a rsa_enc.o libcrypto.a \ +`(ar t libRSAglue.a ; ar t librsaref.a) | egrep '\.o'` + +# can't do this cos we need to map RSA_PKCS1_SSLeay -> RSA_PKCS1_RSAref +# could modify src, but it's a pain to maintain. +#echo "getting rid of rsa_enc.o" +#ar dv libcrypto.a rsa_enc.o + +echo "generating new symbol table" +ranlib libcrypto.a + +echo "backing up original libcrypto and libRSAglue" +cd $CWD +mv libcrypto.a libcrypto.a.orig +mv libRSAglue.a libRSAglue.a.orig +cp $TMPDIR/libcrypto.a . + +echo "done." + +exit 0 diff --git a/security/SSLeay/files/md5 b/security/SSLeay/files/md5 new file mode 100644 index 00000000000..c4f112203bc --- /dev/null +++ b/security/SSLeay/files/md5 @@ -0,0 +1 @@ +MD5 (SSLeay-0.8.1b.tar.gz) = 4c386f17ba13ad097b3df1f2e5b019af diff --git a/security/SSLeay/files/rsaref.patch b/security/SSLeay/files/rsaref.patch new file mode 100644 index 00000000000..a091c8dba9c --- /dev/null +++ b/security/SSLeay/files/rsaref.patch @@ -0,0 +1,12 @@ +*** rsaref/Makefile.ssl-orig Thu Jul 9 22:38:59 1998 +--- rsaref/Makefile.ssl Thu Jul 9 22:39:46 1998 +*************** +*** 41,46 **** +--- 41,47 ---- + $(AR) $(LIB) $(LIBOBJ) + sh $(TOP)/util/ranlib.sh $(LIB) + @touch lib ++ @(cd $(TOP); sh do-rsaref-ssl) + + files: + perl $(TOP)/util/files.pl Makefile.ssl >> $(TOP)/MINFO diff --git a/security/SSLeay/patches/patch-aa b/security/SSLeay/patches/patch-aa new file mode 100644 index 00000000000..00c18d8c434 --- /dev/null +++ b/security/SSLeay/patches/patch-aa @@ -0,0 +1,42 @@ +*** Configure-orig Tue Jun 30 09:31:35 1998 +--- Configure Thu Jul 9 23:21:35 1998 +*************** +*** 123,128 **** +--- 123,130 ---- + "NetBSD-sparc", "gcc:-DTERMIOS -O3 -fomit-frame-pointer -mv8 -Wall::BN_LLONG MD2_CHAR RC4_INDEX DES_UNROLL:::", + "NetBSD-x86", "gcc:-DTERMIOS -D_ANSI_SOURCE -O3 -fomit-frame-pointer -m486 -Wall::BN_LLONG $x86_gcc_des $x86_gcc_opts:asm/x86-lnxa.o:asm/dx86-out.o asm/cx86-out.o:asm/bx86-out.o", + "FreeBSD", "gcc:-DTERMIOS -D_ANSI_SOURCE -fomit-frame-pointer -O3 -m486 -Wall::BN_LLONG $x86_gcc_des $x86_gcc_opts:asm/x86-lnxa.o:asm/dx86-out.o asm/cx86-out.o:asm/bx86-out.o", ++ "OpenBSD-sparc", "gcc:-DTERMIOS -O3 -fomit-frame-pointer -mv8 -Wall::BN_LLONG MD2_CHAR RC4_INDEX DES_UNROLL:::", ++ "OpenBSD-x86", "gcc:-DTERMIOS -D_ANSI_SOURCE -O3 -fomit-frame-pointer -m486 -Wall::BN_LLONG $x86_gcc_des $x86_gcc_opts:asm/x86-lnxa.o:asm/dx86-out.o asm/cx86-out.o:asm/bx86-out.o", + #"bsdi-gcc", "shlicc2:-O3 -ffast-math-m486::RSA_LLONG $x86_gcc_des $x86_gcc_opts:::", + #"bsdi-gcc", "gcc:-O3 -ffast-math -DPERL5 -m486::RSA_LLONG $x86_gc_des $x86_gcc_opts:asm/x86-bsdi.o:asm/dx86bsdi.o asm/cx86bsdi.o:asm/bx86bsdi.o", + "bsdi-gcc", "gcc:-O3 -ffast-math -DPERL5 -m486::RSA_LLONG $x86_gc_des $x86_gcc_opts:::", +*************** +*** 192,204 **** + { + $libs.=$_." "; + } +! elsif ($_ =~ /^-D(.*)$/) + { + $flags.=$_." "; + } + else + { +! die "unknown options, only -Dxxx, -Lxxx -lxxx supported\n"; + } + } + else +--- 194,206 ---- + { + $libs.=$_." "; + } +! elsif ($_ =~ /^-[DI](.*)$/) + { + $flags.=$_." "; + } + else + { +! die "unknown options, only -Dxxx, -Ixxx, -Lxxx -lxxx supported\n"; + } + } + else diff --git a/security/SSLeay/patches/patch-ab b/security/SSLeay/patches/patch-ab new file mode 100644 index 00000000000..49dfde27f82 --- /dev/null +++ b/security/SSLeay/patches/patch-ab @@ -0,0 +1,12 @@ +*** crypto/bn/Makefile.ssl-orig Tue Jun 30 09:38:55 1998 +--- crypto/bn/Makefile.ssl Thu Jul 9 23:10:53 1998 +*************** +*** 52,57 **** +--- 52,58 ---- + + + lib: $(LIBOBJ) ++ cp `basename $(BN_MULW)` asm/ + $(AR) $(LIB) $(LIBOBJ) + sh $(TOP)/util/ranlib.sh $(LIB) + @touch lib diff --git a/security/SSLeay/pkg/COMMENT b/security/SSLeay/pkg/COMMENT new file mode 100644 index 00000000000..92a97e443ee --- /dev/null +++ b/security/SSLeay/pkg/COMMENT @@ -0,0 +1 @@ +Eric Young's implementation of SSL and supporting libraries diff --git a/security/SSLeay/pkg/DESCR b/security/SSLeay/pkg/DESCR new file mode 100644 index 00000000000..5b3f14354d5 --- /dev/null +++ b/security/SSLeay/pkg/DESCR @@ -0,0 +1,13 @@ + +Eric Young's implemention of SSL and supporting libraries. + +Includes support for SSLv2, SSLv3, DES, RC4, RC2, Blowfish, +IDEA, MD5, MD2, SHA, SHA-1, MDC2, RSA, DSA, Diffie-Hellman, +X509 ASN cruft, etc. + +See http://www.ssleay.org/ for more info. + +-d. +--- +http://www.monkey.org/~dugsong/ + diff --git a/security/SSLeay/pkg/PLIST b/security/SSLeay/pkg/PLIST new file mode 100644 index 00000000000..b0fd40ffeab --- /dev/null +++ b/security/SSLeay/pkg/PLIST @@ -0,0 +1,120 @@ +@cwd /usr/local +@name SSLeay-0.8.1b +@pkgdep rsaref-2.0 +ssl/bin/ssleay +ssl/bin/CA.sh +ssl/bin/der_chop +ssl/bin/c_hash +ssl/bin/verify +ssl/bin/asn1parse +ssl/bin/req +ssl/bin/dgst +ssl/bin/dh +ssl/bin/enc +ssl/bin/gendh +ssl/bin/gendsa +ssl/bin/errstr +ssl/bin/ca +ssl/bin/crl +ssl/bin/rsa +ssl/bin/dsa +ssl/bin/dsaparam +ssl/bin/x509 +ssl/bin/genrsa +ssl/bin/s_server +ssl/bin/s_client +ssl/bin/speed +ssl/bin/s_time +ssl/bin/version +ssl/bin/pkcs7 +ssl/bin/crl2pkcs7 +ssl/bin/sess_id +ssl/bin/ciphers +ssl/bin/md2 +ssl/bin/md5 +ssl/bin/sha +ssl/bin/sha1 +ssl/bin/mdc2 +ssl/bin/base64 +ssl/bin/des +ssl/bin/des3 +ssl/bin/desx +ssl/bin/idea +ssl/bin/rc4 +ssl/bin/rc2 +ssl/bin/bf +ssl/bin/des-ecb +ssl/bin/des-ede +ssl/bin/des-ede3 +ssl/bin/des-cbc +ssl/bin/des-ede-cbc +ssl/bin/des-ede3-cbc +ssl/bin/des-cfb +ssl/bin/des-ede-cfb +ssl/bin/des-ede3-cfb +ssl/bin/des-ofb +ssl/bin/des-ede-ofb +ssl/bin/des-ede3-ofb +ssl/bin/idea-cbc +ssl/bin/idea-ecb +ssl/bin/idea-cfb +ssl/bin/idea-ofb +ssl/bin/rc2-cbc +ssl/bin/rc2-ecb +ssl/bin/rc2-cfb +ssl/bin/rc2-ofb +ssl/bin/bf-cbc +ssl/bin/bf-ecb +ssl/bin/bf-cfb +ssl/bin/bf-ofb +ssl/bin/c_info +ssl/bin/c_issuer +ssl/bin/c_name +ssl/bin/c_rehash +ssl/lib/ssleay.cnf +ssl/lib/libcrypto.a +@exec ranlib %D/%F +ssl/lib/libssl.a +@exec ranlib %D/%F +ssl/include/crypto.h +ssl/include/cryptall.h +ssl/include/md2.h +ssl/include/md5.h +ssl/include/sha.h +ssl/include/mdc2.h +ssl/include/des.h +ssl/include/rc4.h +ssl/include/rc2.h +ssl/include/idea.h +ssl/include/blowfish.h +ssl/include/bn.h +ssl/include/rsa.h +ssl/include/dsa.h +ssl/include/dh.h +ssl/include/buffer.h +ssl/include/bio.h +ssl/include/stack.h +ssl/include/lhash.h +ssl/include/rand.h +ssl/include/err.h +ssl/include/objects.h +ssl/include/evp.h +ssl/include/pem.h +ssl/include/asn1.h +ssl/include/asn1_mac.h +ssl/include/x509.h +ssl/include/x509_vfy.h +ssl/include/conf.h +ssl/include/txt_db.h +ssl/include/pkcs7.h +ssl/include/ssl.h +ssl/include/ssl2.h +ssl/include/ssl3.h +ssl/include/ssl23.h +ssl/COPYRIGHT +@dirrm ssl/private +@dirrm ssl/certs +@dirrm ssl/include +@dirrm ssl/lib +@dirrm ssl/bin +@dirrm ssl diff --git a/security/SSLeay/scripts/configure b/security/SSLeay/scripts/configure new file mode 100755 index 00000000000..270f255ce89 --- /dev/null +++ b/security/SSLeay/scripts/configure @@ -0,0 +1,24 @@ +#!/bin/sh + +# pre-Configure configuration script for SSLeay +# +# dugsong@monkey.org + +PATH=/bin:/usr/bin:/sbin:/usr/sbin + +cd $WRKSRC + +perl util/perlpath.pl /usr/bin +perl util/ssldir.pl ${PREFIX}/ssl + +if [ "x$USA_RESIDENT" = "xYES" ]; then + LIBDIR=`ldconfig -r | grep rsaref | awk '{print $3}' | xargs dirname` + + if [ -f ${LIBDIR}/librsaref.a ]; then + cp ${LIBDIR}/librsaref.a . + else + echo "Couldn't find RSAref library ${LIBDIR}/librsaref.a" + exit 1 + fi +fi +