summaryrefslogtreecommitdiffstats
path: root/lib/libssl/test
diff options
context:
space:
mode:
authorbeck <beck@openbsd.org>1999-09-29 04:35:07 +0000
committerbeck <beck@openbsd.org>1999-09-29 04:35:07 +0000
commit913ec974266f8a62ab2e5ca34a31d6e6f75b3cf0 (patch)
tree62c001f84cb6413a049c5c811a08bfbe7c747b77 /lib/libssl/test
parentfix byte counters; imain@netidea.com (diff)
downloadwireguard-openbsd-913ec974266f8a62ab2e5ca34a31d6e6f75b3cf0.tar.xz
wireguard-openbsd-913ec974266f8a62ab2e5ca34a31d6e6f75b3cf0.zip
OpenSSL 0.9.4 merge
Diffstat (limited to 'lib/libssl/test')
-rw-r--r--lib/libssl/test/.rndbin1024 -> 0 bytes
-rw-r--r--lib/libssl/test/Makefile.ssl128
-rw-r--r--lib/libssl/test/VMSca-response.11
-rw-r--r--lib/libssl/test/VMSca-response.22
-rw-r--r--lib/libssl/test/certCA.srl1
-rw-r--r--lib/libssl/test/maketests.com1053
-rw-r--r--lib/libssl/test/methtest.c6
-rw-r--r--lib/libssl/test/p294
-rw-r--r--lib/libssl/test/riptestbin13325 -> 0 bytes
-rw-r--r--lib/libssl/test/tcrl2
-rw-r--r--lib/libssl/test/tcrl.com78
-rw-r--r--lib/libssl/test/test.txt31
-rw-r--r--lib/libssl/test/testca2
-rw-r--r--lib/libssl/test/testca.com76
-rw-r--r--lib/libssl/test/testenc12
-rw-r--r--lib/libssl/test/testenc.com50
-rw-r--r--lib/libssl/test/testgen4
-rw-r--r--lib/libssl/test/testgen.com35
-rw-r--r--lib/libssl/test/testkey.pem2
-rw-r--r--lib/libssl/test/testp7.pem20
-rw-r--r--lib/libssl/test/testreq.pem9
-rw-r--r--lib/libssl/test/tests.com203
-rw-r--r--lib/libssl/test/testsid.pem4
-rw-r--r--lib/libssl/test/testss11
-rw-r--r--lib/libssl/test/testss.com105
-rw-r--r--lib/libssl/test/testssl37
-rw-r--r--lib/libssl/test/testssl.com111
-rw-r--r--lib/libssl/test/tpkcs72
-rw-r--r--lib/libssl/test/tpkcs7.com49
-rw-r--r--lib/libssl/test/tpkcs7d4
-rw-r--r--lib/libssl/test/tpkcs7d.com42
-rw-r--r--lib/libssl/test/treq2
-rw-r--r--lib/libssl/test/treq.com78
-rw-r--r--lib/libssl/test/trsa2
-rw-r--r--lib/libssl/test/trsa.com78
-rw-r--r--lib/libssl/test/tsid2
-rw-r--r--lib/libssl/test/tsid.com78
-rw-r--r--lib/libssl/test/tverify.com26
-rw-r--r--lib/libssl/test/tx5092
-rw-r--r--lib/libssl/test/tx509.com78
40 files changed, 2324 insertions, 396 deletions
diff --git a/lib/libssl/test/.rnd b/lib/libssl/test/.rnd
deleted file mode 100644
index 234970e2412..00000000000
--- a/lib/libssl/test/.rnd
+++ /dev/null
Binary files differ
diff --git a/lib/libssl/test/Makefile.ssl b/lib/libssl/test/Makefile.ssl
index b3de76751e1..2133ff15757 100644
--- a/lib/libssl/test/Makefile.ssl
+++ b/lib/libssl/test/Makefile.ssl
@@ -7,17 +7,22 @@ TOP= ..
CC= cc
INCLUDES= -I../include
CFLAG= -g
+INSTALL_PREFIX=
+OPENSSLDIR= /usr/local/ssl
INSTALLTOP= /usr/local/ssl
MAKEFILE= Makefile.ssl
MAKE= make -f $(MAKEFILE)
-MAKEDEPEND= makedepend -f$(MAKEFILE)
+MAKEDEPEND= $(TOP)/util/domd $(TOP)
PEX_LIBS=
EX_LIBS= #-lnsl -lsocket
CFLAGS= $(INCLUDES) $(CFLAG)
-GENERAL=Makefile.ssl
+GENERAL=Makefile.ssl maketests.com \
+ tests.com testenc.com tx509.com trsa.com tcrl.com tsid.com treq.com \
+ tpkcs7.com tpkcs7d.com tverify.com testgen.com testss.com testssl.com \
+ testca.com VMSca-response.1 VMSca-response.2
DLIBCRYPTO= ../libcrypto.a
DLIBSSL= ../libssl.a
@@ -45,12 +50,13 @@ DHTEST= dhtest
DSATEST= dsatest
METHTEST= methtest
SSLTEST= ssltest
+RSATEST= rsa_oaep_test
EXE= $(BNTEST) $(IDEATEST) $(MD2TEST) $(MD5TEST) $(HMACTEST) \
$(RC2TEST) $(RC4TEST) $(RC5TEST) \
$(DESTEST) $(SHATEST) $(SHA1TEST) $(MDC2TEST) $(RMDTEST) \
$(RANDTEST) $(DHTEST) \
- $(BFTEST) $(CASTTEST) $(SSLTEST) $(EXPTEST) $(DSATEST)
+ $(BFTEST) $(CASTTEST) $(SSLTEST) $(EXPTEST) $(DSATEST) $(RSATEST)
# $(METHTEST)
@@ -58,12 +64,12 @@ OBJ= $(BNTEST).o $(IDEATEST).o $(MD2TEST).o $(MD5TEST).o $(HMACTEST).o \
$(RC2TEST).o $(RC4TEST).o $(RC5TEST).o \
$(DESTEST).o $(SHATEST).o $(SHA1TEST).o $(MDC2TEST).o $(RMDTEST).o \
$(RANDTEST).o $(DHTEST).o $(CASTTEST).o \
- $(BFTEST).o $(SSLTEST).o $(DSATEST).o $(EXPTEST).o
+ $(BFTEST).o $(SSLTEST).o $(DSATEST).o $(EXPTEST).o $(RSATEST).o
SRC= $(BNTEST).c $(IDEATEST).c $(MD2TEST).c $(MD5TEST).c $(HMACTEST).c \
$(RC2TEST).c $(RC4TEST).c $(RC5TEST).c \
$(DESTEST).c $(SHATEST).c $(SHA1TEST).c $(MDC2TEST).c $(RMDTEST).c \
$(RANDTEST).c $(DHTEST).c $(CASTTEST).c \
- $(BFTEST).c $(SSLTEST).c $(DSATEST).c $(EXPTEST).c
+ $(BFTEST).c $(SSLTEST).c $(DSATEST).c $(EXPTEST).c $(RSATEST).c
EXHEADER=
HEADER= $(EXHEADER)
@@ -78,11 +84,10 @@ all: exe
exe: $(EXE)
files:
- perl $(TOP)/util/files.pl Makefile.ssl >> $(TOP)/MINFO
+ $(PERL) $(TOP)/util/files.pl Makefile.ssl >> $(TOP)/MINFO
links:
- /bin/rm -f Makefile
- $(TOP)/util/point.sh Makefile.ssl Makefile ;
+ @@$(TOP)/util/point.sh Makefile.ssl Makefile
errors:
@@ -94,15 +99,15 @@ tags:
tests: exe apps \
test_des test_idea test_sha test_md5 test_hmac test_md2 test_mdc2 \
test_rc2 test_rc4 test_rc5 test_bf test_cast \
- test_rand test_enc test_x509 test_rsa test_crl test_sid test_req \
- test_pkcs7 test_bn test_verify test_dh test_dsa test_reqgen \
+ test_rand test_bn test_enc test_x509 test_rsa test_crl test_sid \
+ test_reqgen test_req test_pkcs7 test_verify test_dh test_dsa \
test_ss test_ssl test_ca
apps:
@(cd ../apps; $(MAKE) CC='${CC}' CFLAG='${CFLAG}' INSTALLTOP='${INSTALLTOP}' PEX_LIBS='${PEX_LIBS}' EX_LIBS='${EX_LIBS}' all)
test_des:
- #./$(DESTEST)
+ ./$(DESTEST)
test_idea:
./$(IDEATEST)
@@ -157,6 +162,7 @@ test_x509:
test_rsa:
@sh ./trsa 2>/dev/null
+ ./$(RSATEST)
test_crl:
@sh ./tcrl 2>/dev/null
@@ -173,17 +179,17 @@ test_pkcs7:
@sh ./tpkcs7d 2>/dev/null
test_bn:
- @echo 'test a^b%c implementations'
- ./$(EXPTEST)
@echo starting big number library test, could take a while...
@(./$(BNTEST)|bc) | awk '{ \
if ($$0 != "0") {print "error"; exit(1); } \
if (((NR+1)%64) == 0) print NR+1," tests done"; }'
+ @echo 'test a^b%c implementations'
+ ./$(EXPTEST)
test_verify:
@echo "The following command should have some OK's and some failures"
@echo "There are definitly a few expired certificates"
- ../apps/ssleay verify -CApath ../certs ../certs/*.pem
+ ../apps/openssl verify -CApath ../certs ../certs/*.pem
test_dh:
@echo "Generate as set of DH parameters"
@@ -213,14 +219,14 @@ lint:
lint -DLINT $(INCLUDES) $(SRC)>fluff
depend:
- $(MAKEDEPEND) $(INCLUDES) $(PROGS) $(SRC)
+ $(MAKEDEPEND) $(INCLUDES) $(DEPFLAG) $(PROGS) $(SRC)
dclean:
- perl -pe 'if (/^# DO NOT DELETE THIS LINE/) {print; exit(0);}' $(MAKEFILE) >Makefile.new
+ $(PERL) -pe 'if (/^# DO NOT DELETE THIS LINE/) {print; exit(0);}' $(MAKEFILE) >Makefile.new
mv -f Makefile.new $(MAKEFILE)
clean:
- /bin/rm -f *.o *.obj lib tags core .pure .nfs* *.old *.bak fluff $(EXE) *.ss log
+ rm -f *.o *.obj lib tags core .pure .nfs* *.old *.bak fluff $(EXE) *.ss log
$(DLIBSSL):
(cd ../ssl; $(MAKE))
@@ -228,6 +234,9 @@ $(DLIBSSL):
$(DLIBCRYPTO):
(cd ../crypto; $(MAKE))
+$(RSATEST): $(RSATEST).o $(DLIBCRYPTO)
+ $(CC) -o $(RSATEST) $(CFLAGS) $(RSATEST).o $(PEX_LIBS) $(LIBCRYPTO) $(EX_LIBS)
+
$(BNTEST): $(BNTEST).o $(DLIBCRYPTO)
$(CC) -o $(BNTEST) $(CFLAGS) $(BNTEST).o $(PEX_LIBS) $(LIBCRYPTO) $(EX_LIBS)
@@ -292,3 +301,88 @@ $(SSLTEST): $(SSLTEST).o $(DLIBSSL) $(DLIBCRYPTO)
$(CC) -o $(SSLTEST) $(CFLAGS) $(SSLTEST).o $(PEX_LIBS) $(LIBSSL) $(LIBCRYPTO) $(EX_LIBS)
# DO NOT DELETE THIS LINE -- make depend depends on it.
+
+bftest.o: ../include/openssl/blowfish.h
+bntest.o: ../include/openssl/asn1.h ../include/openssl/bio.h
+bntest.o: ../include/openssl/blowfish.h ../include/openssl/bn.h
+bntest.o: ../include/openssl/cast.h ../include/openssl/crypto.h
+bntest.o: ../include/openssl/des.h ../include/openssl/dh.h
+bntest.o: ../include/openssl/dsa.h ../include/openssl/e_os.h
+bntest.o: ../include/openssl/e_os2.h ../include/openssl/err.h
+bntest.o: ../include/openssl/evp.h ../include/openssl/idea.h
+bntest.o: ../include/openssl/md2.h ../include/openssl/md5.h
+bntest.o: ../include/openssl/mdc2.h ../include/openssl/objects.h
+bntest.o: ../include/openssl/opensslconf.h ../include/openssl/opensslv.h
+bntest.o: ../include/openssl/pkcs7.h ../include/openssl/rand.h
+bntest.o: ../include/openssl/rc2.h ../include/openssl/rc4.h
+bntest.o: ../include/openssl/rc5.h ../include/openssl/ripemd.h
+bntest.o: ../include/openssl/rsa.h ../include/openssl/safestack.h
+bntest.o: ../include/openssl/sha.h ../include/openssl/stack.h
+bntest.o: ../include/openssl/x509.h ../include/openssl/x509_vfy.h
+casttest.o: ../include/openssl/cast.h
+destest.o: ../include/openssl/des.h ../include/openssl/e_os2.h
+destest.o: ../include/openssl/opensslconf.h
+dhtest.o: ../include/openssl/bio.h ../include/openssl/bn.h
+dhtest.o: ../include/openssl/crypto.h ../include/openssl/dh.h
+dhtest.o: ../include/openssl/opensslconf.h ../include/openssl/opensslv.h
+dhtest.o: ../include/openssl/stack.h
+dsatest.o: ../include/openssl/bio.h ../include/openssl/bn.h
+dsatest.o: ../include/openssl/crypto.h ../include/openssl/dh.h
+dsatest.o: ../include/openssl/dsa.h ../include/openssl/err.h
+dsatest.o: ../include/openssl/opensslconf.h ../include/openssl/opensslv.h
+dsatest.o: ../include/openssl/rand.h ../include/openssl/stack.h
+exptest.o: ../include/openssl/bio.h ../include/openssl/bn.h
+exptest.o: ../include/openssl/crypto.h ../include/openssl/err.h
+exptest.o: ../include/openssl/opensslconf.h ../include/openssl/opensslv.h
+exptest.o: ../include/openssl/rand.h ../include/openssl/stack.h
+hmactest.o: ../include/openssl/asn1.h ../include/openssl/bio.h
+hmactest.o: ../include/openssl/blowfish.h ../include/openssl/bn.h
+hmactest.o: ../include/openssl/cast.h ../include/openssl/crypto.h
+hmactest.o: ../include/openssl/des.h ../include/openssl/dh.h
+hmactest.o: ../include/openssl/dsa.h ../include/openssl/e_os2.h
+hmactest.o: ../include/openssl/evp.h ../include/openssl/hmac.h
+hmactest.o: ../include/openssl/idea.h ../include/openssl/md2.h
+hmactest.o: ../include/openssl/md5.h ../include/openssl/mdc2.h
+hmactest.o: ../include/openssl/objects.h ../include/openssl/opensslconf.h
+hmactest.o: ../include/openssl/opensslv.h ../include/openssl/rc2.h
+hmactest.o: ../include/openssl/rc4.h ../include/openssl/rc5.h
+hmactest.o: ../include/openssl/ripemd.h ../include/openssl/rsa.h
+hmactest.o: ../include/openssl/safestack.h ../include/openssl/sha.h
+hmactest.o: ../include/openssl/stack.h
+ideatest.o: ../include/openssl/idea.h ../include/openssl/opensslconf.h
+md2test.o: ../include/openssl/md2.h ../include/openssl/opensslconf.h
+md5test.o: ../include/openssl/md5.h
+mdc2test.o: ../include/openssl/des.h ../include/openssl/e_os2.h
+mdc2test.o: ../include/openssl/mdc2.h ../include/openssl/opensslconf.h
+randtest.o: ../include/openssl/rand.h
+rc2test.o: ../include/openssl/opensslconf.h ../include/openssl/rc2.h
+rc4test.o: ../include/openssl/opensslconf.h ../include/openssl/rc4.h
+rc5test.o: ../include/openssl/rc5.h
+rmdtest.o: ../include/openssl/ripemd.h
+rsa_oaep_test.o: ../include/openssl/bn.h ../include/openssl/crypto.h
+rsa_oaep_test.o: ../include/openssl/e_os.h ../include/openssl/e_os2.h
+rsa_oaep_test.o: ../include/openssl/err.h ../include/openssl/opensslconf.h
+rsa_oaep_test.o: ../include/openssl/opensslv.h ../include/openssl/rsa.h
+rsa_oaep_test.o: ../include/openssl/stack.h
+sha1test.o: ../include/openssl/sha.h
+shatest.o: ../include/openssl/sha.h
+ssltest.o: ../include/openssl/asn1.h ../include/openssl/bio.h
+ssltest.o: ../include/openssl/blowfish.h ../include/openssl/bn.h
+ssltest.o: ../include/openssl/buffer.h ../include/openssl/cast.h
+ssltest.o: ../include/openssl/crypto.h ../include/openssl/des.h
+ssltest.o: ../include/openssl/dh.h ../include/openssl/dsa.h
+ssltest.o: ../include/openssl/e_os.h ../include/openssl/e_os2.h
+ssltest.o: ../include/openssl/err.h ../include/openssl/evp.h
+ssltest.o: ../include/openssl/idea.h ../include/openssl/lhash.h
+ssltest.o: ../include/openssl/md2.h ../include/openssl/md5.h
+ssltest.o: ../include/openssl/mdc2.h ../include/openssl/objects.h
+ssltest.o: ../include/openssl/opensslconf.h ../include/openssl/opensslv.h
+ssltest.o: ../include/openssl/pem.h ../include/openssl/pem2.h
+ssltest.o: ../include/openssl/pkcs7.h ../include/openssl/rc2.h
+ssltest.o: ../include/openssl/rc4.h ../include/openssl/rc5.h
+ssltest.o: ../include/openssl/ripemd.h ../include/openssl/rsa.h
+ssltest.o: ../include/openssl/safestack.h ../include/openssl/sha.h
+ssltest.o: ../include/openssl/ssl.h ../include/openssl/ssl2.h
+ssltest.o: ../include/openssl/ssl23.h ../include/openssl/ssl3.h
+ssltest.o: ../include/openssl/stack.h ../include/openssl/tls1.h
+ssltest.o: ../include/openssl/x509.h ../include/openssl/x509_vfy.h
diff --git a/lib/libssl/test/VMSca-response.1 b/lib/libssl/test/VMSca-response.1
new file mode 100644
index 00000000000..8b137891791
--- /dev/null
+++ b/lib/libssl/test/VMSca-response.1
@@ -0,0 +1 @@
+
diff --git a/lib/libssl/test/VMSca-response.2 b/lib/libssl/test/VMSca-response.2
new file mode 100644
index 00000000000..9b48ee4cf97
--- /dev/null
+++ b/lib/libssl/test/VMSca-response.2
@@ -0,0 +1,2 @@
+y
+y
diff --git a/lib/libssl/test/certCA.srl b/lib/libssl/test/certCA.srl
deleted file mode 100644
index 39f5b69311d..00000000000
--- a/lib/libssl/test/certCA.srl
+++ /dev/null
@@ -1 +0,0 @@
-71
diff --git a/lib/libssl/test/maketests.com b/lib/libssl/test/maketests.com
new file mode 100644
index 00000000000..e4b052e6887
--- /dev/null
+++ b/lib/libssl/test/maketests.com
@@ -0,0 +1,1053 @@
+$!
+$! MAKETESTS.COM
+$! Written By: Robert Byer
+$! Vice-President
+$! A-Com Computing, Inc.
+$! byer@mail.all-net.net
+$!
+$! Changes by Richard Levitte <richard@levitte.org>
+$!
+$! This command files compiles and creates all the various different
+$! "test" programs for the different types of encryption for OpenSSL.
+$! It was written so it would try to determine what "C" compiler to
+$! use or you can specify which "C" compiler to use.
+$!
+$! The test "executeables" will be placed in a directory called
+$! [.xxx.EXE.TEST] where "xxx" denotes AXP or VAX depending on your machines
+$! architecture.
+$!
+$! Specify RSAREF as P1 to compile with the RSAREF library instead of
+$! the regular one. If you specify NORSAREF it will compile with the
+$! regular RSAREF routines. (Note: If you are in the United States
+$! you MUST compile with RSAREF unless you have a license from RSA).
+$!
+$! Note: The RSAREF libraries are NOT INCLUDED and you have to
+$! download it from "ftp://ftp.rsa.com/rsaref". You have to
+$! get the ".tar-Z" file as the ".zip" file dosen't have the
+$! directory structure stored. You have to extract the file
+$! into the [.RSAREF] directory under the root directory as that
+$! is where the scripts will look for the files.
+$!
+$! Specify DEBUG or NODEBUG P2 to compile with or without debugger
+$! information.
+$!
+$! Specify which compiler at P3 to try to compile under.
+$!
+$! VAXC For VAX C.
+$! DECC For DEC C.
+$! GNUC For GNU C.
+$!
+$! If you don't speficy a compiler, it will try to determine which
+$! "C" compiler to use.
+$!
+$! P4, if defined, sets a TCP/IP library to use, through one of the following
+$! keywords:
+$!
+$! UCX for UCX
+$! SOCKETSHR for SOCKETSHR+NETLIB
+$!
+$! P5, if defined, sets a compiler thread NOT needed on OpenVMS 7.1 (and up)
+$!
+$!
+$! Define A TCP/IP Library That We Will Need To Link To.
+$! (That is, If Wee Need To Link To One.)
+$!
+$ TCPIP_LIB = ""
+$!
+$! Check Which Architecture We Are Using.
+$!
+$ IF (F$GETSYI("CPU").GE.128)
+$ THEN
+$!
+$! The Architecture Is AXP.
+$!
+$ ARCH := AXP
+$!
+$! Else...
+$!
+$ ELSE
+$!
+$! The Architecture Is VAX.
+$!
+$ ARCH := VAX
+$!
+$! End The Architecture Check.
+$!
+$ ENDIF
+$!
+$! Check To Make Sure We Have Valid Command Line Parameters.
+$!
+$ GOSUB CHECK_OPTIONS
+$!
+$! Initialise logical names and such
+$!
+$ GOSUB INITIALISE
+$!
+$! Tell The User What Kind of Machine We Run On.
+$!
+$ WRITE SYS$OUTPUT "Compiling On A ",ARCH," Machine."
+$!
+$! Define The CRYPTO-LIB We Are To Use.
+$!
+$ CRYPTO_LIB := SYS$DISK:[-.'ARCH'.EXE.CRYPTO]LIBCRYPTO.OLB
+$!
+$! Define The RSAREF-LIB We Are To Use.
+$!
+$ RSAREF_LIB := SYS$DISK:[-.'ARCH'.EXE.RSAREF]LIBRSAGLUE.OLB
+$!
+$! Define The SSL We Are To Use.
+$!
+$ SSL_LIB := SYS$DISK:[-.'ARCH'.EXE.SSL]LIBSSL.OLB
+$!
+$! Define The OBJ Directory.
+$!
+$ OBJ_DIR := SYS$DISK:[-.'ARCH'.OBJ.TEST]
+$!
+$! Check To See If The Architecture Specific OBJ Directory Exists.
+$!
+$ IF (F$PARSE(OBJ_DIR).EQS."")
+$ THEN
+$!
+$! The EXE Directory Dosen't Exist, So Create It.
+$!
+$ CREATE/DIRECTORY 'OBJ_DIR'
+$!
+$! End The Architecture Specific OBJ Directory Check.
+$!
+$ ENDIF
+$!
+$! Define The EXE Directory.
+$!
+$ EXE_DIR := SYS$DISK:[-.'ARCH'.EXE.TEST]
+$!
+$! Check To See If The Architecture Specific EXE Directory Exists.
+$!
+$ IF (F$PARSE(EXE_DIR).EQS."")
+$ THEN
+$!
+$! The EXE Directory Dosen't Exist, So Create It.
+$!
+$ CREATE/DIRECTORY 'EXE_DIR'
+$!
+$! End The Architecture Specific EXE Directory Check.
+$!
+$ ENDIF
+$!
+$! Check To See If We Have The Proper Libraries.
+$!
+$ GOSUB LIB_CHECK
+$!
+$! Check To See If We Have A Linker Option File.
+$!
+$ GOSUB CHECK_OPT_FILE
+$!
+$! Define The TEST Files.
+$!
+$ TEST_FILES = "BNTEST,IDEATEST,MD2TEST,MD5TEST,HMACTEST,"+ -
+ "RC2TEST,RC4TEST,RC5TEST,"+ -
+ "DESTEST,SHATEST,SHA1TEST,MDC2TEST,RMDTEST,"+ -
+ "RANDTEST,DHTEST,"+ -
+ "BFTEST,CASTTEST,SSLTEST,EXPTEST,DSATEST,RSA_OAEP_TEST"
+$ TCPIP_PROGRAMS = ",,"
+$ IF COMPILER .EQS. "VAXC" THEN -
+ TCPIP_PROGRAMS = ",SSLTEST,"
+$!
+$! Define A File Counter And Set It To "0".
+$!
+$ FILE_COUNTER = 0
+$!
+$! Top Of The File Loop.
+$!
+$ NEXT_FILE:
+$!
+$! O.K, Extract The File Name From The File List.
+$!
+$ FILE_NAME = F$ELEMENT(FILE_COUNTER,",",TEST_FILES)
+$!
+$! Check To See If We Are At The End Of The File List.
+$!
+$ IF (FILE_NAME.EQS.",") THEN GOTO FILE_DONE
+$!
+$! Increment The Counter.
+$!
+$ FILE_COUNTER = FILE_COUNTER + 1
+$!
+$! Create The Source File Name.
+$!
+$ SOURCE_FILE = "SYS$DISK:[]" + FILE_NAME + ".C"
+$!
+$! Create The Object File Name.
+$!
+$ OBJECT_FILE = OBJ_DIR + FILE_NAME + ".OBJ"
+$!
+$! Create The Executable File Name.
+$!
+$ EXE_FILE = EXE_DIR + FILE_NAME + ".EXE"
+$ ON WARNING THEN GOTO NEXT_FILE
+$!
+$! Check To See If The File We Want To Compile Actually Exists.
+$!
+$ IF (F$SEARCH(SOURCE_FILE).EQS."")
+$ THEN
+$!
+$! Tell The User That The File Dosen't Exist.
+$!
+$ WRITE SYS$OUTPUT ""
+$ WRITE SYS$OUTPUT "The File ",SOURCE_FILE," Dosen't Exist."
+$ WRITE SYS$OUTPUT ""
+$!
+$! Exit The Build.
+$!
+$ GOTO EXIT
+$ ENDIF
+$!
+$! Tell The User What We Are Building.
+$!
+$ WRITE SYS$OUTPUT "Building The ",FILE_NAME," Test Program."
+$!
+$! Compile The File.
+$!
+$ ON ERROR THEN GOTO NEXT_FILE
+$ CC/OBJECT='OBJECT_FILE' 'SOURCE_FILE'
+$ ON WARNING THEN GOTO NEXT_FILE
+$!
+$! Check If What We Are About To Compile Works Without A TCP/IP Library.
+$!
+$ IF ((TCPIP_LIB.EQS."").AND.((TCPIP_PROGRAMS-FILE_NAME).NES.TCPIP_PROGRAMS))
+$ THEN
+$!
+$! Inform The User That A TCP/IP Library Is Needed To Compile This Program.
+$!
+$ WRITE SYS$OUTPUT FILE_NAME," Needs A TCP/IP Library. Can't Link. Skipping..."
+$ GOTO NEXT_FILE
+$!
+$! End The TCP/IP Library Check.
+$!
+$ ENDIF
+$!
+$! Link The Program, Check To See If We Need To Link With RSAREF Or Not.
+$!
+$ IF (RSAREF.EQS."TRUE")
+$ THEN
+$!
+$! Check To See If We Are To Link With A Specific TCP/IP Library.
+$!
+$ IF (TCPIP_LIB.NES."")
+$ THEN
+$!
+$! Link With The RSAREF Library And A Specific TCP/IP Library.
+$!
+$ LINK/'DEBUGGER'/'TRACEBACK' /EXE='EXE_FILE' -
+ 'OBJECT_FILE',-
+ 'SSL_LIB'/LIBRARY,'CRYPTO_LIB'/LIBRARY,'RSAREF_LIB'/LIBRARY, -
+ 'TCPIP_LIB','OPT_FILE'/OPTION
+$!
+$! Else...
+$!
+$ ELSE
+$!
+$! Link With The RSAREF Library And NO TCP/IP Library.
+$!
+$ LINK/'DEBUGGER'/'TRACEBACK' /EXE='EXE_FILE' -
+ 'OBJECT_FILE', -
+ 'SSL_LIB'/LIBRARY,'CRYPTO_LIB'/LIBRARY,'RSAREF_LIB'/LIBRARY, -
+ 'OPT_FILE'/OPTION
+$!
+$! End The TCP/IP Library Check.
+$!
+$ ENDIF
+$!
+$! Else...
+$!
+$ ELSE
+$!
+$! Don't Link With The RSAREF Routines.
+$!
+$!
+$! Check To See If We Are To Link With A Specific TCP/IP Library.
+$!
+$ IF (TCPIP_LIB.NES."")
+$ THEN
+$!
+$! Don't Link With The RSAREF Routines And TCP/IP Library.
+$!
+$ LINK/'DEBUGGER'/'TRACEBACK' /EXE='EXE_FILE' -
+ 'OBJECT_FILE', -
+ 'SSL_LIB'/LIBRARY,'CRYPTO_LIB'/LIBRARY, -
+ 'TCPIP_LIB','OPT_FILE'/OPTION
+$!
+$! Else...
+$!
+$ ELSE
+$!
+$! Don't Link With The RSAREF Routines And Link With A TCP/IP Library.
+$!
+$ LINK/'DEBUGGER'/'TRACEBACK' /EXE='EXE_FILE' -
+ 'OBJECT_FILE', -
+ 'SSL_LIB'/LIBRARY,'CRYPTO_LIB'/LIBRARY, -
+ 'OPT_FILE'/OPTION
+$!
+$! End The TCP/IP Library Check.
+$!
+$ ENDIF
+$!
+$! End The RSAREF Link Check.
+$!
+$ ENDIF
+$!
+$! Go Back And Do It Again.
+$!
+$ GOTO NEXT_FILE
+$!
+$! All Done With This Library Part.
+$!
+$ FILE_DONE:
+$!
+$! All Done, Time To Exit.
+$!
+$ EXIT:
+$ GOSUB CLEANUP
+$ EXIT
+$!
+$! Check For The Link Option FIle.
+$!
+$ CHECK_OPT_FILE:
+$!
+$! Check To See If We Need To Make A VAX C Option File.
+$!
+$ IF (COMPILER.EQS."VAXC")
+$ THEN
+$!
+$! Check To See If We Already Have A VAX C Linker Option File.
+$!
+$ IF (F$SEARCH(OPT_FILE).EQS."")
+$ THEN
+$!
+$! We Need A VAX C Linker Option File.
+$!
+$ CREATE 'OPT_FILE'
+$DECK
+!
+! Default System Options File To Link Agianst
+! The Sharable VAX C Runtime Library.
+!
+SYS$SHARE:VAXCRTL.EXE/SHARE
+$EOD
+$!
+$! End The Option File Check.
+$!
+$ ENDIF
+$!
+$! End The VAXC Check.
+$!
+$ ENDIF
+$!
+$! Check To See If We Need A GNU C Option File.
+$!
+$ IF (COMPILER.EQS."GNUC")
+$ THEN
+$!
+$! Check To See If We Already Have A GNU C Linker Option File.
+$!
+$ IF (F$SEARCH(OPT_FILE).EQS."")
+$ THEN
+$!
+$! We Need A GNU C Linker Option File.
+$!
+$ CREATE 'OPT_FILE'
+$DECK
+!
+! Default System Options File To Link Agianst
+! The Sharable C Runtime Library.
+!
+GNU_CC:[000000]GCCLIB/LIBRARY
+SYS$SHARE:VAXCRTL/SHARE
+$EOD
+$!
+$! End The Option File Check.
+$!
+$ ENDIF
+$!
+$! End The GNU C Check.
+$!
+$ ENDIF
+$!
+$! Check To See If We Need A DEC C Option File.
+$!
+$ IF (COMPILER.EQS."DECC")
+$ THEN
+$!
+$! Check To See If We Already Have A DEC C Linker Option File.
+$!
+$ IF (F$SEARCH(OPT_FILE).EQS."")
+$ THEN
+$!
+$! Figure Out If We Need An AXP Or A VAX Linker Option File.
+$!
+$ IF (ARCH.EQS."VAX")
+$ THEN
+$!
+$! We Need A DEC C Linker Option File For VAX.
+$!
+$ CREATE 'OPT_FILE'
+$DECK
+!
+! Default System Options File To Link Agianst
+! The Sharable DEC C Runtime Library.
+!
+SYS$SHARE:DECC$SHR.EXE/SHARE
+$EOD
+$!
+$! Else...
+$!
+$ ELSE
+$!
+$! Create The AXP Linker Option File.
+$!
+$ CREATE 'OPT_FILE'
+$DECK
+!
+! Default System Options File For AXP To Link Agianst
+! The Sharable C Runtime Library.
+!
+SYS$SHARE:CMA$OPEN_LIB_SHR/SHARE
+SYS$SHARE:CMA$OPEN_RTL/SHARE
+$EOD
+$!
+$! End The VAX/AXP DEC C Option File Check.
+$!
+$ ENDIF
+$!
+$! End The Option File Search.
+$!
+$ ENDIF
+$!
+$! End The DEC C Check.
+$!
+$ ENDIF
+$!
+$! Tell The User What Linker Option File We Are Using.
+$!
+$ WRITE SYS$OUTPUT "Using Linker Option File ",OPT_FILE,"."
+$!
+$! Time To RETURN.
+$!
+$ RETURN
+$!
+$! Check To See If We Have The Appropiate Libraries.
+$!
+$ LIB_CHECK:
+$!
+$! Look For The Library LIBCRYPTO.OLB.
+$!
+$ IF (F$SEARCH(CRYPTO_LIB).EQS."")
+$ THEN
+$!
+$! Tell The User We Can't Find The LIBCRYPTO.OLB Library.
+$!
+$ WRITE SYS$OUTPUT ""
+$ WRITE SYS$OUTPUT "Can't Find The Library ",CRYPTO_LIB,"."
+$ WRITE SYS$OUTPUT "We Can't Link Without It."
+$ WRITE SYS$OUTPUT ""
+$!
+$! Since We Can't Link Without It, Exit.
+$!
+$ EXIT
+$!
+$! End The Crypto Library Check.
+$!
+$ ENDIF
+$!
+$! See If We Need The RSAREF Library...
+$!
+$ IF (RSAREF.EQS."TRUE")
+$ THEN
+$!
+$! Look For The Library LIBRSAGLUE.OLB.
+$!
+$ IF (F$SEARCH(RSAREF_LIB).EQS."")
+$ THEN
+$!
+$! Tell The User We Can't Find The LIBRSAGLUE.OLB Library.
+$!
+$ WRITE SYS$OUTPUT ""
+$ WRITE SYS$OUTPUT "Can't Find The Library ",RSAREF_LIB,"."
+$ WRITE SYS$OUTPUT "We Can't Link Without It."
+$ WRITE SYS$OUTPUT ""
+$!
+$! Since We Can't Link Without It, Exit.
+$!
+$ EXIT
+$ ENDIF
+$!
+$! End The RSAREF Library Check.
+$!
+$ ENDIF
+$!
+$! Look For The Library LIBSSL.OLB.
+$!
+$ IF (F$SEARCH(SSL_LIB).EQS."")
+$ THEN
+$!
+$! Tell The User We Can't Find The LIBSSL.OLB Library.
+$!
+$ WRITE SYS$OUTPUT ""
+$ WRITE SYS$OUTPUT "Can't Find The Library ",SSL_LIB,"."
+$ WRITE SYS$OUTPUT "Some Of The Test Programs Need To Link To It."
+$ WRITE SYS$OUTPUT ""
+$!
+$! Since We Can't Link Without It, Exit.
+$!
+$ EXIT
+$!
+$! End The SSL Library Check.
+$!
+$ ENDIF
+$!
+$! Time To Return.
+$!
+$ RETURN
+$!
+$! Check The User's Options.
+$!
+$ CHECK_OPTIONS:
+$!
+$! Check To See If P1 Is Blank.
+$!
+$ IF (P1.EQS."NORSAREF")
+$ THEN
+$!
+$! P1 Is NORSAREF, So Compile With The Regular RSA Libraries.
+$!
+$ RSAREF = "FALSE"
+$ ELSE
+$!
+$! Check To See If We Are To Use The RSAREF Library.
+$!
+$ IF (P1.EQS."RSAREF")
+$ THEN
+$!
+$! Check To Make Sure We Have The RSAREF Source Code Directory.
+$!
+$ IF (F$SEARCH("SYS$DISK:[-.RSAREF]SOURCE.DIR").EQS."")
+$ THEN
+$!
+$! We Don't Have The RSAREF Souce Code Directory, So Tell The
+$! User This.
+$!
+$ WRITE SYS$OUTPUT ""
+$ WRITE SYS$OUTPUT "It appears that you don't have the RSAREF Souce Code."
+$ WRITE SYS$OUTPUT "You need to go to 'ftp://ftp.rsa.com/rsaref'. You have to"
+$ WRITE SYS$OUTPUT "get the '.tar-Z' file as the '.zip' file dosen't have the"
+$ WRITE SYS$OUTPUT "directory structure stored. You have to extract the file"
+$ WRITE SYS$OUTPUT "into the [.RSAREF] directory under the root directory"
+$ WRITE SYS$OUTPUT "as that is where the scripts will look for the files."
+$ WRITE SYS$OUTPUT ""
+$!
+$! Time To Exit.
+$!
+$ EXIT
+$!
+$! Else, Compile Using The RSAREF Library.
+$!
+$ ELSE
+$ RSAREF = "TRUE"
+$ ENDIF
+$ ELSE
+$!
+$! They Entered An Invalid Option..
+$!
+$ WRITE SYS$OUTPUT ""
+$ WRITE SYS$OUTPUT "The Option ",P1," Is Invalid. The Valid Options Are:"
+$ WRITE SYS$OUTPUT ""
+$ WRITE SYS$OUTPUT " RSAREF : Compile With The RSAREF Library."
+$ WRITE SYS$OUTPUT " NORSAREF : Compile With The Regular RSA Library."
+$ WRITE SYS$OUTPUT ""
+$!
+$! Time To EXIT.
+$!
+$ EXIT
+$!
+$! End The Valid Arguement Check.
+$!
+$ ENDIF
+$!
+$! End The P1 Check.
+$!
+$ ENDIF
+$!
+$! Check To See If P2 Is Blank.
+$!
+$ IF (P2.EQS."NODEBUG")
+$ THEN
+$!
+$! P2 Is NODEBUG, So Compile Without Debugger Information.
+$!
+$ DEBUGGER = "NODEBUG"
+$ TRACEBACK = "NOTRACEBACK"
+$ GCC_OPTIMIZE = "OPTIMIZE"
+$ CC_OPTIMIZE = "OPTIMIZE"
+$ WRITE SYS$OUTPUT "No Debugger Information Will Be Produced During Compile."
+$ WRITE SYS$OUTPUT "Compiling With Compiler Optimization."
+$!
+$! Else...
+$!
+$ ELSE
+$!
+$! Check To See If We Are To Compile With Debugger Information.
+$!
+$ IF (P2.EQS."DEBUG")
+$ THEN
+$!
+$! Compile With Debugger Information.
+$!
+$ DEBUGGER = "DEBUG"
+$ TRACEBACK = "TRACEBACK"
+$ GCC_OPTIMIZE = "NOOPTIMIZE"
+$ CC_OPTIMIZE = "NOOPTIMIZE"
+$ WRITE SYS$OUTPUT "Debugger Information Will Be Produced During Compile."
+$ WRITE SYS$OUTPUT "Compiling Without Compiler Optimization."
+$!
+$! Else...
+$!
+$ ELSE
+$!
+$! Tell The User Entered An Invalid Option..
+$!
+$ WRITE SYS$OUTPUT ""
+$ WRITE SYS$OUTPUT "The Option ",P2," Is Invalid. The Valid Options Are:"
+$ WRITE SYS$OUTPUT ""
+$ WRITE SYS$OUTPUT " DEBUG : Compile With The Debugger Information."
+$ WRITE SYS$OUTPUT " NODEBUG : Compile Without The Debugger Information."
+$ WRITE SYS$OUTPUT ""
+$!
+$! Time To EXIT.
+$!
+$ EXIT
+$!
+$! End The Valid Arguement Check.
+$!
+$ ENDIF
+$!
+$! End The P3 Check.
+$!
+$ ENDIF
+$!
+$! Check To See If P3 Is Blank.
+$!
+$ IF (P3.EQS."")
+$ THEN
+$!
+$! O.K., The User Didn't Specify A Compiler, Let's Try To
+$! Find Out Which One To Use.
+$!
+$! Check To See If We Have GNU C.
+$!
+$ IF (F$TRNLNM("GNU_CC").NES."")
+$ THEN
+$!
+$! Looks Like GNUC, Set To Use GNUC.
+$!
+$ P3 = "GNUC"
+$!
+$! End The GNU C Compiler Check.
+$!
+$ ELSE
+$!
+$! Check To See If We Have VAXC Or DECC.
+$!
+$ IF (ARCH.EQS."AXP").OR.(F$TRNLNM("DECC$CC_DEFAULT").NES."")
+$ THEN
+$!
+$! Looks Like DECC, Set To Use DECC.
+$!
+$ P3 = "DECC"
+$!
+$! Else...
+$!
+$ ELSE
+$!
+$! Looks Like VAXC, Set To Use VAXC.
+$!
+$ P3 = "VAXC"
+$!
+$! End The VAXC Compiler Check.
+$!
+$ ENDIF
+$!
+$! End The DECC & VAXC Compiler Check.
+$!
+$ ENDIF
+$!
+$! End The Compiler Check.
+$!
+$ ENDIF
+$!
+$! Check To See If We Have A Option For P4.
+$!
+$ IF (P4.EQS."")
+$ THEN
+$!
+$! Find out what socket library we have available
+$!
+$ IF F$PARSE("SOCKETSHR:") .NES. ""
+$ THEN
+$!
+$! We have SOCKETSHR, and it is my opinion that it's the best to use.
+$!
+$ P4 = "SOCKETSHR"
+$!
+$! Tell the user
+$!
+$ WRITE SYS$OUTPUT "Using SOCKETSHR for TCP/IP"
+$!
+$! Else, let's look for something else
+$!
+$ ELSE
+$!
+$! Like UCX (the reason to do this before Multinet is that the UCX
+$! emulation is easier to use...)
+$!
+$ IF F$TRNLNM("UCX$IPC_SHR") .NES. "" -
+ .OR. F$PARSE("SYS$SHARE:UCX$IPC_SHR.EXE") .NES. "" -
+ .OR. F$PARSE("SYS$LIBRARY:UCX$IPC.OLB") .NES. ""
+$ THEN
+$!
+$! Last resort: a UCX or UCX-compatible library
+$!
+$ P4 = "UCX"
+$!
+$! Tell the user
+$!
+$ WRITE SYS$OUTPUT "Using UCX or an emulation thereof for TCP/IP"
+$!
+$! That was all...
+$!
+$ ENDIF
+$ ENDIF
+$ ENDIF
+$!
+$! Set Up Initial CC Definitions, Possibly With User Ones
+$!
+$ CCDEFS = "VMS=1,TCPIP_TYPE_''P4'"
+$ IF F$TYPE(USER_CCDEFS) .NES. "" THEN CCDEFS = CCDEFS + "," + USER_CCDEFS
+$ CCEXTRAFLAGS = ""
+$ IF F$TYPE(USER_CCFLAGS) .NES. "" THEN CCEXTRAFLAGS = USER_CCFLAGS
+$ CCDISABLEWARNINGS = ""
+$ IF F$TYPE(USER_CCDISABLEWARNINGS) .NES. "" THEN -
+ CCDISABLEWARNINGS = USER_CCDISABLEWARNINGS
+$!
+$! Check To See If The User Entered A Valid Paramter.
+$!
+$ IF (P3.EQS."VAXC").OR.(P3.EQS."DECC").OR.(P3.EQS."GNUC")
+$ THEN
+$!
+$! Check To See If The User Wanted DECC.
+$!
+$ IF (P3.EQS."DECC")
+$ THEN
+$!
+$! Looks Like DECC, Set To Use DECC.
+$!
+$ COMPILER = "DECC"
+$!
+$! Tell The User We Are Using DECC.
+$!
+$ WRITE SYS$OUTPUT "Using DECC 'C' Compiler."
+$!
+$! Use DECC...
+$!
+$ CC = "CC"
+$ IF ARCH.EQS."VAX" .AND. F$TRNLNM("DECC$CC_DEFAULT").NES."/DECC" -
+ THEN CC = "CC/DECC"
+$ CC = CC + "/''CC_OPTIMIZE'/''DEBUGGER'/STANDARD=ANSI89" + -
+ "/NOLIST/PREFIX=ALL" + CCEXTRAFLAGS
+$!
+$! Define The Linker Options File Name.
+$!
+$ OPT_FILE = "SYS$DISK:[]VAX_DECC_OPTIONS.OPT"
+$!
+$! End DECC Check.
+$!
+$ ENDIF
+$!
+$! Check To See If We Are To Use VAXC.
+$!
+$ IF (P3.EQS."VAXC")
+$ THEN
+$!
+$! Looks Like VAXC, Set To Use VAXC.
+$!
+$ COMPILER = "VAXC"
+$!
+$! Tell The User We Are Using VAX C.
+$!
+$ WRITE SYS$OUTPUT "Using VAXC 'C' Compiler."
+$!
+$! Compile Using VAXC.
+$!
+$ CC = "CC"
+$ IF ARCH.EQS."AXP"
+$ THEN
+$ WRITE SYS$OUTPUT "There is no VAX C on Alpha!"
+$ EXIT
+$ ENDIF
+$ IF F$TRNLNM("DECC$CC_DEFAULT").EQS."/DECC" THEN CC = "CC/VAXC"
+$ CC = CC + "/''CC_OPTIMIZE'/''DEBUGGER'/NOLIST" + CCEXTRAFLAGS
+$ CCDEFS = CCDEFS + ",""VAXC"""
+$!
+$! Define <sys> As SYS$COMMON:[SYSLIB]
+$!
+$ DEFINE/NOLOG SYS SYS$COMMON:[SYSLIB]
+$!
+$! Define The Linker Options File Name.
+$!
+$ OPT_FILE = "SYS$DISK:[]VAX_VAXC_OPTIONS.OPT"
+$!
+$! End VAXC Check
+$!
+$ ENDIF
+$!
+$! Check To See If We Are To Use GNU C.
+$!
+$ IF (P3.EQS."GNUC")
+$ THEN
+$!
+$! Looks Like GNUC, Set To Use GNUC.
+$!
+$ COMPILER = "GNUC"
+$!
+$! Tell The User We Are Using GNUC.
+$!
+$ WRITE SYS$OUTPUT "Using GNU 'C' Compiler."
+$!
+$! Use GNU C...
+$!
+$ CC = "GCC/NOCASE_HACK/''GCC_OPTIMIZE'/''DEBUGGER'/NOLIST" + CCEXTRAFLAGS
+$!
+$! Define The Linker Options File Name.
+$!
+$ OPT_FILE = "SYS$DISK:[]VAX_GNUC_OPTIONS.OPT"
+$!
+$! End The GNU C Check.
+$!
+$ ENDIF
+$!
+$! Set up default defines
+$!
+$ CCDEFS = """FLAT_INC=1""," + CCDEFS
+$!
+$! Check To See If We Are To Compile With RSAREF Routines.
+$!
+$ IF (RSAREF.EQS."TRUE")
+$ THEN
+$!
+$! Compile With RSAREF.
+$!
+$ CCDEFS = CCDEFS + ",""RSAref=1"""
+$!
+$! Tell The User This.
+$!
+$ WRITE SYS$OUTPUT "Compiling With RSAREF Routines."
+$!
+$! Else, We Don't Care. Compile Without The RSAREF Library.
+$!
+$ ELSE
+$!
+$! Tell The User We Are Compile Without The RSAREF Routines.
+$!
+$ WRITE SYS$OUTPUT "Compiling Without The RSAREF Routines.
+$!
+$! End The RSAREF Check.
+$!
+$ ENDIF
+$!
+$! Finish up the definition of CC.
+$!
+$ IF COMPILER .EQS. "DECC"
+$ THEN
+$ IF CCDISABLEWARNINGS .EQS. ""
+$ THEN
+$ CC4DISABLEWARNINGS = "DOLLARID"
+$ ELSE
+$ CC4DISABLEWARNINGS = CCDISABLEWARNINGS + ",DOLLARID"
+$ CCDISABLEWARNINGS = "/WARNING=(DISABLE=(" + CCDISABLEWARNINGS + "))"
+$ ENDIF
+$ CC4DISABLEWARNINGS = "/WARNING=(DISABLE=(" + CC4DISABLEWARNINGS + "))"
+$ ELSE
+$ CCDISABLEWARNINGS = ""
+$ CC4DISABLEWARNINGS = ""
+$ ENDIF
+$ CC = CC + "/DEFINE=(" + CCDEFS + ")" + CCDISABLEWARNINGS
+$!
+$! Show user the result
+$!
+$ WRITE SYS$OUTPUT "Main Compiling Command: ",CC
+$!
+$! Else The User Entered An Invalid Arguement.
+$!
+$ ELSE
+$!
+$! Tell The User We Don't Know What They Want.
+$!
+$ WRITE SYS$OUTPUT ""
+$ WRITE SYS$OUTPUT "The Option ",P3," Is Invalid. The Valid Options Are:"
+$ WRITE SYS$OUTPUT ""
+$ WRITE SYS$OUTPUT " VAXC : To Compile With VAX C."
+$ WRITE SYS$OUTPUT " DECC : To Compile With DEC C."
+$ WRITE SYS$OUTPUT " GNUC : To Compile With GNU C."
+$ WRITE SYS$OUTPUT ""
+$!
+$! Time To EXIT.
+$!
+$ EXIT
+$ ENDIF
+$!
+$! Time to check the contents, and to make sure we get the correct library.
+$!
+$ IF P4.EQS."SOCKETSHR" .OR. P4.EQS."MULTINET" .OR. P4.EQS."UCX"
+$ THEN
+$!
+$! Check to see if SOCKETSHR was chosen
+$!
+$ IF P4.EQS."SOCKETSHR"
+$ THEN
+$!
+$! Set the library to use SOCKETSHR
+$!
+$ TCPIP_LIB = "[-.VMS]SOCKETSHR_SHR.OPT/OPT"
+$!
+$! Done with SOCKETSHR
+$!
+$ ENDIF
+$!
+$! Check to see if MULTINET was chosen
+$!
+$ IF P4.EQS."MULTINET"
+$ THEN
+$!
+$! Set the library to use UXC emulation.
+$!
+$ P4 = "UCX"
+$!
+$! Done with MULTINET
+$!
+$ ENDIF
+$!
+$! Check to see if UCX was chosen
+$!
+$ IF P4.EQS."UCX"
+$ THEN
+$!
+$! Set the library to use UCX.
+$!
+$ TCPIP_LIB = "[-.VMS]UCX_SHR_DECC.OPT/OPT"
+$ IF F$TRNLNM("UCX$IPC_SHR") .NES. ""
+$ THEN
+$ TCPIP_LIB = "[-.VMS]UCX_SHR_DECC_LOG.OPT/OPT"
+$ ELSE
+$ IF COMPILER .NES. "DECC" .AND. ARCH .EQS. "VAX" THEN -
+ TCPIP_LIB = "[-.VMS]UCX_SHR_VAXC.OPT/OPT"
+$ ENDIF
+$!
+$! Done with UCX
+$!
+$ ENDIF
+$!
+$! Print info
+$!
+$ WRITE SYS$OUTPUT "TCP/IP library spec: ", TCPIP_LIB
+$!
+$! Else The User Entered An Invalid Arguement.
+$!
+$ ELSE
+$!
+$! Tell The User We Don't Know What They Want.
+$!
+$ WRITE SYS$OUTPUT ""
+$ WRITE SYS$OUTPUT "The Option ",P4," Is Invalid. The Valid Options Are:"
+$ WRITE SYS$OUTPUT ""
+$ WRITE SYS$OUTPUT " SOCKETSHR : To link with SOCKETSHR TCP/IP library."
+$ WRITE SYS$OUTPUT " UCX : To link with UCX TCP/IP library."
+$ WRITE SYS$OUTPUT ""
+$!
+$! Time To EXIT.
+$!
+$ EXIT
+$!
+$! Done with TCP/IP libraries
+$!
+$ ENDIF
+$!
+$! Special Threads For OpenVMS v7.1 Or Later
+$!
+$! Written By: Richard Levitte
+$! richard@levitte.org
+$!
+$!
+$! Check To See If We Have A Option For P5.
+$!
+$ IF (P5.EQS."")
+$ THEN
+$!
+$! Get The Version Of VMS We Are Using.
+$!
+$ ISSEVEN :=
+$ TMP = F$ELEMENT(0,"-",F$EXTRACT(1,4,F$GETSYI("VERSION")))
+$ TMP = F$INTEGER(F$ELEMENT(0,".",TMP)+F$ELEMENT(1,".",TMP))
+$!
+$! Check To See If The VMS Version Is v7.1 Or Later.
+$!
+$ IF (TMP.GE.71)
+$ THEN
+$!
+$! We Have OpenVMS v7.1 Or Later, So Use The Special Threads.
+$!
+$ ISSEVEN := ,PTHREAD_USE_D4
+$!
+$! End The VMS Version Check.
+$!
+$ ENDIF
+$!
+$! End The P5 Check.
+$!
+$ ENDIF
+$!
+$! Time To RETURN...
+$!
+$ RETURN
+$!
+$ INITIALISE:
+$!
+$! Save old value of the logical name OPENSSL
+$!
+$ __SAVE_OPENSSL = F$TRNLNM("OPENSSL","LNM$PROCESS_TABLE")
+$!
+$! Save directory information
+$!
+$ __HERE = F$PARSE(F$PARSE("A.;",F$ENVIRONMENT("PROCEDURE"))-"A.;","[]A.;") - "A.;"
+$ __TOP = __HERE - "TEST]"
+$ __INCLUDE = __TOP + "INCLUDE.OPENSSL]"
+$!
+$! Set up the logical name OPENSSL to point at the include directory
+$!
+$ DEFINE OPENSSL/NOLOG '__INCLUDE'
+$!
+$! Done
+$!
+$ RETURN
+$!
+$ CLEANUP:
+$!
+$! Restore the logical name OPENSSL if it had a value
+$!
+$ IF __SAVE_OPENSSL .EQS. ""
+$ THEN
+$ DEASSIGN OPENSSL
+$ ELSE
+$ DEFINE/NOLOG OPENSSL '__SAVE_OPENSSL'
+$ ENDIF
+$!
+$! Done
+$!
+$ RETURN
diff --git a/lib/libssl/test/methtest.c b/lib/libssl/test/methtest.c
index 630d29dc918..06ccb3b3108 100644
--- a/lib/libssl/test/methtest.c
+++ b/lib/libssl/test/methtest.c
@@ -58,10 +58,10 @@
#include <stdio.h>
#include <stdlib.h>
-#include "rsa.h"
-#include "x509.h"
+#include <openssl/rsa.h>
+#include <openssl/x509.h>
#include "meth.h"
-#include "err.h"
+#include <openssl/err.h>
int main(argc,argv)
int argc;
diff --git a/lib/libssl/test/p b/lib/libssl/test/p
deleted file mode 100644
index b3de76751e1..00000000000
--- a/lib/libssl/test/p
+++ /dev/null
@@ -1,294 +0,0 @@
-#
-# test/Makefile.ssl
-#
-
-DIR= test
-TOP= ..
-CC= cc
-INCLUDES= -I../include
-CFLAG= -g
-INSTALLTOP= /usr/local/ssl
-MAKEFILE= Makefile.ssl
-MAKE= make -f $(MAKEFILE)
-MAKEDEPEND= makedepend -f$(MAKEFILE)
-
-PEX_LIBS=
-EX_LIBS= #-lnsl -lsocket
-
-CFLAGS= $(INCLUDES) $(CFLAG)
-
-GENERAL=Makefile.ssl
-
-DLIBCRYPTO= ../libcrypto.a
-DLIBSSL= ../libssl.a
-LIBCRYPTO= -L.. -lcrypto
-LIBSSL= -L.. -lssl
-
-BNTEST= bntest
-EXPTEST= exptest
-IDEATEST= ideatest
-SHATEST= shatest
-SHA1TEST= sha1test
-MDC2TEST= mdc2test
-RMDTEST= rmdtest
-MD2TEST= md2test
-MD5TEST= md5test
-HMACTEST= hmactest
-RC2TEST= rc2test
-RC4TEST= rc4test
-RC5TEST= rc5test
-BFTEST= bftest
-CASTTEST= casttest
-DESTEST= destest
-RANDTEST= randtest
-DHTEST= dhtest
-DSATEST= dsatest
-METHTEST= methtest
-SSLTEST= ssltest
-
-EXE= $(BNTEST) $(IDEATEST) $(MD2TEST) $(MD5TEST) $(HMACTEST) \
- $(RC2TEST) $(RC4TEST) $(RC5TEST) \
- $(DESTEST) $(SHATEST) $(SHA1TEST) $(MDC2TEST) $(RMDTEST) \
- $(RANDTEST) $(DHTEST) \
- $(BFTEST) $(CASTTEST) $(SSLTEST) $(EXPTEST) $(DSATEST)
-
-# $(METHTEST)
-
-OBJ= $(BNTEST).o $(IDEATEST).o $(MD2TEST).o $(MD5TEST).o $(HMACTEST).o \
- $(RC2TEST).o $(RC4TEST).o $(RC5TEST).o \
- $(DESTEST).o $(SHATEST).o $(SHA1TEST).o $(MDC2TEST).o $(RMDTEST).o \
- $(RANDTEST).o $(DHTEST).o $(CASTTEST).o \
- $(BFTEST).o $(SSLTEST).o $(DSATEST).o $(EXPTEST).o
-SRC= $(BNTEST).c $(IDEATEST).c $(MD2TEST).c $(MD5TEST).c $(HMACTEST).c \
- $(RC2TEST).c $(RC4TEST).c $(RC5TEST).c \
- $(DESTEST).c $(SHATEST).c $(SHA1TEST).c $(MDC2TEST).c $(RMDTEST).c \
- $(RANDTEST).c $(DHTEST).c $(CASTTEST).c \
- $(BFTEST).c $(SSLTEST).c $(DSATEST).c $(EXPTEST).c
-
-EXHEADER=
-HEADER= $(EXHEADER)
-
-ALL= $(GENERAL) $(SRC) $(HEADER)
-
-top:
- (cd ..; $(MAKE) DIRS=$(DIR) all)
-
-all: exe
-
-exe: $(EXE)
-
-files:
- perl $(TOP)/util/files.pl Makefile.ssl >> $(TOP)/MINFO
-
-links:
- /bin/rm -f Makefile
- $(TOP)/util/point.sh Makefile.ssl Makefile ;
-
-errors:
-
-install:
-
-tags:
- ctags $(SRC)
-
-tests: exe apps \
- test_des test_idea test_sha test_md5 test_hmac test_md2 test_mdc2 \
- test_rc2 test_rc4 test_rc5 test_bf test_cast \
- test_rand test_enc test_x509 test_rsa test_crl test_sid test_req \
- test_pkcs7 test_bn test_verify test_dh test_dsa test_reqgen \
- test_ss test_ssl test_ca
-
-apps:
- @(cd ../apps; $(MAKE) CC='${CC}' CFLAG='${CFLAG}' INSTALLTOP='${INSTALLTOP}' PEX_LIBS='${PEX_LIBS}' EX_LIBS='${EX_LIBS}' all)
-
-test_des:
- #./$(DESTEST)
-
-test_idea:
- ./$(IDEATEST)
-
-test_sha:
- ./$(SHATEST)
- ./$(SHA1TEST)
-
-test_mdc2:
- ./$(MDC2TEST)
-
-test_md5:
- ./$(MD5TEST)
-
-test_hmac:
- ./$(HMACTEST)
-
-test_md2:
- ./$(MD2TEST)
-
-test_rmd:
- ./$(RMDTEST)
-
-test_bf:
- ./$(BFTEST)
-
-test_cast:
- ./$(CASTTEST)
-
-test_rc2:
- ./$(RC2TEST)
-
-test_rc4:
- ./$(RC4TEST)
-
-test_rc5:
- ./$(RC5TEST)
-
-test_rand:
- ./$(RANDTEST)
-
-test_enc:
- @sh ./testenc
-
-test_x509:
- echo test normal x509v1 certificate
- sh ./tx509 2>/dev/null
- echo test first x509v3 certificate
- sh ./tx509 v3-cert1.pem 2>/dev/null
- echo test second x509v3 certificate
- sh ./tx509 v3-cert2.pem 2>/dev/null
-
-test_rsa:
- @sh ./trsa 2>/dev/null
-
-test_crl:
- @sh ./tcrl 2>/dev/null
-
-test_sid:
- @sh ./tsid 2>/dev/null
-
-test_req:
- @sh ./treq 2>/dev/null
- @sh ./treq testreq2.pem 2>/dev/null
-
-test_pkcs7:
- @sh ./tpkcs7 2>/dev/null
- @sh ./tpkcs7d 2>/dev/null
-
-test_bn:
- @echo 'test a^b%c implementations'
- ./$(EXPTEST)
- @echo starting big number library test, could take a while...
- @(./$(BNTEST)|bc) | awk '{ \
-if ($$0 != "0") {print "error"; exit(1); } \
-if (((NR+1)%64) == 0) print NR+1," tests done"; }'
-
-test_verify:
- @echo "The following command should have some OK's and some failures"
- @echo "There are definitly a few expired certificates"
- ../apps/ssleay verify -CApath ../certs ../certs/*.pem
-
-test_dh:
- @echo "Generate as set of DH parameters"
- ./$(DHTEST)
-
-test_dsa:
- @echo "Generate as set of DSA parameters"
- ./$(DSATEST)
-
-test_reqgen:
- @echo "Generate and verify a certificate request"
- @sh ./testgen
-
-test_ss:
- @echo "Generate and certify a test certificate"
- @sh ./testss
-
-test_ssl:
- @echo "test SSL protocol"
- @sh ./testssl
-
-test_ca:
- @echo "Generate and certify a test certificate via the 'ca' program"
- @sh ./testca
-
-lint:
- lint -DLINT $(INCLUDES) $(SRC)>fluff
-
-depend:
- $(MAKEDEPEND) $(INCLUDES) $(PROGS) $(SRC)
-
-dclean:
- perl -pe 'if (/^# DO NOT DELETE THIS LINE/) {print; exit(0);}' $(MAKEFILE) >Makefile.new
- mv -f Makefile.new $(MAKEFILE)
-
-clean:
- /bin/rm -f *.o *.obj lib tags core .pure .nfs* *.old *.bak fluff $(EXE) *.ss log
-
-$(DLIBSSL):
- (cd ../ssl; $(MAKE))
-
-$(DLIBCRYPTO):
- (cd ../crypto; $(MAKE))
-
-$(BNTEST): $(BNTEST).o $(DLIBCRYPTO)
- $(CC) -o $(BNTEST) $(CFLAGS) $(BNTEST).o $(PEX_LIBS) $(LIBCRYPTO) $(EX_LIBS)
-
-$(EXPTEST): $(EXPTEST).o $(DLIBCRYPTO)
- $(CC) -o $(EXPTEST) $(CFLAGS) $(EXPTEST).o $(PEX_LIBS) $(LIBCRYPTO) $(EX_LIBS)
-
-$(IDEATEST): $(IDEATEST).o $(DLIBCRYPTO)
- $(CC) -o $(IDEATEST) $(CFLAGS) $(IDEATEST).o $(PEX_LIBS) $(LIBCRYPTO) $(EX_LIBS)
-
-$(MD2TEST): $(MD2TEST).o $(DLIBCRYPTO)
- $(CC) -o $(MD2TEST) $(CFLAGS) $(MD2TEST).o $(PEX_LIBS) $(LIBCRYPTO) $(EX_LIBS)
-
-$(SHATEST): $(SHATEST).o $(DLIBCRYPTO)
- $(CC) -o $(SHATEST) $(CFLAGS) $(SHATEST).o $(PEX_LIBS) $(LIBCRYPTO) $(EX_LIBS)
-
-$(SHA1TEST): $(SHA1TEST).o $(DLIBCRYPTO)
- $(CC) -o $(SHA1TEST) $(CFLAGS) $(SHA1TEST).o $(PEX_LIBS) $(LIBCRYPTO) $(EX_LIBS)
-
-$(RMDTEST): $(RMDTEST).o $(DLIBCRYPTO)
- $(CC) -o $(RMDTEST) $(CFLAGS) $(RMDTEST).o $(PEX_LIBS) $(LIBCRYPTO) $(EX_LIBS)
-
-$(MDC2TEST): $(MDC2TEST).o $(DLIBCRYPTO)
- $(CC) -o $(MDC2TEST) $(CFLAGS) $(MDC2TEST).o $(PEX_LIBS) $(LIBCRYPTO) $(EX_LIBS)
-
-$(MD5TEST): $(MD5TEST).o $(DLIBCRYPTO)
- $(CC) -o $(MD5TEST) $(CFLAGS) $(MD5TEST).o $(PEX_LIBS) $(LIBCRYPTO) $(EX_LIBS)
-
-$(HMACTEST): $(HMACTEST).o $(DLIBCRYPTO)
- $(CC) -o $(HMACTEST) $(CFLAGS) $(HMACTEST).o $(PEX_LIBS) $(LIBCRYPTO) $(EX_LIBS)
-
-$(RC2TEST): $(RC2TEST).o $(DLIBCRYPTO)
- $(CC) -o $(RC2TEST) $(CFLAGS) $(RC2TEST).o $(PEX_LIBS) $(LIBCRYPTO) $(EX_LIBS)
-
-$(BFTEST): $(BFTEST).o $(DLIBCRYPTO)
- $(CC) -o $(BFTEST) $(CFLAGS) $(BFTEST).o $(PEX_LIBS) $(LIBCRYPTO) $(EX_LIBS)
-
-$(CASTTEST): $(CASTTEST).o $(DLIBCRYPTO)
- $(CC) -o $(CASTTEST) $(CFLAGS) $(CASTTEST).o $(PEX_LIBS) $(LIBCRYPTO) $(EX_LIBS)
-
-$(RC4TEST): $(RC4TEST).o $(DLIBCRYPTO)
- $(CC) -o $(RC4TEST) $(CFLAGS) $(RC4TEST).o $(PEX_LIBS) $(LIBCRYPTO) $(EX_LIBS)
-
-$(RC5TEST): $(RC5TEST).o $(DLIBCRYPTO)
- $(CC) -o $(RC5TEST) $(CFLAGS) $(RC5TEST).o $(PEX_LIBS) $(LIBCRYPTO) $(EX_LIBS)
-
-$(DESTEST): $(DESTEST).o $(DLIBCRYPTO)
- $(CC) -o $(DESTEST) $(CFLAGS) $(DESTEST).o $(PEX_LIBS) $(LIBCRYPTO) $(EX_LIBS)
-
-$(RANDTEST): $(RANDTEST).o $(DLIBCRYPTO)
- $(CC) -o $(RANDTEST) $(CFLAGS) $(RANDTEST).o $(PEX_LIBS) $(LIBCRYPTO) $(EX_LIBS)
-
-$(DHTEST): $(DHTEST).o $(DLIBCRYPTO)
- $(CC) -o $(DHTEST) $(CFLAGS) $(DHTEST).o $(PEX_LIBS) $(LIBCRYPTO) $(EX_LIBS)
-
-$(DSATEST): $(DSATEST).o $(DLIBCRYPTO)
- $(CC) -o $(DSATEST) $(CFLAGS) $(DSATEST).o $(PEX_LIBS) $(LIBCRYPTO) $(EX_LIBS)
-
-$(METHTEST): $(METHTEST).o $(DLIBCRYPTO)
- $(CC) -o $(METHTEST) $(CFLAGS) $(METHTEST).o $(PEX_LIBS) $(LIBCRYPTO) $(EX_LIBS)
-
-$(SSLTEST): $(SSLTEST).o $(DLIBSSL) $(DLIBCRYPTO)
- $(CC) -o $(SSLTEST) $(CFLAGS) $(SSLTEST).o $(PEX_LIBS) $(LIBSSL) $(LIBCRYPTO) $(EX_LIBS)
-
-# DO NOT DELETE THIS LINE -- make depend depends on it.
diff --git a/lib/libssl/test/riptest b/lib/libssl/test/riptest
deleted file mode 100644
index 8685d0ce53e..00000000000
--- a/lib/libssl/test/riptest
+++ /dev/null
Binary files differ
diff --git a/lib/libssl/test/tcrl b/lib/libssl/test/tcrl
index 859fba452f5..acaf8f3c471 100644
--- a/lib/libssl/test/tcrl
+++ b/lib/libssl/test/tcrl
@@ -3,7 +3,7 @@
PATH=../apps:$PATH
export PATH
-cmd='../apps/ssleay crl'
+cmd='../apps/openssl crl'
if [ "$1"x != "x" ]; then
t=$1
diff --git a/lib/libssl/test/tcrl.com b/lib/libssl/test/tcrl.com
new file mode 100644
index 00000000000..cef21467bb6
--- /dev/null
+++ b/lib/libssl/test/tcrl.com
@@ -0,0 +1,78 @@
+$! TCRL.COM -- Tests crl keys
+$
+$ __arch := VAX
+$ if f$getsyi("cpu") .ge. 128 then __arch := AXP
+$ exe_dir := sys$disk:[-.'__arch'.exe.apps]
+$
+$ cmd := mcr 'exe_dir'openssl crl
+$
+$ t := testcrl.pem
+$ if p1 .nes. "" then t = p1
+$
+$ write sys$output "testing CRL conversions"
+$ copy 't' fff.p
+$
+$ write sys$output "p -> d"
+$ 'cmd' -in fff.p -inform p -outform d -out f.d
+$ if $severity .ne. 1 then exit 3
+$! write sys$output "p -> t"
+$! 'cmd' -in fff.p -inform p -outform t -out f.t
+$! if $severity .ne. 1 then exit 3
+$ write sys$output "p -> p"
+$ 'cmd' -in fff.p -inform p -outform p -out f.p
+$ if $severity .ne. 1 then exit 3
+$
+$ write sys$output "d -> d"
+$ 'cmd' -in f.d -inform d -outform d -out ff.d1
+$ if $severity .ne. 1 then exit 3
+$! write sys$output "t -> d"
+$! 'cmd' -in f.t -inform t -outform d -out ff.d2
+$! if $severity .ne. 1 then exit 3
+$ write sys$output "p -> d"
+$ 'cmd' -in f.p -inform p -outform d -out ff.d3
+$ if $severity .ne. 1 then exit 3
+$
+$! write sys$output "d -> t"
+$! 'cmd' -in f.d -inform d -outform t -out ff.t1
+$! if $severity .ne. 1 then exit 3
+$! write sys$output "t -> t"
+$! 'cmd' -in f.t -inform t -outform t -out ff.t2
+$! if $severity .ne. 1 then exit 3
+$! write sys$output "p -> t"
+$! 'cmd' -in f.p -inform p -outform t -out ff.t3
+$! if $severity .ne. 1 then exit 3
+$
+$ write sys$output "d -> p"
+$ 'cmd' -in f.d -inform d -outform p -out ff.p1
+$ if $severity .ne. 1 then exit 3
+$! write sys$output "t -> p"
+$! 'cmd' -in f.t -inform t -outform p -out ff.p2
+$! if $severity .ne. 1 then exit 3
+$ write sys$output "p -> p"
+$ 'cmd' -in f.p -inform p -outform p -out ff.p3
+$ if $severity .ne. 1 then exit 3
+$
+$ difference/output=nl: fff.p f.p
+$ if $severity .ne. 1 then exit 3
+$ difference/output=nl: fff.p ff.p1
+$ if $severity .ne. 1 then exit 3
+$! difference/output=nl: fff.p ff.p2
+$! if $severity .ne. 1 then exit 3
+$ difference/output=nl: fff.p ff.p3
+$ if $severity .ne. 1 then exit 3
+$
+$! difference/output=nl: f.t ff.t1
+$! if $severity .ne. 1 then exit 3
+$! difference/output=nl: f.t ff.t2
+$! if $severity .ne. 1 then exit 3
+$! difference/output=nl: f.t ff.t3
+$! if $severity .ne. 1 then exit 3
+$
+$ difference/output=nl: f.p ff.p1
+$ if $severity .ne. 1 then exit 3
+$! difference/output=nl: f.p ff.p2
+$! if $severity .ne. 1 then exit 3
+$ difference/output=nl: f.p ff.p3
+$ if $severity .ne. 1 then exit 3
+$
+$ delete f.*;*,ff.*;*,fff.*;*
diff --git a/lib/libssl/test/test.txt b/lib/libssl/test/test.txt
deleted file mode 100644
index c6d8d50ba9d..00000000000
--- a/lib/libssl/test/test.txt
+++ /dev/null
@@ -1,31 +0,0 @@
-#!/bin/sh
-
-test=./test.txt
-
-cat $0 >$test;
-
-for i in rc4 des-cfb des-ofb des-ecb des-cbc des-ede des-ede3 \
- des-cbc-ede des-cbc-ede3 idea-ecb idea-cfb idea-ofb idea-cbc
-do
- echo $i
- ../apps/ssleay $i -e -k test < $test > $test.$i.cipher
- ../apps/ssleay $i -d -k test < $test.$i.cipher >$test.$i.clear
- cmp $test $test.$i.clear
- if [ $? != 0 ]
- then
- exit 1
- else
- /bin/rm $test.$i.cipher $test.$i.clear
- fi
-
- echo $i base64
- ../apps/ssleay $i -a -e -k test < $test > $test.$i.cipher
- ../apps/ssleay $i -a -d -k test < $test.$i.cipher >$test.$i.clear
- cmp $test $test.$i.clear
- if [ $? != 0 ]
- then
- exit 1
- else
- /bin/rm $test.$i.cipher $test.$i.clear
- fi
-done
diff --git a/lib/libssl/test/testca b/lib/libssl/test/testca
index a28402f9ca7..88c186b6ab8 100644
--- a/lib/libssl/test/testca
+++ b/lib/libssl/test/testca
@@ -23,7 +23,7 @@ if [ $? != 0 ]; then
fi
-SSLEAY_CONFIG="-config ../apps/ssleay.cnf"
+SSLEAY_CONFIG="-config ../apps/openssl.cnf"
export SSLEAY_CONFIG
$SH ../apps/CA.sh -sign <<EOF
y
diff --git a/lib/libssl/test/testca.com b/lib/libssl/test/testca.com
new file mode 100644
index 00000000000..ea75479cd5a
--- /dev/null
+++ b/lib/libssl/test/testca.com
@@ -0,0 +1,76 @@
+$! TESTCA.COM
+$
+$ __arch := VAX
+$ if f$getsyi("cpu") .ge. 128 then __arch := AXP
+$ exe_dir := sys$disk:[-.'__arch'.exe.apps]
+$
+$ openssl := mcr 'exe_dir'openssl
+$
+$ SSLEAY_CONFIG="-config ""CAss.cnf"""
+$
+$ set noon
+$ if f$search("demoCA.dir") .nes. ""
+$ then
+$ call deltree [.demoCA]*.*
+$ set file/prot=(S:RWED,O:RWED,G:RWED,W:RWED) demoCA.dir;*
+$ delete demoCA.dir;*
+$ endif
+$ set on
+$ open/read sys$ca_input VMSca-response.1
+$ @[-.apps]CA.com -input sys$ca_input -newca
+$ close sys$ca_input
+$ if $severity .ne. 1 then exit 3
+$
+$
+$ SSLEAY_CONFIG="-config ""Uss.cnf"""
+$ @[-.apps]CA.com -newreq
+$ if $severity .ne. 1 then exit 3
+$
+$
+$ SSLEAY_CONFIG="-config [-.apps]openssl-vms.cnf"
+$ open/read sys$ca_input VMSca-response.2
+$ @[-.apps]CA.com -input sys$ca_input -sign
+$ close sys$ca_input
+$ if $severity .ne. 1 then exit 3
+$
+$
+$ @[-.apps]CA.com -verify newcert.pem
+$ if $severity .ne. 1 then exit 3
+$
+$ set noon
+$ call deltree [.demoCA]*.*
+$ set file/prot=(S:RWED,O:RWED,G:RWED,W:RWED) demoCA.dir;*
+$ delete demoCA.dir;*,newcert.pem;*,newreq.pem;*
+$ set on
+$! #usage: CA -newcert|-newreq|-newca|-sign|-verify
+$
+$ exit
+$
+$ deltree: subroutine ! P1 is a name of a directory
+$ on control_y then goto dt_STOP
+$ on warning then goto dt_exit
+$ _dt_def = f$trnlnm("SYS$DISK")+f$directory()
+$ if f$parse(p1) .eqs. "" then exit
+$ set default 'f$parse(p1,,,"DEVICE")''f$parse(p1,,,"DIRECTORY")'
+$ p1 = f$parse(p1,,,"NAME") + f$parse(p1,,,"TYPE")
+$ _fp = f$parse(".DIR",p1)
+$ dt_loop:
+$ _f = f$search(_fp)
+$ if _f .eqs. "" then goto dt_loopend
+$ call deltree [.'f$parse(_f,,,"NAME")']*.*
+$ goto dt_loop
+$ dt_loopend:
+$ _fp = f$parse(p1,".;*")
+$ if f$search(_fp) .eqs. "" then goto dt_exit
+$ set noon
+$ set file/prot=(S:RWED,O:RWED,G:RWED,W:RWED) '_fp'
+$ set on
+$ delete/nolog '_fp'
+$ dt_exit:
+$ set default '_dt_def'
+$ exit
+$ dt_STOP:
+$ set default '_dt_def'
+$ stop/id=""
+$ exit
+$ endsubroutine
diff --git a/lib/libssl/test/testenc b/lib/libssl/test/testenc
index 42db56c2bea..0656c7f5254 100644
--- a/lib/libssl/test/testenc
+++ b/lib/libssl/test/testenc
@@ -2,7 +2,7 @@
testsrc=Makefile.ssl
test=./p
-cmd=../apps/ssleay
+cmd=../apps/openssl
cat $testsrc >$test;
@@ -27,15 +27,7 @@ else
/bin/rm $test.cipher $test.clear
fi
-for i in rc4 \
- des-cfb des-ede-cfb des-ede3-cfb \
- des-ofb des-ede-ofb des-ede3-ofb \
- des-ecb des-ede des-ede3 desx \
- des-cbc des-ede-cbc des-ede3-cbc \
- idea-ecb idea-cfb idea-ofb idea-cbc \
- rc2-ecb rc2-cfb rc2-ofb rc2-cbc \
- bf-ecb bf-cfb bf-ofb bf-cbc rc4 \
- cast5-ecb cast5-cfb cast5-ofb cast5-cbc
+for i in `$cmd list-cipher-commands`
do
echo $i
$cmd $i -bufsize 113 -e -k test < $test > $test.$i.cipher
diff --git a/lib/libssl/test/testenc.com b/lib/libssl/test/testenc.com
new file mode 100644
index 00000000000..0756e8badaa
--- /dev/null
+++ b/lib/libssl/test/testenc.com
@@ -0,0 +1,50 @@
+$! TESTENC.COM -- Test encoding and decoding
+$
+$ __arch := VAX
+$ if f$getsyi("cpu") .ge. 128 then __arch := AXP
+$ exe_dir := sys$disk:[-.'__arch'.exe.apps]
+$
+$ testsrc := makefile.ssl
+$ test := p.txt
+$ cmd := mcr 'exe_dir'openssl
+$
+$ copy 'testsrc' 'test'
+$
+$ write sys$output "cat"
+$ 'cmd' enc -in 'test' -out 'test'-cipher
+$ 'cmd' enc -in 'test'-cipher -out 'test'-clear
+$ difference/output=nl: 'test' 'test'-clear
+$ if $severity .ne. 1 then exit 3
+$ delete 'test'-cipher;*,'test'-clear;*
+$
+$ write sys$output "base64"
+$ 'cmd' enc -a -e -in 'test' -out 'test'-cipher
+$ 'cmd' enc -a -d -in 'test'-cipher -out 'test'-clear
+$ difference/output=nl: 'test' 'test'-clear
+$ if $severity .ne. 1 then exit 3
+$ delete 'test'-cipher;*,'test'-clear;*
+$
+$ define/user sys$output 'test'-cipher-commands
+$ 'cmd' list-cipher-commands
+$ open/read f 'test'-cipher-commands
+$ loop_cipher_commands:
+$ read/end=loop_cipher_commands_end f i
+$ write sys$output i
+$ 'cmd' 'i' -bufsize 113 -e -k test -in 'test' -out 'test'-'i'-cipher
+$ 'cmd' 'i' -bufsize 157 -d -k test -in 'test'-'i'-cipher -out 'test'-'i'-clear
+$ difference/output=nl: 'test' 'test'-'i'-clear
+$ if $severity .ne. 1 then exit 3
+$ delete 'test'-'i'-cipher;*,'test'-'i'-clear;*
+$
+$ write sys$output i," base64"
+$ 'cmd' 'i' -bufsize 113 -a -e -k test -in 'test' -out 'test'-'i'-cipher
+$ 'cmd' 'i' -bufsize 157 -a -d -k test -in 'test'-'i'-cipher -out 'test'-'i'-clear
+$ difference/output=nl: 'test' 'test'-'i'-clear
+$ if $severity .ne. 1 then exit 3
+$ delete 'test'-'i'-cipher;*,'test'-'i'-clear;*
+$
+$ goto loop_cipher_commands
+$ loop_cipher_commands_end:
+$ close f
+$ delete 'test'-cipher-commands;*
+$ delete 'test';*
diff --git a/lib/libssl/test/testgen b/lib/libssl/test/testgen
index 12a4ca4cea8..3534f5821f0 100644
--- a/lib/libssl/test/testgen
+++ b/lib/libssl/test/testgen
@@ -15,13 +15,13 @@ echo "There should be a 2 sequences of .'s and some +'s."
echo "There should not be more that at most 80 per line"
echo "This could take some time."
-../apps/ssleay req -config test.cnf -new -out testreq.pem
+../apps/openssl req -config test.cnf -new -out testreq.pem
if [ $? != 0 ]; then
echo problems creating request
exit 1
fi
-../apps/ssleay req -verify -in testreq.pem -noout
+../apps/openssl req -config test.cnf -verify -in testreq.pem -noout
if [ $? != 0 ]; then
echo signature on req is wrong
exit 1
diff --git a/lib/libssl/test/testgen.com b/lib/libssl/test/testgen.com
new file mode 100644
index 00000000000..ec302f524a4
--- /dev/null
+++ b/lib/libssl/test/testgen.com
@@ -0,0 +1,35 @@
+$! TETSGEN.COM
+$
+$ __arch := VAX
+$ if f$getsyi("cpu") .ge. 128 then __arch := AXP
+$ exe_dir := sys$disk:[-.'__arch'.exe.apps]
+$
+$ T := testcert
+$ KEY = 512
+$ CA := [-.certs]testca.pem
+$
+$ set noon
+$ if f$search(T+".1;*") .nes. "" then delete 'T'.1;*
+$ if f$search(T+".2;*") .nes. "" then delete 'T'.2;*
+$ if f$search(T+".key;*") .nes. "" then delete 'T'.key;*
+$ set on
+$
+$ write sys$output "generating certificate request"
+$
+$ write sys$output "There should be a 2 sequences of .'s and some +'s."
+$ write sys$output "There should not be more that at most 80 per line"
+$ write sys$output "This could take some time."
+$
+$ mcr 'exe_dir'openssl req -config test.cnf -new -out testreq.pem
+$ if $severity .ne. 1
+$ then
+$ write sys$output "problems creating request"
+$ exit 3
+$ endif
+$
+$ mcr 'exe_dir'openssl req -verify -in testreq.pem -noout
+$ if $severity .ne. 1
+$ then
+$ write sys$output "signature on req is wrong"
+$ exit 3
+$ endif
diff --git a/lib/libssl/test/testkey.pem b/lib/libssl/test/testkey.pem
deleted file mode 100644
index edd5a5773f6..00000000000
--- a/lib/libssl/test/testkey.pem
+++ /dev/null
@@ -1,2 +0,0 @@
------BEGIN RSA PRIVATE KEY-----
------END RSA PRIVATE KEY-----
diff --git a/lib/libssl/test/testp7.pem b/lib/libssl/test/testp7.pem
index b3b6dba8303..6bba16f1376 100644
--- a/lib/libssl/test/testp7.pem
+++ b/lib/libssl/test/testp7.pem
@@ -33,14 +33,14 @@ AQEFAANLADBIAkEA7Fc6zYJw4WwCWa1ni3fYNbzGSQNluuw990024GusjLfhEk1h
MsIUukTT/n8yxoO7rYp4x+LS+tHF2tBtuxg7CwIDAQABoyIwIDALBgNVHQ8EBAMC
AQYwEQYJYIZIAYb4QgEBBAQDAgIEMA0GCSqGSIb3DQEBAgUAA0EAFKem0cJGg9nd
TAbP5o1HIEyNn11ZlvLU5v1Hejs1MKQt72IMm4jjgOH+pjguXW8lB6yzrK4oVOO2
-UNCaNQ1H26GCAa0wgeYwgZEwDQYJKoZIhvcNAQECBQAwYjERMA8GA1UEBxMISW50
-ZXJuZXQxFzAVBgNVBAoTDlZlcmlTaWduLCBJbmMuMTQwMgYDVQQLEytWZXJpU2ln
-biBDbGFzcyAxIENBIC0gSW5kaXZpZHVhbCBTdWJzY3JpYmVyFw05NjA3MTcxNzU5
-MjlaFw05NzA3MTgwMDAwMDBaMA0GCSqGSIb3DQEBAgUAA0EAubVWYTsWsQmste9f
-+UgMw8BkjDlM25fwQLrCfmmnLxjewey10kSROypUaJLb+r4oRALc0fG9XfZsaiiI
-gotQHjCBwTBtMA0GCSqGSIb3DQEBAgUAMD4xCzAJBgNVBAYTAlVTMRcwFQYDVQQK
-Ew5WZXJpU2lnbiwgSW5jLjEWMBQGA1UECxMNVEVTVCBSb290IFBDQRcNOTYwNzE3
-MTc0NDA5WhcNOTgwNzE3MDAwMDAwWjANBgkqhkiG9w0BAQIFAANBAHitA0/xAukC
-jHzeh1AMT/l2oC68N+yFb+aJPHBBMxc6gG2MaKjBNwb5hcXUllMlExONA3ju10f7
-owIq3s3wx10xAAAAAAA=
+UNCaNQ1H26GCAa0wgcEwbTANBgkqhkiG9w0BAQIFADA+MQswCQYDVQQGEwJVUzEX
+MBUGA1UEChMOVmVyaVNpZ24sIEluYy4xFjAUBgNVBAsTDVRFU1QgUm9vdCBQQ0EX
+DTk2MDcxNzE3NDQwOVoXDTk4MDcxNzAwMDAwMFowDQYJKoZIhvcNAQECBQADQQB4
+rQNP8QLpAox83odQDE/5dqAuvDfshW/miTxwQTMXOoBtjGiowTcG+YXF1JZTJRMT
+jQN47tdH+6MCKt7N8MddMIHmMIGRMA0GCSqGSIb3DQEBAgUAMGIxETAPBgNVBAcT
+CEludGVybmV0MRcwFQYDVQQKEw5WZXJpU2lnbiwgSW5jLjE0MDIGA1UECxMrVmVy
+aVNpZ24gQ2xhc3MgMSBDQSAtIEluZGl2aWR1YWwgU3Vic2NyaWJlchcNOTYwNzE3
+MTc1OTI5WhcNOTcwNzE4MDAwMDAwWjANBgkqhkiG9w0BAQIFAANBALm1VmE7FrEJ
+rLXvX/lIDMPAZIw5TNuX8EC6wn5ppy8Y3sHstdJEkTsqVGiS2/q+KEQC3NHxvV32
+bGooiIKLUB4xAAAAAAA=
-----END PKCS7-----
diff --git a/lib/libssl/test/testreq.pem b/lib/libssl/test/testreq.pem
deleted file mode 100644
index 1311fa77854..00000000000
--- a/lib/libssl/test/testreq.pem
+++ /dev/null
@@ -1,9 +0,0 @@
------BEGIN CERTIFICATE REQUEST-----
-MIIBQjCB7QIBADCBhzELMAkGA1UEBhMCQVUxEzARBgNVBAgTClF1ZWVuc2xhbmQx
-ETAPBgNVBAcTCEJyaXNiYW5lMRowGAYDVQQKExFDcnlwdFNvZnQgUHR5IEx0ZDET
-MBEGA1UEAxMKRXJpYyBZb3VuZzEfMB0GCSqGSIb3DQEJARYQZWF5QG1pbmNvbS5v
-ei5hdTBcMA0GCSqGSIb3DQEBAQUAA0sAMEgCQQDVKdT5QB2ZojtNQGjA/9J7s2o4
-RNkuSq8l377uWLAyMljtdkcoRsvUy5lZ997UDHFTbVFA038ZBrmw7l5EyHeXAgMB
-AAGgADANBgkqhkiG9w0BAQQFAANBAKnaFr4u7PTdfmpjiX/H8Ho4UWGVRWUlvD2R
-/D9yoTj7TN3uODx2BD0drErVBe/Zjv81vhH6Yo3cJO/hRS3A7jw=
------END CERTIFICATE REQUEST-----
diff --git a/lib/libssl/test/tests.com b/lib/libssl/test/tests.com
new file mode 100644
index 00000000000..147b8aa8389
--- /dev/null
+++ b/lib/libssl/test/tests.com
@@ -0,0 +1,203 @@
+$! TESTS.COM -- Performs the necessary tests
+$!
+$! P1 tests to be performed. Empty means all.
+$
+$ __proc = f$element(0,";",f$environment("procedure"))
+$ __here = f$parse(f$parse("A.;",__proc) - "A.;","[]A.;") - "A.;"
+$ __save_default = f$environment("default")
+$ __arch := VAX
+$ if f$getsyi("cpu") .ge. 128 then __arch := AXP
+$ texe_dir := sys$disk:[-.'__arch'.exe.test]
+$ exe_dir := sys$disk:[-.'__arch'.exe.apps]
+$
+$ set default '__here'
+$ on control_y then goto exit
+$ on error then goto exit
+$
+$ if p1 .nes. ""
+$ then
+$ tests = p1
+$ else
+$ tests := -
+ test_des,test_idea,test_sha,test_md5,test_hmac,test_md2,test_mdc2,-
+ test_rc2,test_rc4,test_rc5,test_bf,test_cast,-
+ test_rand,test_bn,test_enc,test_x509,test_rsa,test_crl,test_sid,-
+ test_reqgen,test_req,test_pkcs7,test_verify,test_dh,test_dsa,-
+ test_ss,test_ssl,test_ca
+$ endif
+$ tests = f$edit(tests,"COLLAPSE")
+$
+$ BNTEST := bntest
+$ EXPTEST := exptest
+$ IDEATEST := ideatest
+$ SHATEST := shatest
+$ SHA1TEST := sha1test
+$ MDC2TEST := mdc2test
+$ RMDTEST := rmdtest
+$ MD2TEST := md2test
+$ MD5TEST := md5test
+$ HMACTEST := hmactest
+$ RC2TEST := rc2test
+$ RC4TEST := rc4test
+$ RC5TEST := rc5test
+$ BFTEST := bftest
+$ CASTTEST := casttest
+$ DESTEST := destest
+$ RANDTEST := randtest
+$ DHTEST := dhtest
+$ DSATEST := dsatest
+$ METHTEST := methtest
+$ SSLTEST := ssltest
+$ RSATEST := rsa_oaep_test
+$
+$ tests_i = 0
+$ loop_tests:
+$ tests_e = f$element(tests_i,",",tests)
+$ tests_i = tests_i + 1
+$ if tests_e .eqs. "," then goto exit
+$ goto 'tests_e'
+$
+$ test_des:
+$ mcr 'texe_dir''destest'
+$ goto loop_tests
+$ test_idea:
+$ mcr 'texe_dir''ideatest'
+$ goto loop_tests
+$ test_sha:
+$ mcr 'texe_dir''shatest'
+$ mcr 'texe_dir''sha1test'
+$ goto loop_tests
+$ test_mdc2:
+$ mcr 'texe_dir''mdc2test'
+$ goto loop_tests
+$ test_md5:
+$ mcr 'texe_dir''md5test'
+$ goto loop_tests
+$ test_hmac:
+$ mcr 'texe_dir''hmactest'
+$ goto loop_tests
+$ test_md2:
+$ mcr 'texe_dir''md2test'
+$ goto loop_tests
+$ test_rmd:
+$ mcr 'texe_dir''rmdtest'
+$ goto loop_tests
+$ test_bf:
+$ mcr 'texe_dir''bftest'
+$ goto loop_tests
+$ test_cast:
+$ mcr 'texe_dir''casttest'
+$ goto loop_tests
+$ test_rc2:
+$ mcr 'texe_dir''rc2test'
+$ goto loop_tests
+$ test_rc4:
+$ mcr 'texe_dir''rc4test'
+$ goto loop_tests
+$ test_rc5:
+$ mcr 'texe_dir''rc5test'
+$ goto loop_tests
+$ test_rand:
+$ mcr 'texe_dir''randtest'
+$ goto loop_tests
+$ test_enc:
+$ @testenc.com
+$ goto loop_tests
+$ test_x509:
+$ define sys$error nla0:
+$ write sys$output "test normal x509v1 certificate"
+$ @tx509.com
+$ write sys$output "test first x509v3 certificate"
+$ @tx509.com v3-cert1.pem
+$ write sys$output "test second x509v3 certificate"
+$ @tx509.com v3-cert2.pem
+$ deassign sys$error
+$ goto loop_tests
+$ test_rsa:
+$ define sys$error nla0:
+$ @trsa.com
+$ deassign sys$error
+$ mcr 'texe_dir''rsatest'
+$ goto loop_tests
+$ test_crl:
+$ define sys$error nla0:
+$ @tcrl.com
+$ deassign sys$error
+$ goto loop_tests
+$ test_sid:
+$ define sys$error nla0:
+$ @tsid.com
+$ deassign sys$error
+$ goto loop_tests
+$ test_req:
+$ define sys$error nla0:
+$ @treq.com
+$ @treq.com testreq2.pem
+$ deassign sys$error
+$ goto loop_tests
+$ test_pkcs7:
+$ define sys$error nla0:
+$ @tpkcs7.com
+$ @tpkcs7d.com
+$ deassign sys$error
+$ goto loop_tests
+$ test_bn:
+$ write sys$output "starting big number library test, could take a while..."
+$ create bntest-vms.fdl
+FILE
+ ORGANIZATION sequential
+RECORD
+ FORMAT stream_lf
+$ create/fdl=bntest-vms.fdl bntest-vms.sh
+$ open/append foo bntest-vms.sh
+$ type/output=foo: sys$input:
+<< __FOO__ bc | awk '{ \
+if ($$0 != "0") {print "error"; exit(1); } \
+if (((NR+1)%64) == 0) print NR+1," tests done"; }'
+$ define/user sys$output bntest-vms.tmp
+$ mcr 'texe_dir''bntest'
+$ copy bntest-vms.tmp foo:
+$ delete bntest-vms.tmp;*
+$ type/output=foo: sys$input:
+__FOO__
+$ close foo
+$ write sys$output "-- copy the [.test]bntest-vms.sh file to a Unix system and run it"
+$ write sys$output "-- through sh or bash to verify that the bignum operations went well."
+$ write sys$output ""
+$ write sys$output "test a^b%c implementations"
+$ mcr 'texe_dir''exptest'
+$ goto loop_tests
+$ test_verify:
+$ write sys$output "The following command should have some OK's and some failures"
+$ write sys$output "There are definitly a few expired certificates"
+$ @tverify.com
+$ goto loop_tests
+$ test_dh:
+$ write sys$output "Generate as set of DH parameters"
+$ mcr 'texe_dir''dhtest'
+$ goto loop_tests
+$ test_dsa:
+$ write sys$output "Generate as set of DSA parameters"
+$ mcr 'texe_dir''dsatest'
+$ goto loop_tests
+$ test_reqgen:
+$ write sys$output "Generate and verify a certificate request"
+$ @testgen.com
+$ goto loop_tests
+$ test_ss:
+$ write sys$output "Generate and certify a test certificate"
+$ @testss.com
+$ goto loop_tests
+$ test_ssl:
+$ write sys$output "test SSL protocol"
+$ @testssl.com
+$ goto loop_tests
+$ test_ca:
+$ write sys$output "Generate and certify a test certificate via the 'ca' program"
+$ @testca.com
+$ goto loop_tests
+$
+$
+$ exit:
+$ set default '__save_default'
+$ exit
diff --git a/lib/libssl/test/testsid.pem b/lib/libssl/test/testsid.pem
index cd8617be2e6..7ffd008f666 100644
--- a/lib/libssl/test/testsid.pem
+++ b/lib/libssl/test/testsid.pem
@@ -1,5 +1,5 @@
-----BEGIN SSL SESSION PARAMETERS-----
-MIIBxwIBAQIBAgQDAQCABBCi11xa5qkOP8xrr02K/NQCBBBkIYQZM0Bt95W0EHNV
+MIIB1gIBAQIBAgQDAQCABBCi11xa5qkOP8xrr02K/NQCBBBkIYQZM0Bt95W0EHNV
bA58oQYCBDIBr7WiBAICASyjggGGMIIBgjCCASwCAQMwDQYJKoZIhvcNAQEEBQAw
ODELMAkGA1UEBhMCQVUxDDAKBgNVBAgTA1FMRDEbMBkGA1UEAxMSU1NMZWF5L3Jz
YSB0ZXN0IENBMB4XDTk1MTAwOTIzMzEzNFoXDTk4MDcwNTIzMzEzNFowYDELMAkG
@@ -8,5 +8,5 @@ LjELMAkGA1UECxMCQ1MxGzAZBgNVBAMTElNTTGVheSBkZW1vIGNsaWVudDBcMA0G
CSqGSIb3DQEBAQUAA0sAMEgCQQC4pcXEL1lgVA+B5Q3TcuW/O3LZHoA73IYm8oFD
TezgCDhL2RTMn+seKWF36UtJKRIOBU9jZHCVVd0Me5ls6BEjAgMBAAEwDQYJKoZI
hvcNAQEEBQADQQBoIpOcwUY1qlVF7j3ROSGvUsbvByOBFmYWkIBgsCqR+9qo1A7L
-CrWF5i8LWt/vLwAHaxWNx2YuBJMFyuK81fTv
+CrWF5i8LWt/vLwAHaxWNx2YuBJMFyuK81fTvpA0EC3Rlc3Rjb250ZXh0
-----END SSL SESSION PARAMETERS-----
diff --git a/lib/libssl/test/testss b/lib/libssl/test/testss
index a5aecf4694d..da62997a5ff 100644
--- a/lib/libssl/test/testss
+++ b/lib/libssl/test/testss
@@ -1,9 +1,10 @@
#!/bin/sh
digest='-mdc2'
-reqcmd="../apps/ssleay req"
-x509cmd="../apps/ssleay x509 $digest"
-verifycmd="../apps/ssleay verify"
+reqcmd="../apps/openssl req"
+x509cmd="../apps/openssl x509 $digest"
+verifycmd="../apps/openssl verify"
+dummycnf="../apps/openssl.cnf"
CAkey="keyCA.ss"
CAcert="certCA.ss"
@@ -39,13 +40,13 @@ if [ $? != 0 ]; then
exit 1
fi
-$reqcmd -verify -in $CAreq -noout
+$reqcmd -config $dummycnf -verify -in $CAreq -noout
if [ $? != 0 ]; then
echo first generated request is invalid
exit 1
fi
-$reqcmd -verify -in $CAreq2 -noout
+$reqcmd -config $dummycnf -verify -in $CAreq2 -noout
if [ $? != 0 ]; then
echo second generated request is invalid
exit 1
diff --git a/lib/libssl/test/testss.com b/lib/libssl/test/testss.com
new file mode 100644
index 00000000000..ce2c4b43f66
--- /dev/null
+++ b/lib/libssl/test/testss.com
@@ -0,0 +1,105 @@
+$! TESTSS.COM
+$
+$ __arch := VAX
+$ if f$getsyi("cpu") .ge. 128 then __arch := AXP
+$ exe_dir := sys$disk:[-.'__arch'.exe.apps]
+$
+$ digest="-mdc2"
+$ reqcmd := mcr 'exe_dir'openssl req
+$ x509cmd := mcr 'exe_dir'openssl x509 'digest'
+$ verifycmd := mcr 'exe_dir'openssl verify
+$ dummycnf := sys$disk:[-.apps]openssl-vms.cnf
+$
+$ CAkey="""keyCA.ss"""
+$ CAcert="""certCA.ss"""
+$ CAreq="""reqCA.ss"""
+$ CAconf="""CAss.cnf"""
+$ CAreq2="""req2CA.ss""" ! temp
+$
+$ Uconf="""Uss.cnf"""
+$ Ukey="""keyU.ss"""
+$ Ureq="""reqU.ss"""
+$ Ucert="""certU.ss"""
+$
+$ write sys$output ""
+$ write sys$output "make a certificate request using 'req'"
+$ 'reqcmd' -config 'CAconf' -out 'CAreq' -keyout 'CAkey' -new ! -out err.ss
+$ if $severity .ne. 1
+$ then
+$ write sys$output "error using 'req' to generate a certificate request"
+$ exit 3
+$ endif
+$ write sys$output ""
+$ write sys$output "convert the certificate request into a self signed certificate using 'x509'"
+$ define /user sys$output err.ss
+$ 'x509cmd' "-CAcreateserial" -in 'CAreq' -days 30 -req -out 'CAcert' -signkey 'CAkey'
+$ if $severity .ne. 1
+$ then
+$ write sys$output "error using 'x509' to self sign a certificate request"
+$ exit 3
+$ endif
+$
+$ write sys$output ""
+$ write sys$output "convert a certificate into a certificate request using 'x509'"
+$ define /user sys$output err.ss
+$ 'x509cmd' -in 'CAcert' -x509toreq -signkey 'CAkey' -out 'CAreq2'
+$ if $severity .ne. 1
+$ then
+$ write sys$output "error using 'x509' convert a certificate to a certificate request"
+$ exit 3
+$ endif
+$
+$ 'reqcmd' -config 'dummycnf' -verify -in 'CAreq' -noout
+$ if $severity .ne. 1
+$ then
+$ write sys$output "first generated request is invalid"
+$ exit 3
+$ endif
+$
+$ 'reqcmd' -config 'dummycnf' -verify -in 'CAreq2' -noout
+$ if $severity .ne. 1
+$ then
+$ write sys$output "second generated request is invalid"
+$ exit 3
+$ endif
+$
+$ 'verifycmd' "-CAfile" 'CAcert' 'CAcert'
+$ if $severity .ne. 1
+$ then
+$ write sys$output "first generated cert is invalid"
+$ exit 3
+$ endif
+$
+$ write sys$output ""
+$ write sys$output "make another certificate request using 'req'"
+$ define /user sys$output err.ss
+$ 'reqcmd' -config 'Uconf' -out 'Ureq' -keyout 'Ukey' -new
+$ if $severity .ne. 1
+$ then
+$ write sys$output "error using 'req' to generate a certificate request"
+$ exit 3
+$ endif
+$
+$ write sys$output ""
+$ write sys$output "sign certificate request with the just created CA via 'x509'"
+$ define /user sys$output err.ss
+$ 'x509cmd' "-CAcreateserial" -in 'Ureq' -days 30 -req -out 'Ucert' "-CA" 'CAcert' "-CAkey" 'CAkey'
+$ if $severity .ne. 1
+$ then
+$ write sys$output "error using 'x509' to sign a certificate request"
+$ exit 3
+$ endif
+$
+$ 'verifycmd' "-CAfile" 'CAcert' 'Ucert'
+$ write sys$output ""
+$ write sys$output "Certificate details"
+$ 'x509cmd' -subject -issuer -startdate -enddate -noout -in 'Ucert'
+$
+$ write sys$output ""
+$ write sys$output "The generated CA certificate is ",CAcert
+$ write sys$output "The generated CA private key is ",CAkey
+$
+$ write sys$output "The generated user certificate is ",Ucert
+$ write sys$output "The generated user private key is ",Ukey
+$
+$ if f$search("err.ss;*") .nes. "" then delete err.ss;*
diff --git a/lib/libssl/test/testssl b/lib/libssl/test/testssl
index f115adb8e11..255ae5e9768 100644
--- a/lib/libssl/test/testssl
+++ b/lib/libssl/test/testssl
@@ -36,5 +36,40 @@ echo test sslv2/sslv3 with client authentication
echo test sslv2/sslv3 with both client and server authentication
./ssltest -server_auth -client_auth -CApath ../certs || exit 1
-exit 0
+echo test sslv2 via BIO pair
+./ssltest -bio_pair -ssl2 || exit 1
+
+echo test sslv2 with server authentication via BIO pair
+./ssltest -bio_pair -ssl2 -server_auth -CApath ../certs || exit 1
+
+echo test sslv2 with client authentication via BIO pair
+./ssltest -bio_pair -ssl2 -client_auth -CApath ../certs || exit 1
+
+echo test sslv2 with both client and server authentication via BIO pair
+./ssltest -bio_pair -ssl2 -server_auth -client_auth -CApath ../certs || exit 1
+
+echo test sslv3 via BIO pair
+./ssltest -bio_pair -ssl3 || exit 1
+
+echo test sslv3 with server authentication via BIO pair
+./ssltest -bio_pair -ssl3 -server_auth -CApath ../certs || exit 1
+
+echo test sslv3 with client authentication via BIO pair
+./ssltest -bio_pair -ssl3 -client_auth -CApath ../certs || exit 1
+
+echo test sslv3 with both client and server authentication via BIO pair
+./ssltest -bio_pair -ssl3 -server_auth -client_auth -CApath ../certs || exit 1
+echo test sslv2/sslv3 via BIO pair
+./ssltest || exit 1
+
+echo test sslv2/sslv3 with server authentication
+./ssltest -bio_pair -server_auth -CApath ../certs || exit 1
+
+echo test sslv2/sslv3 with client authentication via BIO pair
+./ssltest -bio_pair -client_auth -CApath ../certs || exit 1
+
+echo test sslv2/sslv3 with both client and server authentication via BIO pair
+./ssltest -bio_pair -server_auth -client_auth -CApath ../certs || exit 1
+
+exit 0
diff --git a/lib/libssl/test/testssl.com b/lib/libssl/test/testssl.com
new file mode 100644
index 00000000000..93a9aef8026
--- /dev/null
+++ b/lib/libssl/test/testssl.com
@@ -0,0 +1,111 @@
+$! TESTSSL.COM
+$
+$ __arch := VAX
+$ if f$getsyi("cpu") .ge. 128 then __arch := AXP
+$ exe_dir := sys$disk:[-.'__arch'.exe.test]
+$
+$ copy/concatenate [-.certs]*.pem certs.tmp
+$
+$ write sys$output "test sslv2"
+$ mcr 'exe_dir'ssltest -ssl2
+$ if $severity .ne. 1 then goto exit3
+$
+$ write sys$output "test sslv2 with server authentication"
+$ mcr 'exe_dir'ssltest -ssl2 -server_auth "-CAfile" certs.tmp
+$ if $severity .ne. 1 then goto exit3
+$
+$ write sys$output "test sslv2 with client authentication"
+$ mcr 'exe_dir'ssltest -ssl2 -client_auth "-CAfile" certs.tmp
+$ if $severity .ne. 1 then goto exit3
+$
+$ write sys$output "test sslv2 with both client and server authentication"
+$ mcr 'exe_dir'ssltest -ssl2 -server_auth -client_auth "-CAfile" certs.tmp
+$ if $severity .ne. 1 then goto exit3
+$
+$ write sys$output "test sslv3"
+$ mcr 'exe_dir'ssltest -ssl3
+$ if $severity .ne. 1 then goto exit3
+$
+$ write sys$output "test sslv3 with server authentication"
+$ mcr 'exe_dir'ssltest -ssl3 -server_auth "-CAfile" certs.tmp
+$ if $severity .ne. 1 then goto exit3
+$
+$ write sys$output "test sslv3 with client authentication"
+$ mcr 'exe_dir'ssltest -ssl3 -client_auth "-CAfile" certs.tmp
+$ if $severity .ne. 1 then goto exit3
+$
+$ write sys$output "test sslv3 with both client and server authentication"
+$ mcr 'exe_dir'ssltest -ssl3 -server_auth -client_auth "-CAfile" certs.tmp
+$ if $severity .ne. 1 then goto exit3
+$
+$ write sys$output "test sslv2/sslv3"
+$ mcr 'exe_dir'ssltest
+$ if $severity .ne. 1 then goto exit3
+$
+$ write sys$output "test sslv2/sslv3 with server authentication"
+$ mcr 'exe_dir'ssltest -server_auth "-CAfile" certs.tmp
+$ if $severity .ne. 1 then goto exit3
+$
+$ write sys$output "test sslv2/sslv3 with client authentication"
+$ mcr 'exe_dir'ssltest -client_auth "-CAfile" certs.tmp
+$ if $severity .ne. 1 then goto exit3
+$
+$ write sys$output "test sslv2/sslv3 with both client and server authentication"
+$ mcr 'exe_dir'ssltest -server_auth -client_auth "-CAfile" certs.tmp
+$ if $severity .ne. 1 then goto exit3
+$
+$ write sys$output "test sslv2 via BIO pair"
+$ mcr 'exe_dir'ssltest -bio_pair -ssl2
+$ if $severity .ne. 1 then goto exit3
+$
+$ write sys$output "test sslv2 with server authentication via BIO pair"
+$ mcr 'exe_dir'ssltest -bio_pair -ssl2 -server_auth "-CAfile" certs.tmp
+$ if $severity .ne. 1 then goto exit3
+$
+$ write sys$output "test sslv2 with client authentication via BIO pair"
+$ mcr 'exe_dir'ssltest -bio_pair -ssl2 -client_auth "-CAfile" certs.tmp
+$ if $severity .ne. 1 then goto exit3
+$
+$ write sys$output "test sslv2 with both client and server authentication via BIO pair"
+$ mcr 'exe_dir'ssltest -bio_pair -ssl2 -server_auth -client_auth "-CAfile" certs.tmp
+$ if $severity .ne. 1 then goto exit3
+$
+$ write sys$output "test sslv3 via BIO pair"
+$ mcr 'exe_dir'ssltest -bio_pair -ssl3
+$ if $severity .ne. 1 then goto exit3
+$
+$ write sys$output "test sslv3 with server authentication via BIO pair"
+$ mcr 'exe_dir'ssltest -bio_pair -ssl3 -server_auth "-CAfile" certs.tmp
+$ if $severity .ne. 1 then goto exit3
+$
+$ write sys$output "test sslv3 with client authentication via BIO pair"
+$ mcr 'exe_dir'ssltest -bio_pair -ssl3 -client_auth "-CAfile" certs.tmp
+$ if $severity .ne. 1 then goto exit3
+
+$ write sys$output "test sslv3 with both client and server authentication via BIO pair"
+$ mcr 'exe_dir'ssltest -bio_pair -ssl3 -server_auth -client_auth "-CAfile" certs.tmp
+$ if $severity .ne. 1 then goto exit3
+$
+$ write sys$output "test sslv2/sslv3 via BIO pair"
+$ mcr 'exe_dir'ssltest
+$ if $severity .ne. 1 then goto exit3
+$
+$ write sys$output "test sslv2/sslv3 with server authentication"
+$ mcr 'exe_dir'ssltest -bio_pair -server_auth "-CAfile" certs.tmp
+$ if $severity .ne. 1 then goto exit3
+$
+$ write sys$output "test sslv2/sslv3 with client authentication via BIO pair"
+$ mcr 'exe_dir'ssltest -bio_pair -client_auth "-CAfile" certs.tmp
+$ if $severity .ne. 1 then goto exit3
+$
+$ write sys$output "test sslv2/sslv3 with both client and server authentication via BIO pair"
+$ mcr 'exe_dir'ssltest -bio_pair -server_auth -client_auth "-CAfile" certs.tmp
+$ if $severity .ne. 1 then goto exit3
+$
+$ RET = 1
+$ goto exit
+$ exit3:
+$ RET = 3
+$ exit:
+$ delete certs.tmp;*
+$ exit 'RET'
diff --git a/lib/libssl/test/tpkcs7 b/lib/libssl/test/tpkcs7
index ea1f005dacf..15bbba42c05 100644
--- a/lib/libssl/test/tpkcs7
+++ b/lib/libssl/test/tpkcs7
@@ -3,7 +3,7 @@
PATH=../apps:$PATH
export PATH
-cmd='../apps/ssleay pkcs7'
+cmd='../apps/openssl pkcs7'
if [ "$1"x != "x" ]; then
t=$1
diff --git a/lib/libssl/test/tpkcs7.com b/lib/libssl/test/tpkcs7.com
new file mode 100644
index 00000000000..5ed920ac345
--- /dev/null
+++ b/lib/libssl/test/tpkcs7.com
@@ -0,0 +1,49 @@
+$! TPKCS7.COM -- Tests pkcs7 keys
+$
+$ __arch := VAX
+$ if f$getsyi("cpu") .ge. 128 then __arch := AXP
+$ exe_dir := sys$disk:[-.'__arch'.exe.apps]
+$
+$ cmd := mcr 'exe_dir'openssl pkcs7
+$
+$ t := testp7.pem
+$ if p1 .nes. "" then t = p1
+$
+$ write sys$output "testing PKCS7 conversions"
+$ copy 't' fff.p
+$
+$ write sys$output "p -> d"
+$ 'cmd' -in fff.p -inform p -outform d -out f.d
+$ if $severity .ne. 1 then exit 3
+$ write sys$output "p -> p"
+$ 'cmd' -in fff.p -inform p -outform p -out f.p
+$ if $severity .ne. 1 then exit 3
+$
+$ write sys$output "d -> d"
+$ 'cmd' -in f.d -inform d -outform d -out ff.d1
+$ if $severity .ne. 1 then exit 3
+$ write sys$output "p -> d"
+$ 'cmd' -in f.p -inform p -outform d -out ff.d3
+$ if $severity .ne. 1 then exit 3
+$
+$
+$ write sys$output "d -> p"
+$ 'cmd' -in f.d -inform d -outform p -out ff.p1
+$ if $severity .ne. 1 then exit 3
+$ write sys$output "p -> p"
+$ 'cmd' -in f.p -inform p -outform p -out ff.p3
+$ if $severity .ne. 1 then exit 3
+$
+$ difference/output=nl: fff.p f.p
+$ if $severity .ne. 1 then exit 3
+$ difference/output=nl: fff.p ff.p1
+$ if $severity .ne. 1 then exit 3
+$ difference/output=nl: fff.p ff.p3
+$ if $severity .ne. 1 then exit 3
+$
+$ difference/output=nl: f.p ff.p1
+$ if $severity .ne. 1 then exit 3
+$ difference/output=nl: f.p ff.p3
+$ if $severity .ne. 1 then exit 3
+$
+$ delete f.*;*,ff.*;*,fff.*;*
diff --git a/lib/libssl/test/tpkcs7d b/lib/libssl/test/tpkcs7d
index c8f18fb09c1..46e5aa2bd6e 100644
--- a/lib/libssl/test/tpkcs7d
+++ b/lib/libssl/test/tpkcs7d
@@ -3,7 +3,7 @@
PATH=../apps:$PATH
export PATH
-cmd='../apps/ssleay pkcs7'
+cmd='../apps/openssl pkcs7'
if [ "$1"x != "x" ]; then
t=$1
@@ -11,7 +11,7 @@ else
t=pkcs7-1.pem
fi
-echo testing pkcs7 conversions
+echo "testing pkcs7 conversions (2)"
cp $t fff.p
echo "p -> d"
diff --git a/lib/libssl/test/tpkcs7d.com b/lib/libssl/test/tpkcs7d.com
new file mode 100644
index 00000000000..08d33eaa690
--- /dev/null
+++ b/lib/libssl/test/tpkcs7d.com
@@ -0,0 +1,42 @@
+$! TPKCS7.COM -- Tests pkcs7 keys
+$
+$ __arch := VAX
+$ if f$getsyi("cpu") .ge. 128 then __arch := AXP
+$ exe_dir := sys$disk:[-.'__arch'.exe.apps]
+$
+$ cmd := mcr 'exe_dir'openssl pkcs7
+$
+$ t := pkcs7-1.pem
+$ if p1 .nes. "" then t = p1
+$
+$ write sys$output "testing PKCS7 conversions (2)"
+$ copy 't' fff.p
+$
+$ write sys$output "p -> d"
+$ 'cmd' -in fff.p -inform p -outform d -out f.d
+$ if $severity .ne. 1 then exit 3
+$ write sys$output "p -> p"
+$ 'cmd' -in fff.p -inform p -outform p -out f.p
+$ if $severity .ne. 1 then exit 3
+$
+$ write sys$output "d -> d"
+$ 'cmd' -in f.d -inform d -outform d -out ff.d1
+$ if $severity .ne. 1 then exit 3
+$ write sys$output "p -> d"
+$ 'cmd' -in f.p -inform p -outform d -out ff.d3
+$ if $severity .ne. 1 then exit 3
+$
+$
+$ write sys$output "d -> p"
+$ 'cmd' -in f.d -inform d -outform p -out ff.p1
+$ if $severity .ne. 1 then exit 3
+$ write sys$output "p -> p"
+$ 'cmd' -in f.p -inform p -outform p -out ff.p3
+$ if $severity .ne. 1 then exit 3
+$
+$ difference/output=nl: f.p ff.p1
+$ if $severity .ne. 1 then exit 3
+$ difference/output=nl: f.p ff.p3
+$ if $severity .ne. 1 then exit 3
+$
+$ delete f.*;*,ff.*;*,fff.*;*
diff --git a/lib/libssl/test/treq b/lib/libssl/test/treq
index e5f1d8cc41f..0464c9d902f 100644
--- a/lib/libssl/test/treq
+++ b/lib/libssl/test/treq
@@ -3,7 +3,7 @@
PATH=../apps:$PATH
export PATH
-cmd='../apps/ssleay req'
+cmd='../apps/openssl req -config ../apps/openssl.cnf'
if [ "$1"x != "x" ]; then
t=$1
diff --git a/lib/libssl/test/treq.com b/lib/libssl/test/treq.com
new file mode 100644
index 00000000000..9eb1d26f6e3
--- /dev/null
+++ b/lib/libssl/test/treq.com
@@ -0,0 +1,78 @@
+$! TREQ.COM -- Tests req keys
+$
+$ __arch := VAX
+$ if f$getsyi("cpu") .ge. 128 then __arch := AXP
+$ exe_dir := sys$disk:[-.'__arch'.exe.apps]
+$
+$ cmd := mcr 'exe_dir'openssl req -config [-.apps]openssl-vms.cnf
+$
+$ t := testreq.pem
+$ if p1 .nes. "" then t = p1
+$
+$ write sys$output "testing req conversions"
+$ copy 't' fff.p
+$
+$ write sys$output "p -> d"
+$ 'cmd' -in fff.p -inform p -outform d -out f.d
+$ if $severity .ne. 1 then exit 3
+$! write sys$output "p -> t"
+$! 'cmd' -in fff.p -inform p -outform t -out f.t
+$! if $severity .ne. 1 then exit 3
+$ write sys$output "p -> p"
+$ 'cmd' -in fff.p -inform p -outform p -out f.p
+$ if $severity .ne. 1 then exit 3
+$
+$ write sys$output "d -> d"
+$ 'cmd' -verify -in f.d -inform d -outform d -out ff.d1
+$ if $severity .ne. 1 then exit 3
+$! write sys$output "t -> d"
+$! 'cmd' -verify -in f.t -inform t -outform d -out ff.d2
+$! if $severity .ne. 1 then exit 3
+$ write sys$output "p -> d"
+$ 'cmd' -verify -in f.p -inform p -outform d -out ff.d3
+$ if $severity .ne. 1 then exit 3
+$
+$! write sys$output "d -> t"
+$! 'cmd' -in f.d -inform d -outform t -out ff.t1
+$! if $severity .ne. 1 then exit 3
+$! write sys$output "t -> t"
+$! 'cmd' -in f.t -inform t -outform t -out ff.t2
+$! if $severity .ne. 1 then exit 3
+$! write sys$output "p -> t"
+$! 'cmd' -in f.p -inform p -outform t -out ff.t3
+$! if $severity .ne. 1 then exit 3
+$
+$ write sys$output "d -> p"
+$ 'cmd' -in f.d -inform d -outform p -out ff.p1
+$ if $severity .ne. 1 then exit 3
+$! write sys$output "t -> p"
+$! 'cmd' -in f.t -inform t -outform p -out ff.p2
+$! if $severity .ne. 1 then exit 3
+$ write sys$output "p -> p"
+$ 'cmd' -in f.p -inform p -outform p -out ff.p3
+$ if $severity .ne. 1 then exit 3
+$
+$ difference/output=nl: fff.p f.p
+$ if $severity .ne. 1 then exit 3
+$ difference/output=nl: fff.p ff.p1
+$ if $severity .ne. 1 then exit 3
+$! difference/output=nl: fff.p ff.p2
+$! if $severity .ne. 1 then exit 3
+$ difference/output=nl: fff.p ff.p3
+$ if $severity .ne. 1 then exit 3
+$
+$! difference/output=nl: f.t ff.t1
+$! if $severity .ne. 1 then exit 3
+$! difference/output=nl: f.t ff.t2
+$! if $severity .ne. 1 then exit 3
+$! difference/output=nl: f.t ff.t3
+$! if $severity .ne. 1 then exit 3
+$
+$ difference/output=nl: f.p ff.p1
+$ if $severity .ne. 1 then exit 3
+$! difference/output=nl: f.p ff.p2
+$! if $severity .ne. 1 then exit 3
+$ difference/output=nl: f.p ff.p3
+$ if $severity .ne. 1 then exit 3
+$
+$ delete f.*;*,ff.*;*,fff.*;*
diff --git a/lib/libssl/test/trsa b/lib/libssl/test/trsa
index e5b8fe0448e..d6a4dd826d7 100644
--- a/lib/libssl/test/trsa
+++ b/lib/libssl/test/trsa
@@ -3,7 +3,7 @@
PATH=../apps:$PATH
export PATH
-cmd='../apps/ssleay rsa'
+cmd='../apps/openssl rsa'
if [ "$1"x != "x" ]; then
t=$1
diff --git a/lib/libssl/test/trsa.com b/lib/libssl/test/trsa.com
new file mode 100644
index 00000000000..9c9083d02b8
--- /dev/null
+++ b/lib/libssl/test/trsa.com
@@ -0,0 +1,78 @@
+$! TRSA.COM -- Tests rsa keys
+$
+$ __arch := VAX
+$ if f$getsyi("cpu") .ge. 128 then __arch := AXP
+$ exe_dir := sys$disk:[-.'__arch'.exe.apps]
+$
+$ cmd := mcr 'exe_dir'openssl rsa
+$
+$ t := testrsa.pem
+$ if p1 .nes. "" then t = p1
+$
+$ write sys$output "testing RSA conversions"
+$ copy 't' fff.p
+$
+$ write sys$output "p -> d"
+$ 'cmd' -in fff.p -inform p -outform d -out f.d
+$ if $severity .ne. 1 then exit 3
+$! write sys$output "p -> t"
+$! 'cmd' -in fff.p -inform p -outform t -out f.t
+$! if $severity .ne. 1 then exit 3
+$ write sys$output "p -> p"
+$ 'cmd' -in fff.p -inform p -outform p -out f.p
+$ if $severity .ne. 1 then exit 3
+$
+$ write sys$output "d -> d"
+$ 'cmd' -in f.d -inform d -outform d -out ff.d1
+$ if $severity .ne. 1 then exit 3
+$! write sys$output "t -> d"
+$! 'cmd' -in f.t -inform t -outform d -out ff.d2
+$! if $severity .ne. 1 then exit 3
+$ write sys$output "p -> d"
+$ 'cmd' -in f.p -inform p -outform d -out ff.d3
+$ if $severity .ne. 1 then exit 3
+$
+$! write sys$output "d -> t"
+$! 'cmd' -in f.d -inform d -outform t -out ff.t1
+$! if $severity .ne. 1 then exit 3
+$! write sys$output "t -> t"
+$! 'cmd' -in f.t -inform t -outform t -out ff.t2
+$! if $severity .ne. 1 then exit 3
+$! write sys$output "p -> t"
+$! 'cmd' -in f.p -inform p -outform t -out ff.t3
+$! if $severity .ne. 1 then exit 3
+$
+$ write sys$output "d -> p"
+$ 'cmd' -in f.d -inform d -outform p -out ff.p1
+$ if $severity .ne. 1 then exit 3
+$! write sys$output "t -> p"
+$! 'cmd' -in f.t -inform t -outform p -out ff.p2
+$! if $severity .ne. 1 then exit 3
+$ write sys$output "p -> p"
+$ 'cmd' -in f.p -inform p -outform p -out ff.p3
+$ if $severity .ne. 1 then exit 3
+$
+$ difference/output=nl: fff.p f.p
+$ if $severity .ne. 1 then exit 3
+$ difference/output=nl: fff.p ff.p1
+$ if $severity .ne. 1 then exit 3
+$! difference/output=nl: fff.p ff.p2
+$! if $severity .ne. 1 then exit 3
+$ difference/output=nl: fff.p ff.p3
+$ if $severity .ne. 1 then exit 3
+$
+$! difference/output=nl: f.t ff.t1
+$! if $severity .ne. 1 then exit 3
+$! difference/output=nl: f.t ff.t2
+$! if $severity .ne. 1 then exit 3
+$! difference/output=nl: f.t ff.t3
+$! if $severity .ne. 1 then exit 3
+$
+$ difference/output=nl: f.p ff.p1
+$ if $severity .ne. 1 then exit 3
+$! difference/output=nl: f.p ff.p2
+$! if $severity .ne. 1 then exit 3
+$ difference/output=nl: f.p ff.p3
+$ if $severity .ne. 1 then exit 3
+$
+$ delete f.*;*,ff.*;*,fff.*;*
diff --git a/lib/libssl/test/tsid b/lib/libssl/test/tsid
index 8c7e9b1387b..9e0854516ca 100644
--- a/lib/libssl/test/tsid
+++ b/lib/libssl/test/tsid
@@ -3,7 +3,7 @@
PATH=../apps:$PATH
export PATH
-cmd='../apps/ssleay sess_id'
+cmd='../apps/openssl sess_id'
if [ "$1"x != "x" ]; then
t=$1
diff --git a/lib/libssl/test/tsid.com b/lib/libssl/test/tsid.com
new file mode 100644
index 00000000000..28d83e5c4ed
--- /dev/null
+++ b/lib/libssl/test/tsid.com
@@ -0,0 +1,78 @@
+$! TSID.COM -- Tests sid keys
+$
+$ __arch := VAX
+$ if f$getsyi("cpu") .ge. 128 then __arch := AXP
+$ exe_dir := sys$disk:[-.'__arch'.exe.apps]
+$
+$ cmd := mcr 'exe_dir'openssl sess_id
+$
+$ t := testsid.pem
+$ if p1 .nes. "" then t = p1
+$
+$ write sys$output "testing session-id conversions"
+$ copy 't' fff.p
+$
+$ write sys$output "p -> d"
+$ 'cmd' -in fff.p -inform p -outform d -out f.d
+$ if $severity .ne. 1 then exit 3
+$! write sys$output "p -> t"
+$! 'cmd' -in fff.p -inform p -outform t -out f.t
+$! if $severity .ne. 1 then exit 3
+$ write sys$output "p -> p"
+$ 'cmd' -in fff.p -inform p -outform p -out f.p
+$ if $severity .ne. 1 then exit 3
+$
+$ write sys$output "d -> d"
+$ 'cmd' -in f.d -inform d -outform d -out ff.d1
+$ if $severity .ne. 1 then exit 3
+$! write sys$output "t -> d"
+$! 'cmd' -in f.t -inform t -outform d -out ff.d2
+$! if $severity .ne. 1 then exit 3
+$ write sys$output "p -> d"
+$ 'cmd' -in f.p -inform p -outform d -out ff.d3
+$ if $severity .ne. 1 then exit 3
+$
+$! write sys$output "d -> t"
+$! 'cmd' -in f.d -inform d -outform t -out ff.t1
+$! if $severity .ne. 1 then exit 3
+$! write sys$output "t -> t"
+$! 'cmd' -in f.t -inform t -outform t -out ff.t2
+$! if $severity .ne. 1 then exit 3
+$! write sys$output "p -> t"
+$! 'cmd' -in f.p -inform p -outform t -out ff.t3
+$! if $severity .ne. 1 then exit 3
+$
+$ write sys$output "d -> p"
+$ 'cmd' -in f.d -inform d -outform p -out ff.p1
+$ if $severity .ne. 1 then exit 3
+$! write sys$output "t -> p"
+$! 'cmd' -in f.t -inform t -outform p -out ff.p2
+$! if $severity .ne. 1 then exit 3
+$ write sys$output "p -> p"
+$ 'cmd' -in f.p -inform p -outform p -out ff.p3
+$ if $severity .ne. 1 then exit 3
+$
+$ difference/output=nl: fff.p f.p
+$ if $severity .ne. 1 then exit 3
+$ difference/output=nl: fff.p ff.p1
+$ if $severity .ne. 1 then exit 3
+$! difference/output=nl: fff.p ff.p2
+$! if $severity .ne. 1 then exit 3
+$ difference/output=nl: fff.p ff.p3
+$ if $severity .ne. 1 then exit 3
+$
+$! difference/output=nl: f.t ff.t1
+$! if $severity .ne. 1 then exit 3
+$! difference/output=nl: f.t ff.t2
+$! if $severity .ne. 1 then exit 3
+$! difference/output=nl: f.t ff.t3
+$! if $severity .ne. 1 then exit 3
+$
+$ difference/output=nl: f.p ff.p1
+$ if $severity .ne. 1 then exit 3
+$! difference/output=nl: f.p ff.p2
+$! if $severity .ne. 1 then exit 3
+$ difference/output=nl: f.p ff.p3
+$ if $severity .ne. 1 then exit 3
+$
+$ delete f.*;*,ff.*;*,fff.*;*
diff --git a/lib/libssl/test/tverify.com b/lib/libssl/test/tverify.com
new file mode 100644
index 00000000000..f97e71478f0
--- /dev/null
+++ b/lib/libssl/test/tverify.com
@@ -0,0 +1,26 @@
+$! TVERIFY.COM
+$
+$ __arch := VAX
+$ if f$getsyi("cpu") .ge. 128 then __arch := AXP
+$ exe_dir := sys$disk:[-.'__arch'.exe.apps]
+$
+$ copy/concatenate [-.certs]*.pem certs.tmp
+$
+$ old_f :=
+$ loop_certs:
+$ c := NO
+$ certs :=
+$ loop_certs2:
+$ f = f$search("[-.certs]*.pem")
+$ if f .nes. "" .and. f .nes. old_f
+$ then
+$ certs = certs + " [-.certs]" + f$parse(f,,,"NAME") + ".pem"
+$ if f$length(certs) .lt. 180 then goto loop_certs2
+$ c := YES
+$ endif
+$ certs = certs - " "
+$
+$ mcr 'exe_dir'openssl verify "-CAfile" certs.tmp 'certs'
+$ if c then goto loop_certs
+$
+$ delete certs.tmp;*
diff --git a/lib/libssl/test/tx509 b/lib/libssl/test/tx509
index f8d1f82cdd2..35169f3a438 100644
--- a/lib/libssl/test/tx509
+++ b/lib/libssl/test/tx509
@@ -3,7 +3,7 @@
PATH=../apps:$PATH
export PATH
-cmd='../apps/ssleay x509'
+cmd='../apps/openssl x509'
if [ "$1"x != "x" ]; then
t=$1
diff --git a/lib/libssl/test/tx509.com b/lib/libssl/test/tx509.com
new file mode 100644
index 00000000000..bbcf0a384b3
--- /dev/null
+++ b/lib/libssl/test/tx509.com
@@ -0,0 +1,78 @@
+$! TX509.COM -- Tests x509 certificates
+$
+$ __arch := VAX
+$ if f$getsyi("cpu") .ge. 128 then __arch := AXP
+$ exe_dir := sys$disk:[-.'__arch'.exe.apps]
+$
+$ cmd := mcr 'exe_dir'openssl x509
+$
+$ t := testx509.pem
+$ if p1 .nes. "" then t = p1
+$
+$ write sys$output "testing X509 conversions"
+$ copy 't' fff.p
+$
+$ write sys$output "p -> d"
+$ 'cmd' -in fff.p -inform p -outform d -out f.d
+$ if $severity .ne. 1 then exit 3
+$ write sys$output "p -> n"
+$ 'cmd' -in fff.p -inform p -outform n -out f.n
+$ if $severity .ne. 1 then exit 3
+$ write sys$output "p -> p"
+$ 'cmd' -in fff.p -inform p -outform p -out f.p
+$ if $severity .ne. 1 then exit 3
+$
+$ write sys$output "d -> d"
+$ 'cmd' -in f.d -inform d -outform d -out ff.d1
+$ if $severity .ne. 1 then exit 3
+$ write sys$output "n -> d"
+$ 'cmd' -in f.n -inform n -outform d -out ff.d2
+$ if $severity .ne. 1 then exit 3
+$ write sys$output "p -> d"
+$ 'cmd' -in f.p -inform p -outform d -out ff.d3
+$ if $severity .ne. 1 then exit 3
+$
+$ write sys$output "d -> n"
+$ 'cmd' -in f.d -inform d -outform n -out ff.n1
+$ if $severity .ne. 1 then exit 3
+$ write sys$output "n -> n"
+$ 'cmd' -in f.n -inform n -outform n -out ff.n2
+$ if $severity .ne. 1 then exit 3
+$ write sys$output "p -> n"
+$ 'cmd' -in f.p -inform p -outform n -out ff.n3
+$ if $severity .ne. 1 then exit 3
+$
+$ write sys$output "d -> p"
+$ 'cmd' -in f.d -inform d -outform p -out ff.p1
+$ if $severity .ne. 1 then exit 3
+$ write sys$output "n -> p"
+$ 'cmd' -in f.n -inform n -outform p -out ff.p2
+$ if $severity .ne. 1 then exit 3
+$ write sys$output "p -> p"
+$ 'cmd' -in f.p -inform p -outform p -out ff.p3
+$ if $severity .ne. 1 then exit 3
+$
+$ difference/output=nl: fff.p f.p
+$ if $severity .ne. 1 then exit 3
+$ difference/output=nl: fff.p ff.p1
+$ if $severity .ne. 1 then exit 3
+$ difference/output=nl: fff.p ff.p2
+$ if $severity .ne. 1 then exit 3
+$ difference/output=nl: fff.p ff.p3
+$ if $severity .ne. 1 then exit 3
+$
+$ difference/output=nl: f.n ff.n1
+$ if $severity .ne. 1 then exit 3
+$ difference/output=nl: f.n ff.n2
+$ if $severity .ne. 1 then exit 3
+$ difference/output=nl: f.n ff.n3
+$ if $severity .ne. 1 then exit 3
+$
+$ difference/output=nl: f.p ff.p1
+$ if $severity .ne. 1 then exit 3
+$ difference/output=nl: f.p ff.p2
+$ if $severity .ne. 1 then exit 3
+$ difference/output=nl: f.p ff.p3
+$ if $severity .ne. 1 then exit 3
+$
+$ delete f.*;*,ff.*;*,fff.*;*