Various changes to stop VC++ choking under Win32.
diff --git a/CHANGES b/CHANGES
index fc8e884..fa03ac0 100644
--- a/CHANGES
+++ b/CHANGES
@@ -4,6 +4,12 @@
Changes between 0.9.3a and 0.9.4
+ *) Various changes to make Win32 compile work:
+ 1. Casts to avoid "loss of data" warnings in p5_crpt2.c
+ 2. Change unsigned int to int in b_dump.c to avoid "signed/unsigned
+ comparison" warnings.
+ 3. Add sk_<TYPE>_sort to DEF file generator and do make update.
+
*) Add a debugging option to PKCS#5 v2 key generation function: when
you #define DEBUG_PKCS5V2 passwords, salts, iteration counts and
derived keys are printed to stderr.
diff --git a/crypto/bio/b_dump.c b/crypto/bio/b_dump.c
index b1562cf..a7cd828 100644
--- a/crypto/bio/b_dump.c
+++ b/crypto/bio/b_dump.c
@@ -71,7 +71,7 @@
{
int ret=0;
char buf[160+1],tmp[20];
- unsigned int i,j,rows,trunc;
+ int i,j,rows,trunc;
unsigned char ch;
trunc=0;
diff --git a/crypto/evp/p5_crpt2.c b/crypto/evp/p5_crpt2.c
index 2de3a2c..65c4afa 100644
--- a/crypto/evp/p5_crpt2.c
+++ b/crypto/evp/p5_crpt2.c
@@ -92,10 +92,10 @@
/* We are unlikely to ever use more than 256 blocks (5120 bits!)
* but just in case...
*/
- itmp[0] = (i >> 24) & 0xff;
- itmp[1] = (i >> 16) & 0xff;
- itmp[2] = (i >> 8) & 0xff;
- itmp[3] = i & 0xff;
+ itmp[0] = (unsigned char)((i >> 24) & 0xff);
+ itmp[1] = (unsigned char)((i >> 16) & 0xff);
+ itmp[2] = (unsigned char)((i >> 8) & 0xff);
+ itmp[3] = (unsigned char)(i & 0xff);
HMAC_Init(&hctx, pass, passlen, EVP_sha1());
HMAC_Update(&hctx, salt, saltlen);
HMAC_Update(&hctx, itmp, 4);
diff --git a/util/libeay.num b/util/libeay.num
index f9ea4e8..e08ad4e 100755
--- a/util/libeay.num
+++ b/util/libeay.num
@@ -1821,3 +1821,23 @@
RSA_set_method 1846
RSA_get_method 1847
RSA_get_default_method 1848
+sk_CONF_VALUE_sort 1849
+sk_X509_REVOKED_sort 1850
+sk_X509_ATTRIBUTE_sort 1851
+sk_X509_INFO_sort 1852
+sk_POLICYINFO_sort 1853
+sk_GENERAL_NAME_sort 1854
+sk_X509_sort 1855
+sk_X509_NAME_sort 1856
+sk_ASN1_TYPE_sort 1857
+sk_X509_ALGOR_sort 1858
+sk_PKCS7_RECIP_INFO_sort 1859
+sk_X509_NAME_ENTRY_sort 1860
+sk_X509_EXTENSION_sort 1861
+sk_SXNETID_sort 1862
+sk_ASN1_OBJECT_sort 1863
+sk_PKCS7_SIGNER_INFO_sort 1864
+sk_X509_LOOKUP_sort 1865
+sk_POLICYQUALINFO_sort 1866
+sk_X509_CRL_sort 1867
+sk_DIST_POINT_sort 1868
diff --git a/util/mkdef.pl b/util/mkdef.pl
index c2a8d9a..80384af 100755
--- a/util/mkdef.pl
+++ b/util/mkdef.pl
@@ -237,6 +237,7 @@
$funcs{"sk_${1}_pop_free"} = 1;
$funcs{"sk_${1}_shift"} = 1;
$funcs{"sk_${1}_pop"} = 1;
+ $funcs{"sk_${1}_sort"} = 1;
} elsif ($safe_stack_def &&
/^\s*DECLARE_ASN1_SET_OF\s*\(\s*(\w*)\s*\)/) {
$funcs{"d2i_ASN1_SET_OF_${1}"} = 1;
diff --git a/util/ssleay.num b/util/ssleay.num
index b7a85b3..d86c140 100755
--- a/util/ssleay.num
+++ b/util/ssleay.num
@@ -212,3 +212,5 @@
sk_SSL_COMP_unshift 230
SSL_CTX_set_session_id_context 231
SSL_CTX_set_cert_verify_callback 232
+sk_SSL_COMP_sort 233
+sk_SSL_CIPHER_sort 234