Skip to main content
  • Home
  • login
  • Browse the archive

    swh mirror partner logo
swh logo
SoftwareHeritage
Software
Heritage
Mirror
Features
  • Search

  • Downloads

  • Save code now

  • Add forge now

  • Help

Revision 40c2812f5656b1c78fa18b14c264fd48421c2d24 authored by Adam Langley on 16 December 2014, 13:03:47 UTC, committed by Emilia Kasper on 17 December 2014, 13:04:14 UTC
Premaster secret handling fixes
From BoringSSL
- Send an alert when the client key exchange isn't correctly formatted.
- Reject overly short RSA ciphertexts to avoid a (benign) out-of-bounds memory access.

Reviewed-by: Kurt Roeckx <kurt@openssl.org>
(cherry picked from commit 4aecfd4d9f366c849c9627ab666d1b1addc024e6)
1 parent 2e3e3d2
  • Files
  • Changes
  • f41436a
  • /
  • test
  • /
  • testssl
Raw File
Cook and download a directory from the Software Heritage Vault

You have requested the cooking of the directory with identifier None into a standard tar.gz archive.

Are you sure you want to continue ?

Download a directory from the Software Heritage Vault

You have requested the download of the directory with identifier None as a standard tar.gz archive.

Are you sure you want to continue ?

Cook and download a revision from the Software Heritage Vault

You have requested the cooking of the history heading to revision with identifier swh:1:rev:40c2812f5656b1c78fa18b14c264fd48421c2d24 into a bare git archive.

Are you sure you want to continue ?

Download a revision from the Software Heritage Vault

You have requested the download of the history heading to revision with identifier swh:1:rev:40c2812f5656b1c78fa18b14c264fd48421c2d24 as a bare git archive.

Are you sure you want to continue ?

Invalid Email !

The provided email is not well-formed.

Download link has expired

The requested archive is no longer available for download from the Software Heritage Vault.

Do you want to cook it again ?

Permalinks

To reference or cite the objects present in the Software Heritage archive, permalinks based on SoftWare Hash IDentifiers (SWHIDs) must be used.
Select below a type of object currently browsed in order to display its associated SWHID and permalink.

  • revision
  • content
revision badge
swh:1:rev:40c2812f5656b1c78fa18b14c264fd48421c2d24
content badge Iframe embedding
swh:1:cnt:1497d298815655a3cbc5e47ae5429ddd9de86431
testssl
#!/bin/sh

if [ "$1" = "" ]; then
  key=../apps/server.pem
else
  key="$1"
fi
if [ "$2" = "" ]; then
  cert=../apps/server.pem
else
  cert="$2"
fi
ssltest="../util/shlib_wrap.sh ./ssltest -key $key -cert $cert -c_key $key -c_cert $cert"

if ../util/shlib_wrap.sh ../apps/openssl x509 -in $cert -text -noout | fgrep 'DSA Public Key' >/dev/null; then
  dsa_cert=YES
else
  dsa_cert=NO
fi

if [ "$3" = "" ]; then
  CA="-CApath ../certs"
else
  CA="-CAfile $3"
fi

if [ "$4" = "" ]; then
  extra=""
else
  extra="$4"
fi

#############################################################################

echo test sslv2
$ssltest -ssl2 $extra || exit 1

echo test sslv2 with server authentication
$ssltest -ssl2 -server_auth $CA $extra || exit 1

if [ $dsa_cert = NO ]; then
  echo test sslv2 with client authentication
  $ssltest -ssl2 -client_auth $CA $extra || exit 1

  echo test sslv2 with both client and server authentication
  $ssltest -ssl2 -server_auth -client_auth $CA $extra || exit 1
fi

echo test sslv3
$ssltest -ssl3 $extra || exit 1

echo test sslv3 with server authentication
$ssltest -ssl3 -server_auth $CA $extra || exit 1

echo test sslv3 with client authentication
$ssltest -ssl3 -client_auth $CA $extra || exit 1

echo test sslv3 with both client and server authentication
$ssltest -ssl3 -server_auth -client_auth $CA $extra || exit 1

echo test sslv2/sslv3
$ssltest $extra || exit 1

echo test sslv2/sslv3 with server authentication
$ssltest -server_auth $CA $extra || exit 1

echo test sslv2/sslv3 with client authentication
$ssltest -client_auth $CA $extra || exit 1

echo test sslv2/sslv3 with both client and server authentication
$ssltest -server_auth -client_auth $CA $extra || exit 1

