diff options
author | hiro <hiro@ee746299-78ed-0310-b773-934348b2243d> | 2007-07-20 04:38:56 +0000 |
---|---|---|
committer | hiro <hiro@ee746299-78ed-0310-b773-934348b2243d> | 2007-07-20 04:38:56 +0000 |
commit | 9fff27c6dd65ad4995fa08bce2ff8daf268e5d62 (patch) | |
tree | 087b6c5b718e04cb748e95f62434730ba768fe4b /libsylph/socket.c | |
parent | c53d8de733d96c2ab089b582814e94cc0c3a45da (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/socket.c')
-rw-r--r-- | libsylph/socket.c | 5 |
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; } } |