aboutsummaryrefslogtreecommitdiffstats
path: root/camel/camel-tcp-stream-raw.c
diff options
context:
space:
mode:
authorJeffrey Stedfast <fejj@ximian.com>2001-01-16 08:54:18 +0800
committerJeffrey Stedfast <fejj@src.gnome.org>2001-01-16 08:54:18 +0800
commitd9b76e981fae89ad0da878cb8bb5b261a9988ddd (patch)
tree8119a880d3de3786fde249a088370b1dfc132daf /camel/camel-tcp-stream-raw.c
parentbaffaa57693681c163723962445551c677f8f51b (diff)
downloadgsoc2013-evolution-d9b76e981fae89ad0da878cb8bb5b261a9988ddd.tar.gz
gsoc2013-evolution-d9b76e981fae89ad0da878cb8bb5b261a9988ddd.tar.zst
gsoc2013-evolution-d9b76e981fae89ad0da878cb8bb5b261a9988ddd.zip
If the close() is successful, set the fd to -1.
2001-01-15 Jeffrey Stedfast <fejj@ximian.com> * camel-stream-fs.c (stream_close): If the close() is successful, set the fd to -1. * camel-tcp-stream-raw.c: Removed the disconnect() method. (stream_close): If the close() is successful, set the sockfd to -1. * camel-tcp-stream-ssl.c: Removed the disconnect() method. (stream_close): If the close() is successful, set the sockfd to NULL. * camel-tcp-stream.c (camel_tcp_stream_disconnect): Removed, easier to just use the close() method as it did the same thing anyway. svn path=/trunk/; revision=7522
Diffstat (limited to 'camel/camel-tcp-stream-raw.c')
-rw-r--r--camel/camel-tcp-stream-raw.c17
1 files changed, 6 insertions, 11 deletions
diff --git a/camel/camel-tcp-stream-raw.c b/camel/camel-tcp-stream-raw.c
index 53722034de..5886a30663 100644
--- a/camel/camel-tcp-stream-raw.c
+++ b/camel/camel-tcp-stream-raw.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_raw_class_init (CamelTcpStreamRawClass *camel_tcp_stream_raw_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,11 @@ stream_flush (CamelStream *stream)
static int
stream_close (CamelStream *stream)
{
- g_warning ("CamelTcpStreamRaw::close: Better to call ::disconnect.\n");
- return close (((CamelTcpStreamRaw *)stream)->sockfd);
+ if (close (((CamelTcpStreamRaw *)stream)->sockfd) == -1)
+ return -1;
+
+ ((CamelTcpStreamRaw *)stream)->sockfd = -1;
+ return 0;
}
@@ -193,12 +194,6 @@ stream_connect (CamelTcpStream *stream, struct hostent *host, int port)
return 0;
}
-static int
-stream_disconnect (CamelTcpStream *stream)
-{
- return close (((CamelTcpStreamRaw *)stream)->sockfd);
-}
-
static int
get_sockopt_level (const CamelSockOptData *data)
@@ -268,7 +263,7 @@ stream_getsockopt (CamelTcpStream *stream, CamelSockOptData *data)
static int
stream_setsockopt (CamelTcpStream *stream, const CamelSockOptData *data)
{
- int optname, optlen;
+ int optname;
if ((optname = get_sockopt_optname (data)) == -1)
return -1;