Make MD5 assembler code able to handle messages larger than 2GB on 32-bit
[openssl.git] / e_os.h
diff --git a/e_os.h b/e_os.h
index f7d09c52954505bc40c3c5c15ccd7cff7a158088..aad0a7eaebb3d3bbdbc67d92710c8e1c28bcddc4 100644 (file)
--- a/e_os.h
+++ b/e_os.h
@@ -184,7 +184,6 @@ extern "C" {
 #endif
 
 #ifdef WIN16
-#  define OPENSSL_NO_FP_API
 #  define MS_CALLBACK  _far _loadds
 #  define MS_FAR       _far
 #else
@@ -193,6 +192,7 @@ extern "C" {
 #endif
 
 #ifdef OPENSSL_NO_STDIO
+#  undef OPENSSL_NO_FP_API
 #  define OPENSSL_NO_FP_API
 #endif
 
@@ -250,7 +250,7 @@ extern "C" {
 #    define EXIT(n) _wsetexit(_WINEXITNOPERSIST)
 #    define OPENSSL_EXIT(n) do { if (n == 0) EXIT(n); return(n); } while(0)
 #  else
-#    define EXIT(n) return(n)
+#    define EXIT(n) exit(n)
 #  endif
 #  define LIST_SEPARATOR_CHAR ';'
 #  ifndef X_OK
@@ -331,6 +331,8 @@ extern "C" {
 #      define pid_t int /* pid_t is missing on NEXTSTEP/OPENSTEP
                          * (unless when compiling with -D_POSIX_SOURCE,
                          * which doesn't work for us) */
+#    endif
+#    if defined(NeXT) || defined(OPENSSL_SYS_NEWS4) || defined(OPENSSL_SYS_SUNOS)
 #      define ssize_t int /* ditto */
 #    endif
 #    ifdef OPENSSL_SYS_NEWS4 /* setvbuf is missing on mips-sony-bsd */
@@ -501,11 +503,30 @@ extern char *sys_errlist[]; extern int sys_nerr;
 #define IRIX_CC_BUG    /* CDS++ up to V2.0Bsomething suffered from the same bug.*/
 #endif
 
+#if defined(OPENSSL_SYS_WINDOWS)
+#  define strcasecmp _stricmp
+#  define strncasecmp _strnicmp
+#elif defined(OPENSSL_SYS_VMS)
+/* VMS below version 7.0 doesn't have strcasecmp() */
+#  include <openssl/o_str.h>
+#  define strcasecmp OPENSSL_strcasecmp
+#  define strncasecmp OPENSSL_strncasecmp
+#elif defined(OPENSSL_SYS_OS2) && defined(__EMX__)
+#  define strcasecmp stricmp
+#  define strncasecmp strnicmp
+#else
+#  ifdef NO_STRINGS_H
+    int        strcasecmp();
+    int        strncasecmp();
+#  else
+#    include <strings.h>
+#  endif /* NO_STRINGS_H */
+#endif
+
 #if defined(OPENSSL_SYS_OS2) && defined(__EMX__)
 # include <io.h>
 # include <fcntl.h>
 # define NO_SYSLOG
-# define strcasecmp stricmp
 #endif
 
 /* vxworks */
@@ -520,7 +541,7 @@ extern char *sys_errlist[]; extern int sys_nerr;
 #if defined(ioctlsocket)
 #undef ioctlsocket
 #endif
-#define ioctlsocket(a,b,c) ioctl((a),(b),*(c))
+#define ioctlsocket(a,b,c)  ioctl((a),(b),*(int*)(c))
 
 #include <vxWorks.h>
 #include <sockLib.h>