2000-06-15 02:44:19 +04:00
|
|
|
$! TESTSSL.COM
|
|
|
|
$
|
|
|
|
$ __arch := VAX
|
|
|
|
$ if f$getsyi("cpu") .ge. 128 then __arch := AXP
|
2000-07-16 09:03:53 +04:00
|
|
|
$ texe_dir := sys$disk:[-.'__arch'.exe.test]
|
|
|
|
$ exe_dir := sys$disk:[-.'__arch'.exe.apps]
|
|
|
|
$
|
|
|
|
$ if p1 .eqs. ""
|
|
|
|
$ then
|
|
|
|
$ key="[-.apps]server.pem"
|
|
|
|
$ else
|
|
|
|
$ key=p1
|
|
|
|
$ endif
|
|
|
|
$ if p2 .eqs. ""
|
|
|
|
$ then
|
|
|
|
$ cert="[-.apps]server.pem"
|
|
|
|
$ else
|
|
|
|
$ cert=p2
|
|
|
|
$ endif
|
|
|
|
$ ssltest := mcr 'texe_dir'ssltest -key 'key' -cert 'cert' -c_key 'key' -c_cert 'cert'
|
|
|
|
$
|
|
|
|
$ define/user sys$output testssl-x509-output.
|
|
|
|
$ define/user sys$error nla0:
|
|
|
|
$ mcr 'exe_dir'openssl x509 -in 'cert' -text -noout
|
|
|
|
$ set noon
|
|
|
|
$ define/user sys$error nla0:
|
|
|
|
$ search/output=nla0: testssl-x509-output. "DSA Public Key"/exact
|
|
|
|
$ if $severity .eq. 1
|
|
|
|
$ then
|
|
|
|
$ dsa_cert := YES
|
|
|
|
$ else
|
|
|
|
$ dsa_cert := NO
|
|
|
|
$ endif
|
|
|
|
$ set on
|
|
|
|
$ delete testssl-x509-output.;*
|
|
|
|
$
|
|
|
|
$ if p3 .eqs. ""
|
|
|
|
$ then
|
|
|
|
$ copy/concatenate [-.certs]*.pem certs.tmp
|
|
|
|
$ CA = """-CAfile"" certs.tmp"
|
|
|
|
$ else
|
|
|
|
$ CA = """-CAfile"" "+p3
|
|
|
|
$ endif
|
|
|
|
$
|
|
|
|
$!###########################################################################
|
2000-06-15 02:44:19 +04:00
|
|
|
$
|
|
|
|
$ write sys$output "test sslv2"
|
2000-07-16 09:03:53 +04:00
|
|
|
$ 'ssltest' -ssl2
|
2000-06-15 02:44:19 +04:00
|
|
|
$ if $severity .ne. 1 then goto exit3
|
|
|
|
$
|
|
|
|
$ write sys$output "test sslv2 with server authentication"
|
2000-07-16 09:03:53 +04:00
|
|
|
$ 'ssltest' -ssl2 -server_auth 'CA'
|
2000-06-15 02:44:19 +04:00
|
|
|
$ if $severity .ne. 1 then goto exit3
|
|
|
|
$
|
2000-07-16 09:03:53 +04:00
|
|
|
$ if .not. dsa_cert
|
|
|
|
$ then
|
|
|
|
$ write sys$output "test sslv2 with client authentication"
|
|
|
|
$ 'ssltest' -ssl2 -client_auth 'CA'
|
|
|
|
$ if $severity .ne. 1 then goto exit3
|
2000-06-15 02:44:19 +04:00
|
|
|
$
|
2000-07-16 09:03:53 +04:00
|
|
|
$ write sys$output "test sslv2 with both client and server authentication"
|
|
|
|
$ 'ssltest' -ssl2 -server_auth -client_auth 'CA'
|
|
|
|
$ if $severity .ne. 1 then goto exit3
|
|
|
|
$ endif
|
2000-06-15 02:44:19 +04:00
|
|
|
$
|
|
|
|
$ write sys$output "test sslv3"
|
2000-07-16 09:03:53 +04:00
|
|
|
$ 'ssltest' -ssl3
|
2000-06-15 02:44:19 +04:00
|
|
|
$ if $severity .ne. 1 then goto exit3
|
|
|
|
$
|
|
|
|
$ write sys$output "test sslv3 with server authentication"
|
2000-07-16 09:03:53 +04:00
|
|
|
$ 'ssltest' -ssl3 -server_auth 'CA'
|
2000-06-15 02:44:19 +04:00
|
|
|
$ if $severity .ne. 1 then goto exit3
|
|
|
|
$
|
|
|
|
$ write sys$output "test sslv3 with client authentication"
|
2000-07-16 09:03:53 +04:00
|
|
|
$ 'ssltest' -ssl3 -client_auth 'CA'
|
2000-06-15 02:44:19 +04:00
|
|
|
$ if $severity .ne. 1 then goto exit3
|
|
|
|
$
|
|
|
|
$ write sys$output "test sslv3 with both client and server authentication"
|
2000-07-16 09:03:53 +04:00
|
|
|
$ 'ssltest' -ssl3 -server_auth -client_auth 'CA'
|
2000-06-15 02:44:19 +04:00
|
|
|
$ if $severity .ne. 1 then goto exit3
|
|
|
|
$
|
|
|
|
$ write sys$output "test sslv2/sslv3"
|
2000-07-16 09:03:53 +04:00
|
|
|
$ 'ssltest'
|
2000-06-15 02:44:19 +04:00
|
|
|
$ if $severity .ne. 1 then goto exit3
|
|
|
|
$
|
|
|
|
$ write sys$output "test sslv2/sslv3 with server authentication"
|
2000-07-16 09:03:53 +04:00
|
|
|
$ 'ssltest' -server_auth 'CA'
|
2000-06-15 02:44:19 +04:00
|
|
|
$ if $severity .ne. 1 then goto exit3
|
|
|
|
$
|
|
|
|
$ write sys$output "test sslv2/sslv3 with client authentication"
|
2000-07-16 09:03:53 +04:00
|
|
|
$ 'ssltest' -client_auth 'CA'
|
2000-06-15 02:44:19 +04:00
|
|
|
$ if $severity .ne. 1 then goto exit3
|
|
|
|
$
|
|
|
|
$ write sys$output "test sslv2/sslv3 with both client and server authentication"
|
2000-07-16 09:03:53 +04:00
|
|
|
$ 'ssltest' -server_auth -client_auth 'CA'
|
2000-06-15 02:44:19 +04:00
|
|
|
$ if $severity .ne. 1 then goto exit3
|
|
|
|
$
|
|
|
|
$ write sys$output "test sslv2 via BIO pair"
|
2000-07-16 09:03:53 +04:00
|
|
|
$ 'ssltest' -bio_pair -ssl2
|
2000-06-15 02:44:19 +04:00
|
|
|
$ if $severity .ne. 1 then goto exit3
|
|
|
|
$
|
|
|
|
$ write sys$output "test sslv2 with server authentication via BIO pair"
|
2000-07-16 09:03:53 +04:00
|
|
|
$ 'ssltest' -bio_pair -ssl2 -server_auth 'CA'
|
2000-06-15 02:44:19 +04:00
|
|
|
$ if $severity .ne. 1 then goto exit3
|
|
|
|
$
|
2000-07-16 09:03:53 +04:00
|
|
|
$ if .not. dsa_cert
|
|
|
|
$ then
|
|
|
|
$ write sys$output "test sslv2 with client authentication via BIO pair"
|
|
|
|
$ 'ssltest' -bio_pair -ssl2 -client_auth 'CA'
|
|
|
|
$ if $severity .ne. 1 then goto exit3
|
2000-06-15 02:44:19 +04:00
|
|
|
$
|
2000-07-16 09:03:53 +04:00
|
|
|
$ write sys$output "test sslv2 with both client and server authentication via BIO pair"
|
|
|
|
$ 'ssltest' -bio_pair -ssl2 -server_auth -client_auth 'CA'
|
|
|
|
$ if $severity .ne. 1 then goto exit3
|
|
|
|
$ endif
|
2000-06-15 02:44:19 +04:00
|
|
|
$
|
|
|
|
$ write sys$output "test sslv3 via BIO pair"
|
2000-07-16 09:03:53 +04:00
|
|
|
$ 'ssltest' -bio_pair -ssl3
|
2000-06-15 02:44:19 +04:00
|
|
|
$ if $severity .ne. 1 then goto exit3
|
|
|
|
$
|
|
|
|
$ write sys$output "test sslv3 with server authentication via BIO pair"
|
2000-07-16 09:03:53 +04:00
|
|
|
$ 'ssltest' -bio_pair -ssl3 -server_auth 'CA'
|
2000-06-15 02:44:19 +04:00
|
|
|
$ if $severity .ne. 1 then goto exit3
|
|
|
|
$
|
|
|
|
$ write sys$output "test sslv3 with client authentication via BIO pair"
|
2000-07-16 09:03:53 +04:00
|
|
|
$ 'ssltest' -bio_pair -ssl3 -client_auth 'CA'
|
2000-06-15 02:44:19 +04:00
|
|
|
$ if $severity .ne. 1 then goto exit3
|
|
|
|
|
|
|
|
$ write sys$output "test sslv3 with both client and server authentication via BIO pair"
|
2000-07-16 09:03:53 +04:00
|
|
|
$ 'ssltest' -bio_pair -ssl3 -server_auth -client_auth 'CA'
|
2000-06-15 02:44:19 +04:00
|
|
|
$ if $severity .ne. 1 then goto exit3
|
|
|
|
$
|
|
|
|
$ write sys$output "test sslv2/sslv3 via BIO pair"
|
2000-07-16 09:03:53 +04:00
|
|
|
$ 'ssltest'
|
|
|
|
$ if $severity .ne. 1 then goto exit3
|
|
|
|
$
|
|
|
|
$ if .not. dsa_cert
|
|
|
|
$ then
|
|
|
|
$ write sys$output "test sslv2/sslv3 w/o DHE via BIO pair"
|
|
|
|
$ 'ssltest' -bio_pair -no_dhe
|
|
|
|
$ if $severity .ne. 1 then goto exit3
|
|
|
|
$ endif
|
|
|
|
$
|
|
|
|
$ write sys$output "test sslv2/sslv3 with 1024 bit DHE via BIO pair"
|
|
|
|
$ 'ssltest' -bio_pair -dhe1024dsa -v
|
2000-06-15 02:44:19 +04:00
|
|
|
$ if $severity .ne. 1 then goto exit3
|
|
|
|
$
|
|
|
|
$ write sys$output "test sslv2/sslv3 with server authentication"
|
2000-07-16 09:03:53 +04:00
|
|
|
$ 'ssltest' -bio_pair -server_auth 'CA'
|
2000-06-15 02:44:19 +04:00
|
|
|
$ if $severity .ne. 1 then goto exit3
|
|
|
|
$
|
|
|
|
$ write sys$output "test sslv2/sslv3 with client authentication via BIO pair"
|
2000-07-16 09:03:53 +04:00
|
|
|
$ 'ssltest' -bio_pair -client_auth 'CA'
|
2000-06-15 02:44:19 +04:00
|
|
|
$ if $severity .ne. 1 then goto exit3
|
|
|
|
$
|
|
|
|
$ write sys$output "test sslv2/sslv3 with both client and server authentication via BIO pair"
|
2000-07-16 09:03:53 +04:00
|
|
|
$ 'ssltest' -bio_pair -server_auth -client_auth 'CA'
|
|
|
|
$ if $severity .ne. 1 then goto exit3
|
|
|
|
$
|
|
|
|
$!###########################################################################
|
|
|
|
$
|
|
|
|
$ set noon
|
|
|
|
$ define/user sys$output nla0:
|
|
|
|
$ mcr 'exe_dir'openssl no-rsa
|
2003-07-24 12:25:41 +04:00
|
|
|
$ no_rsa=$SEVERITY
|
|
|
|
$ define/user sys$output nla0:
|
|
|
|
$ mcr 'exe_dir'openssl no-dh
|
|
|
|
$ no_dh=$SEVERITY
|
2000-07-16 09:03:53 +04:00
|
|
|
$ set on
|
2003-07-24 12:25:41 +04:00
|
|
|
$
|
|
|
|
$ if no_dh
|
|
|
|
$ then
|
|
|
|
$ write sys$output "skipping anonymous DH tests"
|
|
|
|
$ else
|
|
|
|
$ write sys$output "test tls1 with 1024bit anonymous DH, multiple handshakes"
|
|
|
|
$ 'ssltest' -v -bio_pair -tls1 -cipher "ADH" -dhe1024dsa -num 10 -f -time
|
|
|
|
$ if $severity .ne. 1 then goto exit3
|
|
|
|
$ endif
|
|
|
|
$
|
|
|
|
$ if no_rsa
|
2000-07-16 09:03:53 +04:00
|
|
|
$ then
|
|
|
|
$ write sys$output "skipping RSA tests"
|
|
|
|
$ else
|
|
|
|
$ write sys$output "test tls1 with 1024bit RSA, no DHE, multiple handshakes"
|
|
|
|
$ mcr 'texe_dir'ssltest -v -bio_pair -tls1 -cert [-.apps]server2.pem -no_dhe -num 10 -f -time
|
|
|
|
$ if $severity .ne. 1 then goto exit3
|
|
|
|
$
|
2003-07-24 12:25:41 +04:00
|
|
|
$ if no_dh
|
|
|
|
$ then
|
|
|
|
$ write sys$output "skipping RSA+DHE tests"
|
|
|
|
$ else
|
|
|
|
$ write sys$output "test tls1 with 1024bit RSA, 1024bit DHE, multiple handshakes"
|
|
|
|
$ mcr 'texe_dir'ssltest -v -bio_pair -tls1 -cert [-.apps]server2.pem -dhe1024dsa -num 10 -f -time
|
|
|
|
$ if $severity .ne. 1 then goto exit3
|
|
|
|
$ endif
|
2000-07-16 09:03:53 +04:00
|
|
|
$ endif
|
|
|
|
$
|
2000-06-15 02:44:19 +04:00
|
|
|
$ RET = 1
|
|
|
|
$ goto exit
|
|
|
|
$ exit3:
|
|
|
|
$ RET = 3
|
|
|
|
$ exit:
|
2000-07-16 09:03:53 +04:00
|
|
|
$ if p3 .eqs. "" then delete certs.tmp;*
|
2000-06-15 02:44:19 +04:00
|
|
|
$ exit 'RET'
|