CygWin32 support.
[openssl.git] / e_os.h
diff --git a/e_os.h b/e_os.h
index dc28cd6171edf0fb78c21126c58857148e67f5f8..95590a7cb2606be26e16638446e30de983ddae2c 100644 (file)
--- a/e_os.h
+++ b/e_os.h
@@ -87,6 +87,7 @@ extern "C" {
 #  ifndef MAC_OS_GUSI_SOURCE
 #    define MAC_OS_pre_X
 #    define NO_SYS_TYPES_H
+     typedef long ssize_t;
 #  endif
 #  define NO_SYS_PARAM_H
 #  define NO_CHMOD
@@ -107,11 +108,11 @@ extern "C" {
 #  define MS_STATIC
 #endif
 
-#if defined(_WIN32) && !defined(WIN32)
+#if defined(_WIN32) && !defined(WIN32) && !defined(__CYGWIN32__)
 #  define WIN32
 #endif
 
-#if defined(WIN32) || defined(WIN16)
+#if (defined(WIN32) || defined(WIN16)) && !defined(__CYGWIN32__)
 #  ifndef WINDOWS
 #    define WINDOWS
 #  endif
@@ -135,7 +136,7 @@ extern "C" {
 #define clear_sys_error()      errno=0
 #endif
 
-#ifdef WINDOWS
+#if defined(WINDOWS) && !defined(__CYGWIN32__)
 #define get_last_socket_error()        WSAGetLastError()
 #define clear_socket_error()   WSASetLastError(0)
 #define readsocket(s,b,n)      recv((s),(b),(n),0)
@@ -169,7 +170,7 @@ extern "C" {
 #  define NO_FP_API
 #endif
 
-#if defined(WINDOWS) || defined(MSDOS)
+#if (defined(WINDOWS) || defined(MSDOS)) && !defined(__CYGWIN32__)
 
 #  ifndef S_IFDIR
 #    define S_IFDIR    _S_IFDIR
@@ -402,6 +403,10 @@ extern HINSTANCE _hInstance;
 #endif
 #endif
 
+#if defined(sun) && !defined(__svr4__) && !defined(__SVR4)
+#define memmove(s1,s2,b) bcopy((s2),(s1),(n))
+#endif
+
 /***********************************************/
 
 /* do we need to do this for getenv.