From 88af808d055727be6d139e6973e2ac7218feec34 Mon Sep 17 00:00:00 2001 From: Thomas Faber Date: Sun, 22 May 2016 10:53:23 +0000 Subject: [PATCH] [SCHANNEL] - Correctly check for ROS_SCHAN_IS_BLOCKING CORE-11285 svn path=/trunk/; revision=71372 --- reactos/dll/win32/schannel/schannel_mbedtls.c | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/reactos/dll/win32/schannel/schannel_mbedtls.c b/reactos/dll/win32/schannel/schannel_mbedtls.c index 90f0c79912e..86ae387f0c8 100644 --- a/reactos/dll/win32/schannel/schannel_mbedtls.c +++ b/reactos/dll/win32/schannel/schannel_mbedtls.c @@ -46,9 +46,9 @@ #include #include -#define ROS_SCHAN_IS_BLOCKING (0xCCCFFFFF & 0xFFF00000) -#define ROS_SCHAN_IS_BLOCKING_MARSHALL(read_len) (ROS_SCHAN_IS_BLOCKING | (read_len & 0x000FFFFF)) -#define ROS_SCHAN_IS_BLOCKING_RETRIEVE(read_len) (read_len & 0x000FFFFF) +#define ROS_SCHAN_IS_BLOCKING(read_len) ((read_len & 0xFFF00000) == 0xCCC00000) +#define ROS_SCHAN_IS_BLOCKING_MARSHALL(read_len) ((read_len & 0x000FFFFF) | 0xCCC00000) +#define ROS_SCHAN_IS_BLOCKING_RETRIEVE(read_len) (read_len & 0x000FFFFF) #ifndef __REACTOS__ /* WINE defines the back-end glue in here */ @@ -281,7 +281,7 @@ SECURITY_STATUS schan_imp_handshake(schan_imp_session session) TRACE("MBEDTLS schan_imp_handshake: %p err: %#x \n", session, err); - if ((err & ROS_SCHAN_IS_BLOCKING) == ROS_SCHAN_IS_BLOCKING) + if (ROS_SCHAN_IS_BLOCKING(err)) { TRACE("Received ERR_NET_WANT_READ/WRITE... let's try again!\n"); return SEC_I_CONTINUE_NEEDED; @@ -623,7 +623,7 @@ SECURITY_STATUS schan_imp_send(schan_imp_session session, const void *buffer, *length = ret; } - else if ((ret & ROS_SCHAN_IS_BLOCKING) == ROS_SCHAN_IS_BLOCKING) + else if (ROS_SCHAN_IS_BLOCKING(ret)) { *length = ROS_SCHAN_IS_BLOCKING_RETRIEVE(ret); @@ -665,7 +665,7 @@ SECURITY_STATUS schan_imp_recv(schan_imp_session session, void *buffer, *length = ret; } - else if ((ret & ROS_SCHAN_IS_BLOCKING) == ROS_SCHAN_IS_BLOCKING) + else if (ROS_SCHAN_IS_BLOCKING(ret)) { *length = ROS_SCHAN_IS_BLOCKING_RETRIEVE(ret);