gnutls-commit
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[SCM] GNU gnutls branch, master, updated. gnutls_2_9_10-20-g9bf8b4b


From: Simon Josefsson
Subject: [SCM] GNU gnutls branch, master, updated. gnutls_2_9_10-20-g9bf8b4b
Date: Mon, 03 May 2010 13:22:25 +0000

This is an automated email from the git hooks/post-receive script. It was
generated because a ref change was pushed to the repository containing
the project "GNU gnutls".

http://git.savannah.gnu.org/cgit/gnutls.git/commit/?id=9bf8b4b9f74b9f2b624595eb247dcc8dfdd4c298

The branch, master has been updated
       via  9bf8b4b9f74b9f2b624595eb247dcc8dfdd4c298 (commit)
      from  199a7ff4d57af9e230441b31a1be7330ba347a49 (commit)

Those revisions listed above that are new to this repository have
not appeared on any other notification email; so we list those
revisions in full, below.

- Log -----------------------------------------------------------------
commit 9bf8b4b9f74b9f2b624595eb247dcc8dfdd4c298
Author: Simon Josefsson <address@hidden>
Date:   Mon May 3 15:22:21 2010 +0200

    tests: Add small X.509 rehandshake test.

-----------------------------------------------------------------------

Summary of changes:
 tests/Makefile.am                              |    3 +-
 tests/{mini-x509.c => mini-x509-rehandshake.c} |   56 ++++++++++++++++++++++++
 2 files changed, 58 insertions(+), 1 deletions(-)
 copy tests/{mini-x509.c => mini-x509-rehandshake.c} (85%)

diff --git a/tests/Makefile.am b/tests/Makefile.am
index ac71523..9379fc8 100644
--- a/tests/Makefile.am
+++ b/tests/Makefile.am
@@ -59,7 +59,8 @@ ctests = simple gc set_pkcs12_cred certder mpi                
                \
        finished hostname-check cve-2008-4989 pkcs12_s2k chainverify    \
        crq_key_id x509sign-verify cve-2009-1415 cve-2009-1416          \
        crq_apis init_roundtrip pkcs12_s2k_pem dn2 mini-eagain          \
-       nul-in-x509-names x509_altname pkcs12_encode mini-x509
+       nul-in-x509-names x509_altname pkcs12_encode mini-x509          \
+       mini-x509-rehandshake
 
 if ENABLE_OPENSSL
 ctests +=  openssl
diff --git a/tests/mini-x509.c b/tests/mini-x509-rehandshake.c
similarity index 85%
copy from tests/mini-x509.c
copy to tests/mini-x509-rehandshake.c
index 40178d2..5664e65 100644
--- a/tests/mini-x509.c
+++ b/tests/mini-x509-rehandshake.c
@@ -226,6 +226,62 @@ main (int argc, char *argv[])
   if (cret != GNUTLS_E_SUCCESS && sret != GNUTLS_E_SUCCESS)
     exit_code = EXIT_FAILURE;
 
+  sret = gnutls_rehandshake (server);
+  if (debug_level > 0)
+    {
+      tls_log_func (0, "gnutls_rehandshake (server)...\n");
+      tls_log_func (0, gnutls_strerror (sret));
+      tls_log_func (0, "\n");
+    }
+
+  {
+    ssize_t n;
+    char b[1];
+    n = gnutls_record_recv (client, b, 1);
+    if (n != GNUTLS_E_REHANDSHAKE)
+      abort ();
+  }
+
+  cret = GNUTLS_E_AGAIN;
+  sret = GNUTLS_E_AGAIN;
+
+  do
+    {
+      static int max_iter = 0;
+      if (max_iter++ > 10)
+       abort ();
+
+      if (cret == GNUTLS_E_AGAIN)
+       {
+         cret = gnutls_handshake (client);
+         if (debug_level > 0)
+           {
+             tls_log_func (0, "second gnutls_handshake (client)...\n");
+             tls_log_func (0, gnutls_strerror (cret));
+             tls_log_func (0, "\n");
+           }
+       }
+
+      if (sret == GNUTLS_E_AGAIN)
+       {
+         sret = gnutls_handshake (server);
+         if (debug_level > 0)
+           {
+             tls_log_func (0, "second gnutls_handshake (server)...\n");
+             tls_log_func (0, gnutls_strerror (sret));
+             tls_log_func (0, "\n");
+           }
+       }
+    }
+  while (
+        /* Not done: */
+        !(cret == GNUTLS_E_SUCCESS && sret == GNUTLS_E_SUCCESS)
+        /* No error: */
+        && (cret == GNUTLS_E_AGAIN || sret == GNUTLS_E_AGAIN));
+
+  if (cret != GNUTLS_E_SUCCESS && sret != GNUTLS_E_SUCCESS)
+    exit_code = 1;
+
   gnutls_bye (client, GNUTLS_SHUT_RDWR);
   gnutls_bye (server, GNUTLS_SHUT_RDWR);
 


hooks/post-receive
-- 
GNU gnutls




reply via email to

[Prev in Thread] Current Thread [Next in Thread]