projects
/
oweals
/
openssl.git
/ commitdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
| commitdiff |
tree
raw
|
patch
|
inline
| side by side (parent:
9a1a5b8
)
Final(?) WinCE update.
author
Andy Polyakov
<appro@openssl.org>
Sun, 7 Aug 2005 22:21:49 +0000
(22:21 +0000)
committer
Andy Polyakov
<appro@openssl.org>
Sun, 7 Aug 2005 22:21:49 +0000
(22:21 +0000)
CHANGES
patch
|
blob
|
history
crypto/des/des_old.h
patch
|
blob
|
history
crypto/ec/ectest.c
patch
|
blob
|
history
crypto/rand/rand_win.c
patch
|
blob
|
history
crypto/rc2/rc2_skey.c
patch
|
blob
|
history
crypto/rsa/rsa_pss.c
patch
|
blob
|
history
crypto/ui/ui_locl.h
patch
|
blob
|
history
util/pl/VC-32.pl
patch
|
blob
|
history
diff --git
a/CHANGES
b/CHANGES
index d025d780a3783731dfb0afd87365c648a895435f..bc7e0709e0f2094bee9c393c79f503e1c981db65 100644
(file)
--- a/
CHANGES
+++ b/
CHANGES
@@
-14,6
+14,9
@@
Changes between 0.9.8 and 0.9.8a [XX xxx XXXX]
Changes between 0.9.8 and 0.9.8a [XX xxx XXXX]
+ *) Extended Windows CE support.
+ [Satoshi Nakamura and Andy Polyakov]
+
*) Initialize SSL_METHOD structures at compile time instead of during
runtime, thus removing the need for a lock.
[Steve Henson]
*) Initialize SSL_METHOD structures at compile time instead of during
runtime, thus removing the need for a lock.
[Steve Henson]
diff --git
a/crypto/des/des_old.h
b/crypto/des/des_old.h
index 9f439926c3b60d5a8a3c31699e0802130b398e75..1b0620c3a2e184d95d47e906caa3db0372eacd53 100644
(file)
--- a/
crypto/des/des_old.h
+++ b/
crypto/des/des_old.h
@@
-116,6
+116,10
@@
extern "C" {
#endif
extern "C" {
#endif
+#ifdef _
+#undef _
+#endif
+
typedef unsigned char _ossl_old_des_cblock[8];
typedef struct _ossl_old_des_ks_struct
{
typedef unsigned char _ossl_old_des_cblock[8];
typedef struct _ossl_old_des_ks_struct
{
diff --git
a/crypto/ec/ectest.c
b/crypto/ec/ectest.c
index fdca4b4504baf61a11f114f45cf1088b91be3c69..df506e1b4706dd2045d0d669b24b6a08bee8ceba 100644
(file)
--- a/
crypto/ec/ectest.c
+++ b/
crypto/ec/ectest.c
@@
-95,6
+95,11
@@
int main(int argc, char * argv[]) { puts("Elliptic curves are disabled."); retur
#include <openssl/rand.h>
#include <openssl/bn.h>
#include <openssl/rand.h>
#include <openssl/bn.h>
+#if defined(_MSC_VER) && defined(_MIPS_) && _MSC_VER<1300
+/* suppress "too big too optimize" warning */
+#pragma warning(disable:4959)
+#endif
+
#define ABORT do { \
fflush(stdout); \
fprintf(stderr, "%s:%d: ABORT\n", __FILE__, __LINE__); \
#define ABORT do { \
fflush(stdout); \
fprintf(stderr, "%s:%d: ABORT\n", __FILE__, __LINE__); \
diff --git
a/crypto/rand/rand_win.c
b/crypto/rand/rand_win.c
index 3851d85bcc4e08d098bea9860f14b33eea8fa37a..a28fb6ea554a976ee5750177dddadb268b257b67 100644
(file)
--- a/
crypto/rand/rand_win.c
+++ b/
crypto/rand/rand_win.c
@@
-156,6
+156,7
@@
typedef struct tagCURSORINFO
#define CURSOR_SHOWING 0x00000001
#endif /* CURSOR_SHOWING */
#define CURSOR_SHOWING 0x00000001
#endif /* CURSOR_SHOWING */
+#if !defined(OPENSSL_SYS_WINCE)
typedef BOOL (WINAPI *CRYPTACQUIRECONTEXTW)(HCRYPTPROV *, LPCWSTR, LPCWSTR,
DWORD, DWORD);
typedef BOOL (WINAPI *CRYPTGENRANDOM)(HCRYPTPROV, DWORD, BYTE *);
typedef BOOL (WINAPI *CRYPTACQUIRECONTEXTW)(HCRYPTPROV *, LPCWSTR, LPCWSTR,
DWORD, DWORD);
typedef BOOL (WINAPI *CRYPTGENRANDOM)(HCRYPTPROV, DWORD, BYTE *);
@@
-175,9
+176,7
@@
typedef BOOL (WINAPI *THREAD32)(HANDLE, LPTHREADENTRY32);
typedef BOOL (WINAPI *MODULE32)(HANDLE, LPMODULEENTRY32);
#include <lmcons.h>
typedef BOOL (WINAPI *MODULE32)(HANDLE, LPMODULEENTRY32);
#include <lmcons.h>
-#ifndef OPENSSL_SYS_WINCE
#include <lmstats.h>
#include <lmstats.h>
-#endif
#if 1 /* The NET API is Unicode only. It requires the use of the UNICODE
* macro. When UNICODE is defined LPTSTR becomes LPWSTR. LMSTR was
* was added to the Platform SDK to allow the NET API to be used in
#if 1 /* The NET API is Unicode only. It requires the use of the UNICODE
* macro. When UNICODE is defined LPTSTR becomes LPWSTR. LMSTR was
* was added to the Platform SDK to allow the NET API to be used in
@@
-188,12
+187,12
@@
typedef NET_API_STATUS (NET_API_FUNCTION * NETSTATGET)
(LPWSTR, LPWSTR, DWORD, DWORD, LPBYTE*);
typedef NET_API_STATUS (NET_API_FUNCTION * NETFREE)(LPBYTE);
#endif /* 1 */
(LPWSTR, LPWSTR, DWORD, DWORD, LPBYTE*);
typedef NET_API_STATUS (NET_API_FUNCTION * NETFREE)(LPBYTE);
#endif /* 1 */
+#endif /* !OPENSSL_SYS_WINCE */
int RAND_poll(void)
{
MEMORYSTATUS m;
HCRYPTPROV hProvider = 0;
int RAND_poll(void)
{
MEMORYSTATUS m;
HCRYPTPROV hProvider = 0;
- BYTE buf[64];
DWORD w;
int good = 0;
DWORD w;
int good = 0;
@@
-208,18
+207,18
@@
int RAND_poll(void)
# if defined(_WIN32_WCE) && _WIN32_WCE>=300
/* Even though MSDN says _WIN32_WCE>=210, it doesn't seem to be available
* in commonly available implementations prior 300... */
# if defined(_WIN32_WCE) && _WIN32_WCE>=300
/* Even though MSDN says _WIN32_WCE>=210, it doesn't seem to be available
* in commonly available implementations prior 300... */
-# ifndef CryptAcquireContext
- /* reserve for broken header... */
-# define CryptAcquireContext CryptAcquireContextW
-# endif
+ {
+ BYTE buf[64];
/* poll the CryptoAPI PRNG */
/* The CryptoAPI returns sizeof(buf) bytes of randomness */
/* poll the CryptoAPI PRNG */
/* The CryptoAPI returns sizeof(buf) bytes of randomness */
- if (CryptAcquireContext(&hProvider, NULL, NULL, PROV_RSA_FULL, CRYPT_VERIFYCONTEXT))
+ if (CryptAcquireContextW(&hProvider, NULL, NULL, PROV_RSA_FULL,
+ CRYPT_VERIFYCONTEXT))
{
if (CryptGenRandom(hProvider, sizeof(buf), buf))
RAND_add(buf, sizeof(buf), sizeof(buf));
CryptReleaseContext(hProvider, 0);
}
{
if (CryptGenRandom(hProvider, sizeof(buf), buf))
RAND_add(buf, sizeof(buf), sizeof(buf));
CryptReleaseContext(hProvider, 0);
}
+ }
# endif
#else /* OPENSSL_SYS_WINCE */
/*
# endif
#else /* OPENSSL_SYS_WINCE */
/*
@@
-246,6
+245,7
@@
int RAND_poll(void)
CRYPTRELEASECONTEXT release = NULL;
NETSTATGET netstatget = NULL;
NETFREE netfree = NULL;
CRYPTRELEASECONTEXT release = NULL;
NETSTATGET netstatget = NULL;
NETFREE netfree = NULL;
+ BYTE buf[64];
if (netapi)
{
if (netapi)
{
diff --git
a/crypto/rc2/rc2_skey.c
b/crypto/rc2/rc2_skey.c
index cab3080c73dc7042cc7197c9936e446589a32188..49536420566b9021ed9061d960c9107c16293537 100644
(file)
--- a/
crypto/rc2/rc2_skey.c
+++ b/
crypto/rc2/rc2_skey.c
@@
-84,6
+84,10
@@
static unsigned char key_table[256]={
0xfe,0x7f,0xc1,0xad,
};
0xfe,0x7f,0xc1,0xad,
};
+#if defined(_MSC_VER) && defined(_ARM_)
+#pragma optimize("g",off)
+#endif
+
/* It has come to my attention that there are 2 versions of the RC2
* key schedule. One which is normal, and anther which has a hook to
* use a reduced key length.
/* It has come to my attention that there are 2 versions of the RC2
* key schedule. One which is normal, and anther which has a hook to
* use a reduced key length.
@@
-136,3
+140,6
@@
void RC2_set_key(RC2_KEY *key, int len, const unsigned char *data, int bits)
*(ki--)=((k[i]<<8)|k[i-1])&0xffff;
}
*(ki--)=((k[i]<<8)|k[i-1])&0xffff;
}
+#if defined(_MSC_VER)
+#pragma optimize("",on)
+#endif
diff --git
a/crypto/rsa/rsa_pss.c
b/crypto/rsa/rsa_pss.c
index 2815628f5f79d6033a4494d32977aa47dbe3262e..3280c9d40c0c63b767fbb31bb457848ced23c664 100644
(file)
--- a/
crypto/rsa/rsa_pss.c
+++ b/
crypto/rsa/rsa_pss.c
@@
-66,6
+66,10
@@
const static unsigned char zeroes[] = {0,0,0,0,0,0,0,0};
const static unsigned char zeroes[] = {0,0,0,0,0,0,0,0};
+#if defined(_MSC_VER) && defined(_ARM_)
+#pragma optimize("g", off)
+#endif
+
int RSA_verify_PKCS1_PSS(RSA *rsa, const unsigned char *mHash,
const EVP_MD *Hash, const unsigned char *EM, int sLen)
{
int RSA_verify_PKCS1_PSS(RSA *rsa, const unsigned char *mHash,
const EVP_MD *Hash, const unsigned char *EM, int sLen)
{
@@
-259,3
+263,7
@@
int RSA_padding_add_PKCS1_PSS(RSA *rsa, unsigned char *EM,
return ret;
}
return ret;
}
+
+#if defined(_MSC_VER)
+#pragma optimize("",on)
+#endif
diff --git
a/crypto/ui/ui_locl.h
b/crypto/ui/ui_locl.h
index 68cc54340238bae2faf213c3d783e9c4e71c85ed..aa4a55637d9fcb26ead5940e40eb8f903221da6a 100644
(file)
--- a/
crypto/ui/ui_locl.h
+++ b/
crypto/ui/ui_locl.h
@@
-62,6
+62,10
@@
#include <openssl/ui.h>
#include <openssl/crypto.h>
#include <openssl/ui.h>
#include <openssl/crypto.h>
+#ifdef _
+#undef _
+#endif
+
struct ui_method_st
{
char *name;
struct ui_method_st
{
char *name;
diff --git
a/util/pl/VC-32.pl
b/util/pl/VC-32.pl
index bc9003135fb35d62e9df724567b105566375e00f..708a33ec9bb43d34a48738a5aa149250374d2bed 100644
(file)
--- a/
util/pl/VC-32.pl
+++ b/
util/pl/VC-32.pl
@@
-50,7
+50,7
@@
elsif ($FLAVOR =~ /CE/)
/^X86/ && do { $wcecdefs.=" -Dx86 -D_X86_";
$wcelflag.=" /machine:X86"; last; };
/^ARM/ && do { $wcecdefs.=" -DARM -D_ARM_";
/^X86/ && do { $wcecdefs.=" -Dx86 -D_X86_";
$wcelflag.=" /machine:X86"; last; };
/^ARM/ && do { $wcecdefs.=" -DARM -D_ARM_";
- $wcelflag.=" /machine:
$wcetgt";
last; };
+ $wcelflag.=" /machine:
ARM";
last; };
/^R4[0-9]{3}/ && do { $wcecdefs.=" -DMIPS -D_MIPS_ -DMIPS_R4000";
$wcelflag.=" /machine:MIPS"; last; };
/^SH[0-9]/ && do { $wcecdefs.=" -D$wcetgt -D_$wcetgt_ -DSHx";
/^R4[0-9]{3}/ && do { $wcecdefs.=" -DMIPS -D_MIPS_ -DMIPS_R4000";
$wcelflag.=" /machine:MIPS"; last; };
/^SH[0-9]/ && do { $wcecdefs.=" -D$wcetgt -D_$wcetgt_ -DSHx";
@@
-64,7
+64,6
@@
elsif ($FLAVOR =~ /CE/)
$base_cflags.=" $wcecdefs";
$base_cflags.=" -Qsh4" if ($wcetgt =~ /^SH4/);
$opt_cflags=' /MC /O1i'; # optimize for space, but with intrinsics...
$base_cflags.=" $wcecdefs";
$base_cflags.=" -Qsh4" if ($wcetgt =~ /^SH4/);
$opt_cflags=' /MC /O1i'; # optimize for space, but with intrinsics...
- $opt_cflags.=' /wd4959'; # disable "too large to optimize" warning...
$dbg_clfags=' /MC /Od -DDEBUG -D_DEBUG';
$lflags="/nologo /opt:ref $wcelflag";
}
$dbg_clfags=' /MC /Od -DDEBUG -D_DEBUG';
$lflags="/nologo /opt:ref $wcelflag";
}