Welcome to mirror list, hosted at ThFree Co, Russian Federation.

github.com/openssl/openssl.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
path: root/e_os.h
diff options
context:
space:
mode:
authorRichard Levitte <levitte@openssl.org>2002-04-06 15:35:45 +0400
committerRichard Levitte <levitte@openssl.org>2002-04-06 15:35:45 +0400
commitd3cbf7d86af915946bb65f3cfcf6554175cc4a68 (patch)
treeea04669a17a9b988377be1a595230f313262205b /e_os.h
parent313bf45e42529c456935aeee966fbce03aedbc97 (diff)
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.
Diffstat (limited to 'e_os.h')
-rw-r--r--e_os.h7
1 files changed, 7 insertions, 0 deletions
diff --git a/e_os.h b/e_os.h
index 0bb2bfa693..4436495c69 100644
--- a/e_os.h
+++ b/e_os.h
@@ -160,6 +160,13 @@ extern "C" {
#define closesocket(s) MacSocket_close(s)
#define readsocket(s,b,n) MacSocket_recv((s),(b),(n),true)
#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
#define get_last_socket_error() errno
#define clear_socket_error() errno=0