echo test sslv2 via BIO pair
$ssltest -bio_pair -ssl2 $extra || exit 1

echo test sslv2 with server authentication via BIO pair
$ssltest -bio_pair -ssl2 -server_auth $CA $extra || exit 1

if [ $dsa_cert = NO ]; then
  echo test sslv2 with client authentication via BIO pair
  $ssltest -bio_pair -ssl2 -client_auth $CA $extra || exit 1

  echo test sslv2 with both client and server authentication via BIO pair
  $ssltest -bio_pair -ssl2 -server_auth -client_auth $CA $extra || exit 1
fi

echo test sslv3 via BIO pair
$ssltest -bio_pair -ssl3 $extra || exit 1

echo test sslv3 with server authentication via BIO pair
$ssltest -bio_pair -ssl3 -server_auth $CA $extra || exit 1

echo test sslv3 with client authentication via BIO pair
$ssltest -bio_pair -ssl3 -client_auth $CA $extra || exit 1

echo test sslv3 with both client and server authentication via BIO pair
$ssltest -bio_pair -ssl3 -server_auth -client_auth $CA $extra || exit 1

echo test sslv2/sslv3 via BIO pair
$ssltest $extra || exit 1

if [ $dsa_cert = NO ]; then
  echo 'test sslv2/sslv3 w/o (EC)DHE via BIO pair'
  $ssltest -bio_pair -no_dhe -no_ecdhe $extra || exit 1
fi

echo test sslv2/sslv3 with 1024bit DHE via BIO pair
$ssltest -bio_pair -dhe1024dsa -v $extra || exit 1

echo test sslv2/sslv3 with server authentication
$ssltest -bio_pair -server_auth $CA $extra || exit 1

echo test sslv2/sslv3 with client authentication via BIO pair
$ssltest -bio_pair -client_auth $CA $extra || exit 1

echo test sslv2/sslv3 with both client and server authentication via BIO pair
$ssltest -bio_pair -server_auth -client_auth $CA $extra || exit 1

echo test sslv2/sslv3 with both client and server authentication via BIO pair and app verify
$ssltest -bio_pair -server_auth -client_auth -app_verify $CA $extra || exit 1

echo "Testing ciphersuites"
for protocol in SSLv3; do
  echo "Testing ciphersuites for $protocol"
  for cipher in `../util/shlib_wrap.sh ../apps/openssl ciphers "RSA+$protocol" | tr ':' ' '`; do
    echo "Testing $cipher"
    prot=""
    if [ $protocol = "SSLv3" ] ; then
      prot="-ssl3"
    fi
    $ssltest -cipher $cipher $prot
    if [ $? -ne 0 ] ; then
	  echo "Failed $cipher"
	  exit 1
    fi
  done
done

#############################################################################

if ../util/shlib_wrap.sh ../apps/openssl no-dh; then
  echo skipping anonymous DH tests
else
  echo test tls1 with 1024bit anonymous DH, multiple handshakes
  $ssltest -v -bio_pair -tls1 -cipher ADH -dhe1024dsa -num 10 -f -time $extra || exit 1
fi

if ../util/shlib_wrap.sh ../apps/openssl no-rsa; then
  echo skipping RSA tests
else
  echo 'test tls1 with 1024bit RSA, no (EC)DHE, multiple handshakes'
  ../util/shlib_wrap.sh ./ssltest -v -bio_pair -tls1 -cert ../apps/server2.pem -no_dhe -no_ecdhe -num 10 -f -time $extra || exit 1

  if ../util/shlib_wrap.sh ../apps/openssl no-dh; then
    echo skipping RSA+DHE tests
  else
    echo test tls1 with 1024bit RSA, 1024bit DHE, multiple handshakes
    ../util/shlib_wrap.sh ./ssltest -v -bio_pair -tls1 -cert ../apps/server2.pem -dhe1024dsa -num 10 -f -time $extra || exit 1
  fi
fi

echo test tls1 with PSK
$ssltest -tls1 -cipher PSK -psk abc123 $extra || exit 1

echo test tls1 with PSK via BIO pair
$ssltest -bio_pair -tls1 -cipher PSK -psk abc123 $extra || exit 1

exit 0
The diff you're trying to view is too large. Only the first 1000 changed files have been loaded.
Showing with 0 additions and 0 deletions (0 / 0 diffs computed)
swh spinner

Computing file changes ...

ENEA — Copyright (C), ENEA. License: GNU AGPLv3+.
Legal notes  ::  JavaScript license information ::  Web API

back to top