talons

Fork of Claws Mail https://www.claws-mail
Log | Files | Refs | README | LICENSE

commit 7753ebefa1ae58320e497cb9a72d5a189370b052
parent c0430c177330921165232c8b060d54011ef3644f
Author: Colin Leroy <colin@colino.net>
Date:   Fri, 21 Nov 2008 17:31:38 +0000

2008-11-21 [colin]	3.6.1cvs39

	* src/common/socket.c
		Rehandshake if server asks to

Diffstat:
MChangeLog | 5+++++
MPATCHSETS | 1+
Mconfigure.ac | 2+-
Msrc/common/socket.c | 6+++++-
4 files changed, 12 insertions(+), 2 deletions(-)

diff --git a/ChangeLog b/ChangeLog @@ -1,3 +1,8 @@ +2008-11-21 [colin] 3.6.1cvs39 + + * src/common/socket.c + Rehandshake if server asks to + 2008-11-21 [colin] 3.6.1cvs38 * src/mimeview.h diff --git a/PATCHSETS b/PATCHSETS @@ -3620,3 +3620,4 @@ ( cvs diff -u -r 1.382.2.485 -r 1.382.2.486 src/compose.c; cvs diff -u -r 1.75.2.61 -r 1.75.2.62 src/matcher.c; cvs diff -u -r 1.94.2.191 -r 1.94.2.192 src/messageview.c; cvs diff -u -r 1.83.2.147 -r 1.83.2.148 src/mimeview.c; cvs diff -u -r 1.60.2.64 -r 1.60.2.65 src/prefs_actions.c; cvs diff -u -r 1.1.4.57 -r 1.1.4.58 src/prefs_filtering_action.c; cvs diff -u -r 1.150.2.109 -r 1.150.2.110 src/procmsg.c; cvs diff -u -r 1.395.2.400 -r 1.395.2.401 src/summaryview.c; cvs diff -u -r 1.96.2.210 -r 1.96.2.211 src/textview.c; cvs diff -u -r 1.36.2.154 -r 1.36.2.155 src/common/utils.c; ) > 3.6.1cvs36.patchset ( cvs diff -u -r 1.60.2.65 -r 1.60.2.66 src/prefs_actions.c; ) > 3.6.1cvs37.patchset ( cvs diff -u -r 1.20.2.27 -r 1.20.2.28 src/mimeview.h; cvs diff -u -r 1.19.2.29 -r 1.19.2.30 src/toolbar.h; cvs diff -u -r 1.8.2.14 -r 1.8.2.15 src/common/session.h; cvs diff -u -r 1.6.2.15 -r 1.6.2.16 src/common/smtp.h; ) > 3.6.1cvs38.patchset +( cvs diff -u -r 1.13.2.41 -r 1.13.2.42 src/common/socket.c; ) > 3.6.1cvs39.patchset diff --git a/configure.ac b/configure.ac @@ -11,7 +11,7 @@ MINOR_VERSION=6 MICRO_VERSION=1 INTERFACE_AGE=0 BINARY_AGE=0 -EXTRA_VERSION=38 +EXTRA_VERSION=39 EXTRA_RELEASE= EXTRA_GTK2_VERSION= diff --git a/src/common/socket.c b/src/common/socket.c @@ -1385,11 +1385,15 @@ static gint ssl_read(gnutls_session ssl, gchar *buf, gint len) case 0: /* closed connection */ return -1; + case GNUTLS_E_REHANDSHAKE: + do { + r = gnutls_handshake(ssl); + } while (r == GNUTLS_E_AGAIN || r == GNUTLS_E_INTERRUPTED); + break; /* re-receive */ case GNUTLS_E_AGAIN: case GNUTLS_E_INTERRUPTED: errno = EAGAIN; return -1; - break; default: return -1;