Loading vio/viossl.c +28 −17 Original line number Diff line number Diff line Loading @@ -131,23 +131,29 @@ int vio_ssl_fastsend(Vio * vio __attribute__((unused))) int r=0; DBUG_ENTER("vio_ssl_fastsend"); #ifdef IPTOS_THROUGHPUT #if defined(IPTOS_THROUGHPUT) && !defined(__EMX__) { #ifndef __EMX__ int tos= IPTOS_THROUGHPUT; if (!setsockopt(vio->sd, IPPROTO_IP, IP_TOS, (void *) &tos, sizeof(tos))) #endif /* !__EMX__ */ r= setsockopt(vio->sd, IPPROTO_IP, IP_TOS, (void *) &tos, sizeof(tos)); } #endif /* IPTOS_THROUGHPUT && !__EMX__ */ if (!r) { #ifdef __WIN__ BOOL nodelay= 1; r= setsockopt(vio->sd, IPPROTO_TCP, TCP_NODELAY, (const char*) &nodelay, sizeof(nodelay)); #else int nodelay= 1; if (setsockopt(vio->sd, IPPROTO_TCP, TCP_NODELAY, (void *) &nodelay, sizeof(nodelay))) { DBUG_PRINT("warning", ("Couldn't set socket option for fast send")); r= -1; } r= setsockopt(vio->sd, IPPROTO_TCP, TCP_NODELAY, (void*) &nodelay, sizeof(nodelay)); #endif /* __WIN__ */ } if (r) { DBUG_PRINT("warning", ("Couldn't set socket option for fast send")); r= -1; } #endif /* IPTOS_THROUGHPUT */ DBUG_PRINT("exit", ("%d", r)); DBUG_RETURN(r); } Loading Loading @@ -424,6 +430,11 @@ void vio_ssl_timeout(Vio *vio __attribute__((unused)), uint which __attribute__((unused)), uint timeout __attribute__((unused))) { /* Not yet implemented (non critical) */ #ifdef __WIN__ ulong wait_timeout= (ulong) timeout * 1000; (void) setsockopt(vio->sd, SOL_SOCKET, which ? SO_SNDTIMEO : SO_RCVTIMEO, (char*) &wait_timeout, sizeof(wait_timeout)); #endif /* __WIN__ */ } #endif /* HAVE_OPENSSL */ Loading
vio/viossl.c +28 −17 Original line number Diff line number Diff line Loading @@ -131,23 +131,29 @@ int vio_ssl_fastsend(Vio * vio __attribute__((unused))) int r=0; DBUG_ENTER("vio_ssl_fastsend"); #ifdef IPTOS_THROUGHPUT #if defined(IPTOS_THROUGHPUT) && !defined(__EMX__) { #ifndef __EMX__ int tos= IPTOS_THROUGHPUT; if (!setsockopt(vio->sd, IPPROTO_IP, IP_TOS, (void *) &tos, sizeof(tos))) #endif /* !__EMX__ */ r= setsockopt(vio->sd, IPPROTO_IP, IP_TOS, (void *) &tos, sizeof(tos)); } #endif /* IPTOS_THROUGHPUT && !__EMX__ */ if (!r) { #ifdef __WIN__ BOOL nodelay= 1; r= setsockopt(vio->sd, IPPROTO_TCP, TCP_NODELAY, (const char*) &nodelay, sizeof(nodelay)); #else int nodelay= 1; if (setsockopt(vio->sd, IPPROTO_TCP, TCP_NODELAY, (void *) &nodelay, sizeof(nodelay))) { DBUG_PRINT("warning", ("Couldn't set socket option for fast send")); r= -1; } r= setsockopt(vio->sd, IPPROTO_TCP, TCP_NODELAY, (void*) &nodelay, sizeof(nodelay)); #endif /* __WIN__ */ } if (r) { DBUG_PRINT("warning", ("Couldn't set socket option for fast send")); r= -1; } #endif /* IPTOS_THROUGHPUT */ DBUG_PRINT("exit", ("%d", r)); DBUG_RETURN(r); } Loading Loading @@ -424,6 +430,11 @@ void vio_ssl_timeout(Vio *vio __attribute__((unused)), uint which __attribute__((unused)), uint timeout __attribute__((unused))) { /* Not yet implemented (non critical) */ #ifdef __WIN__ ulong wait_timeout= (ulong) timeout * 1000; (void) setsockopt(vio->sd, SOL_SOCKET, which ? SO_SNDTIMEO : SO_RCVTIMEO, (char*) &wait_timeout, sizeof(wait_timeout)); #endif /* __WIN__ */ } #endif /* HAVE_OPENSSL */