Various Win32 fixes. Win95 doesn't support MoveFileEx() (which was used for a

Win32 version of rename() ). There isn't a precise rename() equivalent under
Win95: the standard rename() complains if the destination already exists so
replaced with a combination of unlink() and MoveFile().
This commit is contained in:
Dr. Stephen Henson 1999-05-08 22:46:51 +00:00
parent e40b7abeed
commit a5ab0532ca
7 changed files with 121 additions and 8 deletions

View file

@ -117,10 +117,7 @@
someone forgot to add a function to the header file.
In this latter case check out the header file to see if the function is
defined in the header file: it should be defined twice: once with ANSI
prototypes and once without. If its missing from the non ASNI section then
add an entry for it: check that ms\do_ms now reports missing numbers and
update the numbers as above.
defined in the header file.
If you get warnings in the code then the compilation will halt.
@ -140,7 +137,9 @@
--------------------------------------------------------------------------------
The orignal Windows build instructions from SSLeay follow.
Note: some of this may be out of date and no longer applicable
Note: some of this may be out of date and no longer applicable. In particular
the Crypto_malloc_init() comment appears to be wrong: you always need to use
the same runtime library as the DLL itself.
--------------------------------------------------------------------------------
The Microsoft World.

View file

@ -218,10 +218,16 @@ void program_name(char *in, char *out, int size)
#ifdef WIN32
int WIN32_rename(char *from, char *to)
{
#ifdef WINNT
int ret;
/* Note: MoveFileEx() doesn't work under Win95, Win98 */
ret=MoveFileEx(from,to,MOVEFILE_REPLACE_EXISTING|MOVEFILE_COPY_ALLOWED);
return(ret?0:-1);
#else
unlink(to);
return MoveFile(from, to);
#endif
}
#endif

View file

