From 5df01b29a27cb04e3fcb350cd70e59135e04849c Mon Sep 17 00:00:00 2001 From: Jeffrey Stedfast Date: Thu, 29 Aug 2002 03:46:53 +0000 Subject: Fixed `set' to hold the correct value when setting the flags. 2002-08-28 Jeffrey Stedfast * camel-tcp-stream-openssl.c (stream_setsockopt): Fixed `set' to hold the correct value when setting the flags. svn path=/trunk/; revision=17913 --- camel/camel-tcp-stream-openssl.c | 16 ++++++++-------- 1 file changed, 8 insertions(+), 8 deletions(-) (limited to 'camel/camel-tcp-stream-openssl.c') diff --git a/camel/camel-tcp-stream-openssl.c b/camel/camel-tcp-stream-openssl.c index 324e58dd08..abd2e5d9c0 100644 --- a/camel/camel-tcp-stream-openssl.c +++ b/camel/camel-tcp-stream-openssl.c @@ -832,16 +832,16 @@ stream_getsockopt (CamelTcpStream *stream, CamelSockOptData *data) if (data->option == CAMEL_SOCKOPT_NONBLOCKING) { int flags; - flags = fcntl (((CamelTcpStreamSSL *)stream)->priv->sockfd, F_GETFL); + flags = fcntl (((CamelTcpStreamSSL *) stream)->priv->sockfd, F_GETFL); if (flags == -1) return -1; - data->value.non_blocking = flags & O_NONBLOCK; + data->value.non_blocking = flags & O_NONBLOCK ? TRUE : FALSE; return 0; } - return getsockopt (((CamelTcpStreamSSL *)stream)->priv->sockfd, + return getsockopt (((CamelTcpStreamSSL *) stream)->priv->sockfd, get_sockopt_level (data), optname, (void *) &data->value, @@ -859,20 +859,20 @@ stream_setsockopt (CamelTcpStream *stream, const CamelSockOptData *data) if (data->option == CAMEL_SOCKOPT_NONBLOCKING) { int flags, set; - flags = fcntl (((CamelTcpStreamSSL *)stream)->priv->sockfd, F_GETFL); + flags = fcntl (((CamelTcpStreamSSL *) stream)->priv->sockfd, F_GETFL); if (flags == -1) return -1; - set = data->value.non_blocking ? 1 : 0; - flags = (flags & ~O_NONBLOCK) | (set & O_NONBLOCK); + set = data->value.non_blocking ? O_NONBLOCK : 0; + flags = (flags & ~O_NONBLOCK) | set; - if (fcntl (((CamelTcpStreamSSL *)stream)->priv->sockfd, F_SETFL, flags) == -1) + if (fcntl (((CamelTcpStreamSSL *) stream)->priv->sockfd, F_SETFL, flags) == -1) return -1; return 0; } - return setsockopt (((CamelTcpStreamSSL *)stream)->priv->sockfd, + return setsockopt (((CamelTcpStreamSSL *) stream)->priv->sockfd, get_sockopt_level (data), optname, (void *) &data->value, -- cgit v1.2.3