summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorNikos Mavrogiannopoulos <nmav@redhat.com>2017-03-08 13:07:08 +0100
committerNikos Mavrogiannopoulos <nmav@redhat.com>2017-03-08 13:29:50 +0100
commitbcf3ea0499af16e673a63de0fd20d9dd7049edec (patch)
treecf79a05430b7284924adcfd39dee85e73fd9b135
parent9f90f409beb1d626a5d7b980842a7e322fedbfa9 (diff)
downloadgnutls-bcf3ea0499af16e673a63de0fd20d9dd7049edec.tar.gz
tests: split sign-verify test to RSA and ECDSA parts
This allows parallelist and also helps identifying easier the culprit on an error. Signed-off-by: Nikos Mavrogiannopoulos <nmav@redhat.com>
-rw-r--r--tests/Makefile.am4
-rw-r--r--tests/x509sign-verify-common.h (renamed from tests/x509sign-verify2.c)71
-rw-r--r--tests/x509sign-verify-ecdsa.c60
-rw-r--r--tests/x509sign-verify-rsa.c67
4 files changed, 129 insertions, 73 deletions
diff --git a/tests/Makefile.am b/tests/Makefile.am
index b1d25421eb..333a079eb0 100644
--- a/tests/Makefile.am
+++ b/tests/Makefile.am
@@ -43,7 +43,7 @@ EXTRA_DIST = suppressions.valgrind eagain-common.h cert-common.h test-chains.h \
pkcs7-interesting/pkcs7-1.der.err pkcs7-interesting/pkcs7-2.der pkcs7-interesting/pkcs7-2.der.err \
client-interesting/client1.raw client-interesting/client2.raw client-interesting/client3.disabled \
server-interesting/server1.raw scripts/common.sh scripts/starttls-common.sh \
- client-interesting/client3.raw rng-op.c
+ client-interesting/client3.raw rng-op.c x509sign-verify-common.h
AM_CFLAGS = $(WARN_CFLAGS) $(WERROR_CFLAGS)
AM_CPPFLAGS = \
@@ -99,7 +99,7 @@ ctests = mini-record-2 simple gc set_pkcs12_cred cert certuniqueid \
strict-der tls-ext-register tls-supplemental mini-dtls0-9 \
mini-record-retvals mini-server-name tls-etm x509-cert-callback \
sign-md5-rep keygen mini-tls-nonblock no-signal pkcs7-gen dtls-etm \
- x509sign-verify2 mini-alignment oids atfork prf psk-file \
+ x509sign-verify-rsa x509sign-verify-ecdsa mini-alignment oids atfork prf psk-file \
status-request status-request-ok status-request-missing \
fallback-scsv pkcs8-key-decode urls dtls-rehandshake-cert \
key-usage-rsa key-usage-ecdhe-rsa mini-session-verify-function auto-verify \
diff --git a/tests/x509sign-verify2.c b/tests/x509sign-verify-common.h
index 15025ce213..1b1f4b8e0c 100644
--- a/tests/x509sign-verify2.c
+++ b/tests/x509sign-verify-common.h
@@ -1,47 +1,3 @@
-/*
- * Copyright (C) 2004-2012 Free Software Foundation, Inc.
- *
- * Author: Nikos Mavrogiannopoulos, Simon Josefsson
- *
- * This file is part of GnuTLS.
- *
- * GnuTLS is free software; you can redistribute it and/or modify it
- * under the terms of the GNU General Public License as published by
- * the Free Software Foundation; either version 3 of the License, or
- * (at your option) any later version.
- *
- * GnuTLS is distributed in the hope that it will be useful, but
- * WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- * General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with GnuTLS; if not, write to the Free Software Foundation,
- * Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA
- */
-
-/* Parts copied from GnuTLS example programs. */
-
-#ifdef HAVE_CONFIG_H
-#include <config.h>
-#endif
-
-#include <stdio.h>
-#include <stdlib.h>
-#include <string.h>
-#ifndef _WIN32
-# include <sys/types.h>
-# include <netinet/in.h>
-# include <sys/socket.h>
-# include <arpa/inet.h>
-# include <unistd.h>
-#endif
-#include <gnutls/gnutls.h>
-#include <gnutls/x509.h>
-#include <gnutls/abstract.h>
-
-#include "utils.h"
-
static void tls_log_func(int level, const char *str)
{
fprintf(stderr, "<%d> %s", level, str);
@@ -190,31 +146,4 @@ void test_sig(gnutls_pk_algorithm_t pk, unsigned hash, unsigned bits)
gnutls_privkey_deinit(privkey);
gnutls_pubkey_deinit(pubkey);
}
-
-}
-
-void doit(void)
-{
- unsigned rsa_size1, rsa_size2;
- global_init();
- gnutls_global_set_log_function(tls_log_func);
- if (debug)
- gnutls_global_set_log_level(6);
-
- if (gnutls_fips140_mode_enabled()) {
- rsa_size1 = 2048; /* minimum allowed */
- rsa_size2 = 2048; /* minimum allowed */
- } else {
- rsa_size1 = 512;
- rsa_size2 = 1024;
- }
-
- test_sig(GNUTLS_PK_RSA, GNUTLS_DIG_SHA1, rsa_size1);
- test_sig(GNUTLS_PK_RSA, GNUTLS_DIG_SHA256, rsa_size2);
- test_sig(GNUTLS_PK_EC, GNUTLS_DIG_SHA1, GNUTLS_CURVE_TO_BITS(GNUTLS_ECC_CURVE_SECP256R1));
- test_sig(GNUTLS_PK_EC, GNUTLS_DIG_SHA256, GNUTLS_CURVE_TO_BITS(GNUTLS_ECC_CURVE_SECP256R1));
- test_sig(GNUTLS_PK_EC, GNUTLS_DIG_SHA256, GNUTLS_CURVE_TO_BITS(GNUTLS_ECC_CURVE_SECP384R1));
- test_sig(GNUTLS_PK_EC, GNUTLS_DIG_SHA256, GNUTLS_CURVE_TO_BITS(GNUTLS_ECC_CURVE_SECP521R1));
-
- gnutls_global_deinit();
}
diff --git a/tests/x509sign-verify-ecdsa.c b/tests/x509sign-verify-ecdsa.c
new file mode 100644
index 0000000000..e34ee24c6f
--- /dev/null
+++ b/tests/x509sign-verify-ecdsa.c
@@ -0,0 +1,60 @@
+/*
+ * Copyright (C) 2004-2012 Free Software Foundation, Inc.
+ *
+ * Author: Nikos Mavrogiannopoulos, Simon Josefsson
+ *
+ * This file is part of GnuTLS.
+ *
+ * GnuTLS is free software; you can redistribute it and/or modify it
+ * under the terms of the GNU General Public License as published by
+ * the Free Software Foundation; either version 3 of the License, or
+ * (at your option) any later version.
+ *
+ * GnuTLS is distributed in the hope that it will be useful, but
+ * WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with GnuTLS; if not, write to the Free Software Foundation,
+ * Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA
+ */
+
+/* Parts copied from GnuTLS example programs. */
+
+#ifdef HAVE_CONFIG_H
+#include <config.h>
+#endif
+
+#include <stdio.h>
+#include <stdlib.h>
+#include <string.h>
+#ifndef _WIN32
+# include <sys/types.h>
+# include <netinet/in.h>
+# include <sys/socket.h>
+# include <arpa/inet.h>
+# include <unistd.h>
+#endif
+#include <gnutls/gnutls.h>
+#include <gnutls/x509.h>
+#include <gnutls/abstract.h>
+
+#include "utils.h"
+
+#include "x509sign-verify-common.h"
+
+void doit(void)
+{
+ global_init();
+ gnutls_global_set_log_function(tls_log_func);
+ if (debug)
+ gnutls_global_set_log_level(6);
+
+ test_sig(GNUTLS_PK_EC, GNUTLS_DIG_SHA1, GNUTLS_CURVE_TO_BITS(GNUTLS_ECC_CURVE_SECP256R1));
+ test_sig(GNUTLS_PK_EC, GNUTLS_DIG_SHA256, GNUTLS_CURVE_TO_BITS(GNUTLS_ECC_CURVE_SECP256R1));
+ test_sig(GNUTLS_PK_EC, GNUTLS_DIG_SHA256, GNUTLS_CURVE_TO_BITS(GNUTLS_ECC_CURVE_SECP384R1));
+ test_sig(GNUTLS_PK_EC, GNUTLS_DIG_SHA256, GNUTLS_CURVE_TO_BITS(GNUTLS_ECC_CURVE_SECP521R1));
+
+ gnutls_global_deinit();
+}
diff --git a/tests/x509sign-verify-rsa.c b/tests/x509sign-verify-rsa.c
new file mode 100644
index 0000000000..c0f1be1813
--- /dev/null
+++ b/tests/x509sign-verify-rsa.c
@@ -0,0 +1,67 @@
+/*
+ * Copyright (C) 2004-2012 Free Software Foundation, Inc.
+ *
+ * Author: Nikos Mavrogiannopoulos, Simon Josefsson
+ *
+ * This file is part of GnuTLS.
+ *
+ * GnuTLS is free software; you can redistribute it and/or modify it
+ * under the terms of the GNU General Public License as published by
+ * the Free Software Foundation; either version 3 of the License, or
+ * (at your option) any later version.
+ *
+ * GnuTLS is distributed in the hope that it will be useful, but
+ * WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with GnuTLS; if not, write to the Free Software Foundation,
+ * Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA
+ */
+
+/* Parts copied from GnuTLS example programs. */
+
+#ifdef HAVE_CONFIG_H
+#include <config.h>
+#endif
+
+#include <stdio.h>
+#include <stdlib.h>
+#include <string.h>
+#ifndef _WIN32
+# include <sys/types.h>
+# include <netinet/in.h>
+# include <sys/socket.h>
+# include <arpa/inet.h>
+# include <unistd.h>
+#endif
+#include <gnutls/gnutls.h>
+#include <gnutls/x509.h>
+#include <gnutls/abstract.h>
+
+#include "utils.h"
+
+#include "x509sign-verify-common.h"
+
+void doit(void)
+{
+ unsigned rsa_size1, rsa_size2;
+ global_init();
+ gnutls_global_set_log_function(tls_log_func);
+ if (debug)
+ gnutls_global_set_log_level(6);
+
+ if (gnutls_fips140_mode_enabled()) {
+ rsa_size1 = 2048; /* minimum allowed */
+ rsa_size2 = 2048; /* minimum allowed */
+ } else {
+ rsa_size1 = 512;
+ rsa_size2 = 1024;
+ }
+
+ test_sig(GNUTLS_PK_RSA, GNUTLS_DIG_SHA1, rsa_size1);
+ test_sig(GNUTLS_PK_RSA, GNUTLS_DIG_SHA256, rsa_size2);
+
+ gnutls_global_deinit();
+}