]> git.ipfire.org Git - thirdparty/gnutls.git/commitdiff
gnutls-cli-debug: terminate sessions which cannot be re-used
authorNikos Mavrogiannopoulos <nmav@gnutls.org>
Sun, 13 Nov 2016 15:41:43 +0000 (16:41 +0100)
committerNikos Mavrogiannopoulos <nmav@gnutls.org>
Sun, 13 Nov 2016 16:00:14 +0000 (17:00 +0100)
src/cli-debug.c
src/tests.c
src/tests.h

index 3dcb90225db347912c920540879e9bd6bab3980c..2b0f88e2e35af8433a38767d61f58056d36c36b5 100644 (file)
@@ -285,7 +285,7 @@ int main(int argc, char **argv)
                        break;
                }
 
-               socket_open(&hd, hostname, portname, app_proto, SOCKET_FLAG_STARTTLS, NULL, NULL);
+               socket_open(&hd, hostname, portname, app_proto, SOCKET_FLAG_STARTTLS|SOCKET_FLAG_RAW, NULL, NULL);
                hd.verbose = verbose;
 
                do {
@@ -296,7 +296,7 @@ int main(int argc, char **argv)
 
                        ret = tls_tests[i].func(hd.session);
 
-                       if (ret != TEST_IGNORE) {
+                       if (ret != TEST_IGNORE && ret != TEST_IGNORE2) {
                                printf("%58s...", tls_tests[i].test_name);
                                fflush(stdout);
                        }
index b235f0c3830f343970c7bcf107b70a2aaa8cd770..2d40b8c6bee58f150d66c3254c05f6afb28ab70f 100644 (file)
@@ -296,7 +296,7 @@ test_code_t test_rfc7507(gnutls_session_t session)
 
        ret = do_handshake(session);
        if (ret < 0)
-               return TEST_IGNORE;
+               return TEST_IGNORE2;
 
        if (handshake_output < 0)
                return TEST_SUCCEED;
@@ -1354,12 +1354,12 @@ test_code_t test_chain_order(gnutls_session_t session)
                return ret;
 
        if (gnutls_certificate_type_get(session) != GNUTLS_CRT_X509)
-               return TEST_IGNORE;
+               return TEST_IGNORE2;
 
        cert_list = gnutls_certificate_get_peers(session, &cert_list_size);
        if (cert_list_size == 0) {
                ext_text = "No certificates found!";
-               return TEST_IGNORE;
+               return TEST_IGNORE2;
        }
 
        if (cert_list_size == 1)
index 3a974aeea0769cd3906ac52d6632f671c0c77116..7f938b86de1477bb6a8914b18fa428d710dde590 100644 (file)
@@ -19,7 +19,7 @@
  */
 
 typedef enum {
-       TEST_SUCCEED, TEST_FAILED, TEST_UNSURE, TEST_IGNORE
+       TEST_SUCCEED, TEST_FAILED, TEST_UNSURE, TEST_IGNORE/*keep socket*/, TEST_IGNORE2/*destroy socket*/
 } test_code_t;
 
 test_code_t test_chain_order(gnutls_session_t session);