From dac93df76b81596d98d4ac15d848d222b84a59ff Mon Sep 17 00:00:00 2001 From: Tomas Mraz Date: Tue, 21 Sep 2010 13:41:13 +0200 Subject: [PATCH] - backported patch from upstream git hopefully fixing internal errors (#629858) --- gnutls-2.10.1-handshake-errors.patch | 57 ++++++++++++++++++++++++++++ gnutls.spec | 9 ++++- 2 files changed, 65 insertions(+), 1 deletion(-) create mode 100644 gnutls-2.10.1-handshake-errors.patch diff --git a/gnutls-2.10.1-handshake-errors.patch b/gnutls-2.10.1-handshake-errors.patch new file mode 100644 index 0000000..1c11dc7 --- /dev/null +++ b/gnutls-2.10.1-handshake-errors.patch @@ -0,0 +1,57 @@ +diff -up gnutls-2.10.1/lib/gnutls_handshake.c.errors gnutls-2.10.1/lib/gnutls_handshake.c +--- gnutls-2.10.1/lib/gnutls_handshake.c.errors 2010-07-25 10:35:31.000000000 +0200 ++++ gnutls-2.10.1/lib/gnutls_handshake.c 2010-09-13 17:16:05.000000000 +0200 +@@ -2769,7 +2769,7 @@ _gnutls_handshake_client (gnutls_session + case STATE1: + ret = _gnutls_send_hello (session, AGAIN (STATE1)); + STATE = STATE1; +- IMED_RET ("send hello", ret, 0); ++ IMED_RET ("send hello", ret, 1); + + case STATE2: + /* receive the server hello */ +@@ -2849,7 +2849,7 @@ _gnutls_handshake_client (gnutls_session + ret = + _gnutls_send_client_certificate_verify (session, AGAIN (STATE9)); + STATE = STATE9; +- IMED_RET ("send client certificate verify", ret, 0); ++ IMED_RET ("send client certificate verify", ret, 1); + + STATE = STATE0; + default: +@@ -3002,7 +3002,7 @@ _gnutls_handshake_server (gnutls_session + case STATE2: + ret = _gnutls_send_hello (session, AGAIN (STATE2)); + STATE = STATE2; +- IMED_RET ("send hello", ret, 0); ++ IMED_RET ("send hello", ret, 1); + + case STATE70: + if (session->security_parameters.extensions.do_send_supplemental) +@@ -3044,7 +3044,7 @@ _gnutls_handshake_server (gnutls_session + GNUTLS_HANDSHAKE_SERVER_HELLO_DONE, + AGAIN (STATE6)); + STATE = STATE6; +- IMED_RET ("send server hello done", ret, 0); ++ IMED_RET ("send server hello done", ret, 1); + + case STATE71: + if (session->security_parameters.extensions.do_recv_supplemental) +@@ -3119,7 +3119,7 @@ _gnutls_handshake_common (gnutls_session + #endif + + ret = _gnutls_send_handshake_final (session, FALSE); +- IMED_RET ("send handshake final", ret, 0); ++ IMED_RET ("send handshake final", ret, 1); + + /* only store if we are not resuming */ + if (session->security_parameters.entity == GNUTLS_SERVER) +@@ -3132,7 +3132,7 @@ _gnutls_handshake_common (gnutls_session + { /* if we are a client not resuming - or we are a server resuming */ + + ret = _gnutls_send_handshake_final (session, TRUE); +- IMED_RET ("send handshake final 2", ret, 0); ++ IMED_RET ("send handshake final 2", ret, 1); + + #ifdef ENABLE_SESSION_TICKET + switch (STATE) diff --git a/gnutls.spec b/gnutls.spec index 9431336..689b18d 100644 --- a/gnutls.spec +++ b/gnutls.spec @@ -1,7 +1,7 @@ Summary: A TLS protocol implementation Name: gnutls Version: 2.10.1 -Release: 1%{?dist} +Release: 2%{?dist} # The libgnutls library is LGPLv2+, utilities and remaining libraries are GPLv3+ License: GPLv3+ and LGPLv2+ Group: System Environment/Libraries @@ -19,6 +19,8 @@ Patch1: gnutls-2.8.5-rpath.patch Patch2: gnutls-2.8.6-link-libgcrypt.patch # Remove nonexisting references from texinfo file Patch3: gnutls-2.10.1-nosrp.patch +# Backport from upstream git +Patch4: gnutls-2.10.1-hanshake-errors.patch BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n) Requires: libgcrypt >= 1.2.2 @@ -74,6 +76,7 @@ This package contains Guile bindings for the library. %patch1 -p1 -b .rpath %patch2 -p1 -b .link %patch3 -p1 -b .nosrp +%patch4 -p1 -b .errors for i in auth_srp_rsa.c auth_srp_sb64.c auth_srp_passwd.c auth_srp.c gnutls_srp.c ext_srp.c; do touch lib/$i @@ -157,6 +160,10 @@ fi %{_datadir}/guile/site/gnutls.scm %changelog +* Tue Sep 21 2010 Tomas Mraz 2.10.1-2 +- backported patch from upstream git hopefully fixing internal errors + (#629858) + * Wed Aug 4 2010 Tomas Mraz 2.10.1-1 - new upstream version