aboutsummaryrefslogtreecommitdiff
path: root/libsylph
diff options
context:
space:
mode:
authorhiro <hiro@ee746299-78ed-0310-b773-934348b2243d>2007-07-20 04:38:56 +0000
committerhiro <hiro@ee746299-78ed-0310-b773-934348b2243d>2007-07-20 04:38:56 +0000
commit9fff27c6dd65ad4995fa08bce2ff8daf268e5d62 (patch)
tree087b6c5b718e04cb748e95f62434730ba768fe4b /libsylph
parentc53d8de733d96c2ab089b582814e94cc0c3a45da (diff)
ignore errors right after QUIT (workaround for Gmail SMTP server).
git-svn-id: svn://sylpheed.sraoss.jp/sylpheed/trunk@1873 ee746299-78ed-0310-b773-934348b2243d
Diffstat (limited to 'libsylph')
-rw-r--r--libsylph/socket.c5
1 files changed, 5 insertions, 0 deletions
diff --git a/libsylph/socket.c b/libsylph/socket.c
index a1600381..d4540366 100644
--- a/libsylph/socket.c
+++ b/libsylph/socket.c
@@ -1363,6 +1363,8 @@ gint ssl_read(SSL *ssl, gchar *buf, gint len)
{
gint err, ret;
+ errno = 0;
+
if (SSL_pending(ssl) == 0) {
if (fd_check_io(SSL_get_rfd(ssl), G_IO_IN) < 0)
return -1;
@@ -1383,6 +1385,9 @@ gint ssl_read(SSL *ssl, gchar *buf, gint len)
g_warning("SSL_read() returned error %d, ret = %d\n", err, ret);
if (ret == 0)
return 0;
+#ifdef G_OS_WIN32
+ errno = EIO;
+#endif
return -1;
}
}