summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorNikos Mavrogiannopoulos <nmav@redhat.com>2017-08-09 10:21:06 +0200
committerNikos Mavrogiannopoulos <nmav@redhat.com>2017-08-09 15:33:01 +0200
commit1a76bba4a40255f63dbc3694de4c9cb49afa52ba (patch)
treeaade37f611b0793161d1f412e5c20e6c8a919e07
parent0e91397a3a5db3b5e0d654e9d089d44e9a73a65a (diff)
downloadgnutls-1a76bba4a40255f63dbc3694de4c9cb49afa52ba.tar.gz
tests: added reproducer for private key import leak
Issue found using oss-fuzz: https://bugs.chromium.org/p/oss-fuzz/issues/detail?id=561 Signed-off-by: Nikos Mavrogiannopoulos <nmav@redhat.com>
-rw-r--r--tests/key-tests/Makefile.am2
-rw-r--r--tests/key-tests/data/key-invalid6.derbin0 -> 633 bytes
-rwxr-xr-xtests/key-tests/key-invalid5
3 files changed, 3 insertions, 4 deletions
diff --git a/tests/key-tests/Makefile.am b/tests/key-tests/Makefile.am
index 9184233da1..90c8f5472e 100644
--- a/tests/key-tests/Makefile.am
+++ b/tests/key-tests/Makefile.am
@@ -30,7 +30,7 @@ EXTRA_DIST = data/key-ca.pem data/key-user.pem \
data/dsa.1024.pem data/dsa.2048.pem data/dsa.3072.pem data/dsa-pubkey-1018.pem \
data/bad-key.pem data/p8key-illegal.pem data/key-illegal.pem data/pkcs8-pbes2-sha256.pem \
data/pkcs8-pbes1-des-md5.pem data/pkcs8-invalid8.der data/key-invalid1.der \
- data/key-invalid4.der data/key-invalid5.der \
+ data/key-invalid4.der data/key-invalid5.der data/key-invalid6.der \
data data/pkcs8-invalid9.der data/key-invalid2.der data/pkcs8-invalid10.der \
data/key-invalid3.der data/pkcs8-eddsa.pem data/pkcs8-eddsa.pem.txt
diff --git a/tests/key-tests/data/key-invalid6.der b/tests/key-tests/data/key-invalid6.der
new file mode 100644
index 0000000000..d4efbcb1ca
--- /dev/null
+++ b/tests/key-tests/data/key-invalid6.der
Binary files differ
diff --git a/tests/key-tests/key-invalid b/tests/key-tests/key-invalid
index b0e6d52c77..eeb94ee976 100755
--- a/tests/key-tests/key-invalid
+++ b/tests/key-tests/key-invalid
@@ -35,12 +35,11 @@ if ! test -z "${VALGRIND}"; then
fi
ret=0
-for p8 in "key-invalid1.der" "key-invalid2.der" "key-invalid3.der" "key-invalid4.der" \
-"key-invalid5.der";do
+for p8 in ${srcdir}/data/key-invalid*.der;do
set -- ${p8}
file="$1"
${VALGRIND} "${CERTTOOL}" --inder --key-info \
- --infile "${srcdir}/data/${file}"
+ --infile "${file}"
rc=$?
if test ${rc} != 1; then
echo "FATAL ${p8} - errno ${rc}"