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. 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 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 defined in the header file.
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.
If you get warnings in the code then the compilation will halt. If you get warnings in the code then the compilation will halt.
@ -140,7 +137,9 @@
-------------------------------------------------------------------------------- --------------------------------------------------------------------------------
The orignal Windows build instructions from SSLeay follow. 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. The Microsoft World.

View file

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

View file

@ -66,7 +66,7 @@
char *X509_NAME_oneline(X509_NAME *a, char *buf, int len) char *X509_NAME_oneline(X509_NAME *a, char *buf, int len)
{ {
X509_NAME_ENTRY *ne; X509_NAME_ENTRY *ne;
unsigned int i; int i;
int n,lold,l,l1,l2,num,j,type; int n,lold,l,l1,l2,num,j,type;
const char *s; const char *s;
char *p; 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 *x=NULL;
X509_NAME *xn=NULL; X509_NAME *xn=NULL;
int ret=1; int ret=1;
int (*oldcmp)(); int (*oldcmp)(X509_NAME **a, X509_NAME **b);
oldcmp=sk_X509_NAME_set_cmp_func(stack,name_cmp); 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 DIST_POINT_NAME_free 1547
d2i_DIST_POINT_NAME 1548 d2i_DIST_POINT_NAME 1548
X509V3_add_value_uchar 1549 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}_set"} = 1;
$funcs{"sk_${1}_zero"} = 1; $funcs{"sk_${1}_zero"} = 1;
$funcs{"sk_${1}_push"} = 1; $funcs{"sk_${1}_push"} = 1;
$funcs{"sk_${1}_pop"} = 1; $funcs{"sk_${1}_unshift"} = 1;
$funcs{"sk_${1}_find"} = 1; $funcs{"sk_${1}_find"} = 1;
$funcs{"sk_${1}_delete"} = 1; $funcs{"sk_${1}_delete"} = 1;
$funcs{"sk_${1}_delete_ptr"} = 1; $funcs{"sk_${1}_delete_ptr"} = 1;
$funcs{"sk_${1}_insert"} = 1;
$funcs{"sk_${1}_set_cmp_func"} = 1; $funcs{"sk_${1}_set_cmp_func"} = 1;
$funcs{"sk_${1}_dup"} = 1; $funcs{"sk_${1}_dup"} = 1;
$funcs{"sk_${1}_pop_free"} = 1; $funcs{"sk_${1}_pop_free"} = 1;
$funcs{"sk_${1}_shift"} = 1; $funcs{"sk_${1}_shift"} = 1;
$funcs{"sk_${1}_pop"} = 1;
} elsif ($safe_stack_def && } elsif ($safe_stack_def &&
/^\s*DECLARE_ASN1_SET_OF\s*\(\s*(\w*)\s*\)/) { /^\s*DECLARE_ASN1_SET_OF\s*\(\s*(\w*)\s*\)/) {
$funcs{"d2i_ASN1_SET_OF_${1}"} = 1; $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_dup 219
sk_SSL_COMP_pop_free 220 sk_SSL_COMP_pop_free 220
sk_SSL_COMP_shift 221 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