Dear Sir,
Since 4 months I regularly re-build openssl and stunnel versions for
Windows CE environment.
I am currently using the MS EVC4 sp2 compiler with the wce420 SDK.
I am also using the wcecompat 1.2 library available here :
http://www.essemer.com.au/wcecompat-1.2.zip.
I faced various compilation issues with openssl, and a few unicode bugs
with stunnel.
I have fixed myself all this bugs.
For openssl, I only had problems with improper #define for the WCE
environment.
I first modified the openssl 098a then 098h versions.
But tonight I just modified the openssl-0.9.8-stable-SNAP-20090102
version so as to be sure to have a recent version to work on.
Please find enclosed my patch.
ONLY three .c files have been modified :
crypto/o_str.c
crypto/rand/randfile.c
crypto/x509/by_dir.c
NOTE : I would also suggest to modify the INSTALL.WCE file just to
mention EVC4 and wcecompat 1.2 instead of evc3 and wcecompat 1.1.
NOTE 2 : just in case it may help, I compile (patched versions of)
openssl and stunnel for ARMV4 processors and WCE420 platform, and the
result works fine for HTC WM5 and WM6 smartphones.
Thank you very much for your work.
Yours sincerely,
Pierre Delaage
Only in
./openssl-0.9.8-stable-SNAP-20090102\openssl-0.9.8-stable-SNAP-20090102/crypto:
buildinf.h
diff -ru
./openssl-0.9.8-stable-SNAP-20090102ref\openssl-0.9.8-stable-SNAP-20090102ref/crypto/o_str.c
./openssl-0.9.8-stable-SNAP-20090102\openssl-0.9.8-stable-SNAP-20090102/crypto/o_str.c
---
./openssl-0.9.8-stable-SNAP-20090102ref\openssl-0.9.8-stable-SNAP-20090102ref/crypto/o_str.c
2008-03-29 15:01:20.000000000 +0100
+++
./openssl-0.9.8-stable-SNAP-20090102\openssl-0.9.8-stable-SNAP-20090102/crypto/o_str.c
2009-01-03 07:17:36.289501000 +0100
@@ -60,7 +60,7 @@
#include <e_os.h>
#include "o_str.h"
-#if !defined(OPENSSL_IMPLEMENTS_strncasecmp) && !defined(OPENSSL_SYSNAME_WIN32)
+#if !defined(OPENSSL_IMPLEMENTS_strncasecmp) &&
!defined(OPENSSL_SYSNAME_WIN32) && !defined(OPENSSL_SYSNAME_WINCE) // pdelaage
added WINCE on 20081203
# include <strings.h>
#endif
Only in
./openssl-0.9.8-stable-SNAP-20090102\openssl-0.9.8-stable-SNAP-20090102/crypto:
opensslconf.h
Only in
./openssl-0.9.8-stable-SNAP-20090102\openssl-0.9.8-stable-SNAP-20090102/crypto:
opensslconf.h.bak
diff -ru
./openssl-0.9.8-stable-SNAP-20090102ref\openssl-0.9.8-stable-SNAP-20090102ref/crypto/rand/randfile.c
./openssl-0.9.8-stable-SNAP-20090102\openssl-0.9.8-stable-SNAP-20090102/crypto/rand/randfile.c
---
./openssl-0.9.8-stable-SNAP-20090102ref\openssl-0.9.8-stable-SNAP-20090102ref/crypto/rand/randfile.c
2008-12-30 15:01:12.000000000 +0100
+++
./openssl-0.9.8-stable-SNAP-20090102\openssl-0.9.8-stable-SNAP-20090102/crypto/rand/randfile.c
2009-01-03 00:07:28.084727000 +0100
@@ -82,10 +82,12 @@
#endif
#ifdef _WIN32
+#ifndef _WIN32_WCE // added by pdelaage on 2009-01-03
#define stat _stat
#define chmod _chmod
#define open _open
#define fdopen _fdopen
+#endif // added by pdelaage on 2009-01-03
#endif
#undef BUFSIZE
diff -ru
./openssl-0.9.8-stable-SNAP-20090102ref\openssl-0.9.8-stable-SNAP-20090102ref/crypto/x509/by_dir.c
./openssl-0.9.8-stable-SNAP-20090102\openssl-0.9.8-stable-SNAP-20090102/crypto/x509/by_dir.c
---
./openssl-0.9.8-stable-SNAP-20090102ref\openssl-0.9.8-stable-SNAP-20090102ref/crypto/x509/by_dir.c
2008-12-30 15:01:13.000000000 +0100
+++
./openssl-0.9.8-stable-SNAP-20090102\openssl-0.9.8-stable-SNAP-20090102/crypto/x509/by_dir.c
2009-01-03 00:10:12.846642500 +0100
@@ -75,7 +75,9 @@
#include <openssl/x509.h>
#ifdef _WIN32
+#ifndef _WIN32_WCE // added by pdelaage on 2009-01-03
#define stat _stat
+#endif // added by pdelaage on 2009-01-03
#endif
typedef struct lookup_dir_st
Only in
./openssl-0.9.8-stable-SNAP-20090102\openssl-0.9.8-stable-SNAP-20090102: inc32
Only in
./openssl-0.9.8-stable-SNAP-20090102\openssl-0.9.8-stable-SNAP-20090102:
Makefile
Only in
./openssl-0.9.8-stable-SNAP-20090102\openssl-0.9.8-stable-SNAP-20090102:
Makefile.bak
Only in
./openssl-0.9.8-stable-SNAP-20090102\openssl-0.9.8-stable-SNAP-20090102: MINFO
Only in
./openssl-0.9.8-stable-SNAP-20090102\openssl-0.9.8-stable-SNAP-20090102/ms:
ce.mak
Only in
./openssl-0.9.8-stable-SNAP-20090102\openssl-0.9.8-stable-SNAP-20090102/ms:
cedll.mak
Only in
./openssl-0.9.8-stable-SNAP-20090102\openssl-0.9.8-stable-SNAP-20090102/ms:
libeay32.def
Only in
./openssl-0.9.8-stable-SNAP-20090102\openssl-0.9.8-stable-SNAP-20090102/ms:
nt.mak
Only in
./openssl-0.9.8-stable-SNAP-20090102\openssl-0.9.8-stable-SNAP-20090102/ms:
ntdll.mak
Only in
./openssl-0.9.8-stable-SNAP-20090102\openssl-0.9.8-stable-SNAP-20090102/ms:
ssleay32.def
Only in
./openssl-0.9.8-stable-SNAP-20090102\openssl-0.9.8-stable-SNAP-20090102/ms:
version32.rc
Only in
./openssl-0.9.8-stable-SNAP-20090102\openssl-0.9.8-stable-SNAP-20090102:
mywcebuild.bat
Only in
./openssl-0.9.8-stable-SNAP-20090102\openssl-0.9.8-stable-SNAP-20090102:
out32dll_ARMV4
Only in
./openssl-0.9.8-stable-SNAP-20090102\openssl-0.9.8-stable-SNAP-20090102:
tmp32dll_ARMV4