5994244288
patch by Vivek Dasmohapatra
29 lines
1006 B
Diff
29 lines
1006 B
Diff
From e6cc32d6af7749826807badd258224ec1bfa31ae Mon Sep 17 00:00:00 2001
|
|
From: Vivek Dasmohapatra <vivek@collabora.co.uk>
|
|
Date: Thu, 23 Sep 2010 16:43:12 +0100
|
|
Subject: [PATCH] IMED_RET macro should not clear session hash data if we are returning EAGAIN
|
|
|
|
GNUTLS_E_AGAIN implies we haven't finished the operation in question,
|
|
and therefore should not be clearing the cached hash data.
|
|
---
|
|
lib/gnutls_handshake.c | 3 ++-
|
|
1 files changed, 2 insertions(+), 1 deletions(-)
|
|
|
|
diff --git a/lib/gnutls_handshake.c b/lib/gnutls_handshake.c
|
|
index 84e6773..6e397b2 100644
|
|
--- a/lib/gnutls_handshake.c
|
|
+++ b/lib/gnutls_handshake.c
|
|
@@ -2736,7 +2736,8 @@ gnutls_handshake (gnutls_session_t session)
|
|
if (check_fatal != 0 && gnutls_error_is_fatal(ret)==0) return ret; \
|
|
gnutls_assert(); \
|
|
ERR( str, ret); \
|
|
- _gnutls_handshake_hash_buffers_clear(session); \
|
|
+ if (ret != GNUTLS_E_AGAIN) \
|
|
+ _gnutls_handshake_hash_buffers_clear(session); \
|
|
return ret; \
|
|
} } while (0)
|
|
|
|
--
|
|
1.7.0
|
|
|