aboutsummaryrefslogtreecommitdiffstats
path: root/camel/camel-tcp-stream-ssl.c
diff options
context:
space:
mode:
Diffstat (limited to 'camel/camel-tcp-stream-ssl.c')
-rw-r--r--camel/camel-tcp-stream-ssl.c15
1 files changed, 6 insertions, 9 deletions
diff --git a/camel/camel-tcp-stream-ssl.c b/camel/camel-tcp-stream-ssl.c
index b346a02c61..42255562bc 100644
--- a/camel/camel-tcp-stream-ssl.c
+++ b/camel/camel-tcp-stream-ssl.c
@@ -41,7 +41,6 @@ static int stream_flush (CamelStream *stream);
static int stream_close (CamelStream *stream);
static int stream_connect (CamelTcpStream *stream, struct hostent *host, int port);
-static int stream_disconnect (CamelTcpStream *stream);
static int stream_getsockopt (CamelTcpStream *stream, CamelSockOptData *data);
static int stream_setsockopt (CamelTcpStream *stream, const CamelSockOptData *data);
@@ -62,7 +61,6 @@ camel_tcp_stream_ssl_class_init (CamelTcpStreamSSLClass *camel_tcp_stream_ssl_cl
camel_stream_class->close = stream_close;
camel_tcp_stream_class->connect = stream_connect;
- camel_tcp_stream_class->disconnect = stream_disconnect;
camel_tcp_stream_class->getsockopt = stream_getsockopt;
camel_tcp_stream_class->setsockopt = stream_setsockopt;
}
@@ -160,8 +158,12 @@ stream_flush (CamelStream *stream)
static int
stream_close (CamelStream *stream)
{
- g_warning ("CamelTcpStreamSSL::close called on a stream where ::disconnect is preferred\n");
- return PR_Close (((CamelTcpStreamSSL *)stream)->sockfd);
+ if (PR_Close (((CamelTcpStreamSSL *)stream)->sockfd) == PR_Failure)
+ return -1;
+
+ ((CamelTcpStreamSSL *)stream)->sockfd = NULL;
+
+ return 0;
}
@@ -196,11 +198,6 @@ stream_connect (CamelTcpStream *stream, struct hostent *host, int port)
return 0;
}
-static int
-stream_disconnect (CamelTcpStream *stream)
-{
- return PR_Close (((CamelTcpStreamSSL *)stream)->sockfd);
-}
static int
stream_getsockopt (CamelTcpStream *stream, CamelSockOptData *data)