When built under Cygwin, with the -mno-cygwin option, OpenSSL
0.9.8 builds, tests, and installs fine (only tested with no-idea
no-shared). I noticed, however, that I was getting 5 warnings from
gcc. The attached patch should fix the warnings. When tested against
0.9.8-stable-SNAP-20050709, with the patch applied, it builds without
any warnings under cygwin for mingw. I also tested for DJGPP, and it
builds fine on that platform with the patch. I hope that no other
platforms will be adversely affected.

Since I am in the US, I am also sending a copy of the patch to the usual
US government addresses.
                            Doug

-- 
Doug Kaufman
Internet: [EMAIL PROTECTED]
--- apps/speed.c.ori    2005-05-31 10:56:18.000000000 -0800
+++ apps/speed.c        2005-07-08 22:31:24.000000000 -0800
@@ -2508,6 +2508,7 @@
        results[alg][run_no]=((double)count)/time_used*lengths[run_no];
        }
 
+#ifdef HAVE_FORK
 static char *sstrsep(char **string, const char *delim)
     {
     char isdelim[256];
@@ -2539,7 +2540,6 @@
     return token;
     }
 
-#ifdef HAVE_FORK
 static int do_multi(int multi)
        {
        int n;
--- crypto/dso/dso_win32.c.ori  2005-06-27 14:21:12.000000000 -0800
+++ crypto/dso/dso_win32.c      2005-07-08 22:23:02.000000000 -0800
@@ -306,8 +306,8 @@
        memset(result, 0, sizeof(struct file_st));
        position = IN_DEVICE;
 
-       if(filename[0] == '\\' && filename[1] == '\\'
-               || filename[0] == '/' && filename[1] == '/')
+       if((filename[0] == '\\' && filename[1] == '\\')
+               || (filename[0] == '/' && filename[1] == '/'))
                {
                position = IN_NODE;
                filename += 2;
--- crypto/engine/eng_padlock.c.ori     2005-05-31 10:56:18.000000000 -0800
+++ crypto/engine/eng_padlock.c 2005-07-07 23:30:28.000000000 -0800
@@ -127,6 +127,9 @@
 # define alloca _alloca
 #else
 # include <stdlib.h>
+#ifdef __MINGW32__
+# include <malloc.h>
+#endif
 #endif
 
 /* Function for ENGINE detection and control */
--- crypto/LPdir_win.c.ori      2004-09-23 15:11:40.000000000 -0800
+++ crypto/LPdir_win.c  2005-07-08 22:37:10.000000000 -0800
@@ -54,7 +54,6 @@
 
 const char *LP_find_file(LP_DIR_CTX **ctx, const char *directory)
 {
-  struct dirent *direntry = NULL;
 
   if (ctx == NULL || directory == NULL)
     {
--- engines/e_aep.c.ori 2005-06-17 14:27:28.000000000 -0800
+++ engines/e_aep.c     2005-07-08 22:27:32.000000000 -0800
@@ -57,7 +57,7 @@
 #include <string.h>
 
 #include <openssl/e_os2.h>
-#if !defined(OPENSSL_SYS_MSDOS) || defined(__DJGPP__)
+#if !defined(OPENSSL_SYS_MSDOS) || defined(__DJGPP__) || defined(__MINGW32__)
 #include <sys/types.h>
 #include <unistd.h>
 #else

Reply via email to