Adding openssl.pc to the repository was a mistake,
[openssl.git] / e_os.h
diff --git a/e_os.h b/e_os.h
index 6d326e54e3e01d3dffe6d65ffe589885e9605cf0..9992c8521830070d6a0f8c4781bb6c895cf4f3a4 100644 (file)
--- a/e_os.h
+++ b/e_os.h
@@ -154,6 +154,13 @@ extern "C" {
 #define readsocket(s,b,n)      recv((s),(b),(n),0)
 #define writesocket(s,b,n)     send((s),(b),(n),0)
 #define EADDRINUSE             WSAEADDRINUSE
+#elif defined(__DJGPP__)
+#define WATT32
+#define get_last_socket_error()        errno
+#define clear_socket_error()   errno=0
+#define closesocket(s)         close_s(s)
+#define readsocket(s,b,n)      read_s(s,b,n)
+#define writesocket(s,b,n)     send(s,b,n,0)
 #elif defined(MAC_OS_pre_X)
 #define get_last_socket_error()        errno
 #define clear_socket_error()   errno=0
@@ -207,7 +214,7 @@ extern "C" {
 #    define S_IFMT     _S_IFMT
 #  endif
 
-#  if !defined(WINNT)
+#  if !defined(WINNT) && !defined(__DJGPP__)
 #    define NO_SYSLOG
 #  endif
 #  define NO_DIRENT
@@ -222,6 +229,13 @@ extern "C" {
 #  include <io.h>
 #  include <fcntl.h>
 
+#  ifdef OPENSSL_SYS_WINCE
+#    include <stdio_extras.h>
+#    include <stdlib_extras.h>
+#    include <string_extras.h>
+#    include <winsock_extras.h>
+#  endif
+
 #  define ssize_t long
 
 #  if defined (__BORLANDC__)
@@ -251,7 +265,11 @@ extern "C" {
 #  define SSLEAY_CONF  OPENSSL_CONF
 #  define NUL_DEV      "nul"
 #  define RFILE                ".rnd"
-#  define DEFAULT_HOME  "C:"
+#  ifdef OPENSSL_SYS_WINCE
+#    define DEFAULT_HOME  ""
+#  else
+#    define DEFAULT_HOME  "C:"
+#  endif
 
 #else /* The non-microsoft world world */
 
@@ -344,7 +362,7 @@ extern "C" {
 /*************/
 
 #ifdef USE_SOCKETS
-#  if (defined(WINDOWS) || defined(MSDOS)) && !defined(__DJGPP__)
+#  if defined(WINDOWS) || defined(MSDOS)
       /* windows world */
 
 #    ifdef OPENSSL_NO_SOCK
@@ -352,13 +370,18 @@ extern "C" {
 #      define SSLeay_Read(a,b,c)       (-1)
 #      define SHUTDOWN(fd)             close(fd)
 #      define SHUTDOWN2(fd)            close(fd)
-#    else
+#    elif !defined(__DJGPP__)
 #      include <winsock.h>
 extern HINSTANCE _hInstance;
 #      define SSLeay_Write(a,b,c)      send((a),(b),(c),0)
 #      define SSLeay_Read(a,b,c)       recv((a),(b),(c),0)
 #      define SHUTDOWN(fd)             { shutdown((fd),0); closesocket(fd); }
 #      define SHUTDOWN2(fd)            { shutdown((fd),2); closesocket(fd); }
+#    else
+#      define SSLeay_Write(a,b,c)      write_s(a,b,c,0)
+#      define SSLeay_Read(a,b,c)       read_s(a,b,c)
+#      define SHUTDOWN(fd)             close_s(fd)
+#      define SHUTDOWN2(fd)            close_s(fd)
 #    endif
 
 #  elif defined(MAC_OS_pre_X)