@ -66,7 +66,7 @@
char *X509_NAME_oneline(X509_NAME *a, char *buf, int len)
{
X509_NAME_ENTRY *ne;
unsigned int i;
int i;
int n,lold,l,l1,l2,num,j,type;
const char *s;
char *p;

View file

@ -380,7 +380,7 @@ int SSL_add_file_cert_subjects_to_stack(STACK_OF(X509_NAME) *stack,
X509 *x=NULL;
X509_NAME *xn=NULL;
int ret=1;
int (*oldcmp)();
int (*oldcmp)(X509_NAME **a, X509_NAME **b);
oldcmp=sk_X509_NAME_set_cmp_func(stack,name_cmp);

View file

@ -1522,3 +1522,99 @@ DIST_POINT_NAME_new 1546
DIST_POINT_NAME_free 1547
d2i_DIST_POINT_NAME 1548
X509V3_add_value_uchar 1549
sk_X509_INFO_new 1550
sk_X509_EXTENSION_new 1551
sk_X509_NAME_ENTRY_unshift 1552
sk_ASN1_TYPE_value 1553
sk_X509_EXTENSION_find 1554
d2i_ASN1_SET_OF_X509_ATTRIBUTE 1555
sk_ASN1_TYPE_pop 1556
sk_X509_EXTENSION_set_cmp_func 1557
sk_ASN1_TYPE_new_null 1558
sk_X509_NAME_ENTRY_delete 1559
i2d_ASN1_SET_OF_ASN1_TYPE 1560
sk_X509_NAME_ENTRY_dup 1561
sk_X509_unshift 1562
sk_X509_NAME_unshift 1563
sk_ASN1_TYPE_num 1564
sk_X509_EXTENSION_new_null 1565
sk_X509_INFO_value 1566
d2i_ASN1_SET_OF_X509_EXTENSION 1567
sk_X509_INFO_delete_ptr 1568
sk_X509_NAME_ENTRY_new 1569
sk_DIST_POINT_insert 1570
sk_ASN1_TYPE_set_cmp_func 1571
sk_X509_EXTENSION_value 1572
sk_DIST_POINT_unshift 1573
d2i_ASN1_SET_OF_X509_NAME_ENTRY 1574
sk_X509_INFO_pop 1575
sk_X509_EXTENSION_pop 1576
sk_X509_NAME_ENTRY_shift 1577
sk_X509_INFO_num 1578
sk_X509_EXTENSION_num 1579
sk_X509_INFO_pop_free 1580
sk_POLICYQUALINFO_unshift 1581
sk_POLICYINFO_unshift 1582
sk_X509_NAME_ENTRY_new_null 1583
sk_X509_NAME_ENTRY_pop 1584
sk_X509_ATTRIBUTE_unshift 1585
sk_X509_NAME_ENTRY_num 1586
sk_GENERAL_NAME_unshift 1587
sk_X509_INFO_free 1588
d2i_ASN1_SET_OF_ASN1_TYPE 1589
sk_X509_INFO_insert 1590
sk_X509_NAME_ENTRY_value 1591
sk_POLICYQUALINFO_insert 1592
sk_ASN1_TYPE_set 1593
sk_X509_EXTENSION_delete_ptr 1594
sk_X509_INFO_unshift 1595
sk_ASN1_TYPE_unshift 1596
sk_ASN1_TYPE_free 1597
sk_ASN1_TYPE_delete_ptr 1598
sk_ASN1_TYPE_pop_free 1599
sk_X509_EXTENSION_unshift 1600
sk_X509_EXTENSION_pop_free 1601
sk_X509_NAME_ENTRY_set_cmp_func 1602
sk_ASN1_TYPE_insert 1603
sk_X509_NAME_ENTRY_free 1604
sk_SXNETID_insert 1605
sk_X509_NAME_insert 1606
sk_X509_insert 1607
sk_X509_INFO_delete 1608
sk_X509_INFO_set_cmp_func 1609
sk_X509_ATTRIBUTE_insert 1610
sk_X509_INFO_zero 1611
sk_X509_INFO_set 1612
sk_X509_EXTENSION_set 1613
sk_X509_EXTENSION_free 1614
i2d_ASN1_SET_OF_X509_ATTRIBUTE 1615
sk_SXNETID_unshift 1616
sk_X509_INFO_push 1617
sk_X509_EXTENSION_insert 1618
sk_X509_INFO_new_null 1619
sk_ASN1_TYPE_dup 1620
sk_X509_INFO_find 1621
sk_POLICYINFO_insert 1622
sk_ASN1_TYPE_zero 1623
i2d_ASN1_SET_OF_X509_EXTENSION 1624
sk_X509_NAME_ENTRY_set 1625
sk_ASN1_TYPE_push 1626
sk_X509_NAME_ENTRY_insert 1627
sk_ASN1_TYPE_new 1628
sk_GENERAL_NAME_insert 1629
sk_ASN1_TYPE_shift 1630
sk_ASN1_TYPE_delete 1631
sk_X509_NAME_ENTRY_pop_free 1632
i2d_ASN1_SET_OF_X509_NAME_ENTRY 1633
sk_X509_NAME_ENTRY_zero 1634
sk_ASN1_TYPE_find 1635
sk_X509_NAME_ENTRY_delete_ptr 1636
sk_X509_NAME_ENTRY_push 1637
sk_X509_EXTENSION_zero 1638
sk_X509_INFO_shift 1639
sk_X509_INFO_dup 1640
sk_X509_EXTENSION_dup 1641
sk_X509_EXTENSION_delete 1642
sk_X509_EXTENSION_shift 1643
sk_X509_EXTENSION_push 1644
sk_X509_NAME_ENTRY_find 1645

View file

@ -219,14 +219,16 @@ sub do_defs
$funcs{"sk_${1}_set"} = 1;
$funcs{"sk_${1}_zero"} = 1;
$funcs{"sk_${1}_push"} = 1;
$funcs{"sk_${1}_pop"} = 1;
$funcs{"sk_${1}_unshift"} = 1;
$funcs{"sk_${1}_find"} = 1;
$funcs{"sk_${1}_delete"} = 1;
$funcs{"sk_${1}_delete_ptr"} = 1;
$funcs{"sk_${1}_insert"} = 1;
$funcs{"sk_${1}_set_cmp_func"} = 1;
$funcs{"sk_${1}_dup"} = 1;
$funcs{"sk_${1}_pop_free"} = 1;
$funcs{"sk_${1}_shift"} = 1;
$funcs{"sk_${1}_pop"} = 1;
} elsif ($safe_stack_def &&
/^\s*DECLARE_ASN1_SET_OF\s*\(\s*(\w*)\s*\)/) {
$funcs{"d2i_ASN1_SET_OF_${1}"} = 1;

View file

@ -201,3 +201,13 @@ sk_SSL_COMP_set_cmp_func 218
sk_SSL_COMP_dup 219
sk_SSL_COMP_pop_free 220
sk_SSL_COMP_shift 221
SSL_CTX_use_certificate_chain_file 222
sk_SSL_COMP_insert 223
sk_SSL_CIPHER_insert 224
SSL_CTX_set_verify_depth 225
SSL_set_verify_depth 226
sk_SSL_CIPHER_unshift 227
SSL_CTX_get_verify_depth 228
SSL_get_verify_depth 229
sk_SSL_COMP_unshift 230
SSL_CTX_set_session_id_context 231