Use recv() and send() for socket communication on VMS instead of read()

and write().  The reason is that read() and write() make additional record
level locking which causes hangs of Compaq Secure Web Server (Apache) with
SSL.
Submitted by Compaq.
This commit is contained in:
Richard Levitte 2002-04-06 11:35:49 +00:00
parent 83d092f785
commit 1fc02dcf6a

7
e_os.h
View File

@ -160,6 +160,13 @@ extern "C" {
#define closesocket(s) MacSocket_close(s) #define closesocket(s) MacSocket_close(s)
#define readsocket(s,b,n) MacSocket_recv((s),(b),(n),true) #define readsocket(s,b,n) MacSocket_recv((s),(b),(n),true)
#define writesocket(s,b,n) MacSocket_send((s),(b),(n)) #define writesocket(s,b,n) MacSocket_send((s),(b),(n))
#elif defined(VMS)
#define get_last_socket_error() errno
#define clear_socket_error() errno=0
#define ioctlsocket(a,b,c) ioctl(a,b,c)
#define closesocket(s) close(s)
#define readsocket(s,b,n) recv((s),(b),(n),0)
#define writesocket(s,b,n) send((s),(b),(n),0)
#else #else
#define get_last_socket_error() errno #define get_last_socket_error() errno
#define clear_socket_error() errno=0 #define clear_socket_error() errno=0