Changes between 0.9.5a and 0.9.6 [xx XXX 2000]
+ *) New BIO_shutdown_wr macro, which invokes the BIO_C_SHUTDOWN_WR
+ BIO_ctrl (for BIO pairs).
+
*) Add DSO method for VMS.
[Richard Levitte]
RSAREF compile using the RSAREF Library
NORSAREF compile without using RSAREF
-Note 1: The RSAREF libraries are NOT INCLUDED and you have to
- download it from "ftp://ftp.rsa.com/rsaref". You have to
- get the ".tar-Z" file as the ".zip" file doesn't have the
- directory structure stored. You have to extract the file
- into the [.RSAREF] directory as that is where the scripts
- will look for the files.
+Note 0: The RASREF library IS NO LONGER NEEDED. The RSA patent
+ expires September 20, 2000, and RSA Security chose to make
+ the algorithm public domain two weeks before that.
+
+Note 1: If you still want to use RSAREF, the library is NOT INCLUDED
+ and you have to download it. RSA Security doesn't carry it
+ any more, but there are a number of places where you can find
+ it. You have to get the ".tar-Z" file as the ".zip" file
+ doesn't have the directory structure stored. You have to
+ extract the file into the [.RSAREF] directory as that is where
+ the scripts will look for the files.
Note 2: I have never done this, so I've no idea if it works or not.
used. This is good to try if something doesn't work.
OPENSSL_NO_'alg' with value YES, the corresponding crypto algorithm
will not be implemented. Supported algorithms to
- do this with are: RSA, DSA, DH, MD2, MD5, RIPEMD,
+ do this with are: RSA, DSA, DH, MD2, MD4, MD5, RIPEMD,
SHA, DES, MDC2, CR2, RC4, RC5, IDEA, BF, CAST, HMAC,
SSL2. So, for example, having the logical name
OPENSSL_NO_RSA with the value YES means that the
OpenSSL STATUS Last modified at
- ______________ $Date: 2000/09/13 21:20:43 $
+ ______________ $Date: 2000/09/17 15:56:27 $
DEVELOPMENT STATE
MingW32 - failed
thelp32.h
aix-gcc (AIX 4.3.2) - passed
+ VMS/Alpha - failed
+ Some things were missing [FIXED]
o OpenSSL 0.9.5a: Released on April 1st, 2000
o OpenSSL 0.9.5: Released on February 28th, 2000
o OpenSSL 0.9.4: Released on August 09th, 1999
#define BIO_get_write_buf_size(b,size) (size_t)BIO_ctrl(b,BIO_C_GET_WRITE_BUF_SIZE,size,NULL)
#define BIO_make_bio_pair(b1,b2) (int)BIO_ctrl(b1,BIO_C_MAKE_BIO_PAIR,0,b2)
#define BIO_destroy_bio_pair(b) (int)BIO_ctrl(b,BIO_C_DESTROY_BIO_PAIR,0,NULL)
-#define BIO_set_shutdown_wr(b) (int)BIO_ctrl(b, BIO_C_SHUTDOWN_WR, 0, NULL)
+#define BIO_shutdown_wr(b) (int)BIO_ctrl(b, BIO_C_SHUTDOWN_WR, 0, NULL)
/* macros with inappropriate type -- but ...pending macros use int too: */
#define BIO_get_write_guarantee(b) (int)BIO_ctrl(b,BIO_C_GET_WRITE_GUARANTEE,0,NULL)
#define BIO_get_read_request(b) (int)BIO_ctrl(b,BIO_C_GET_READ_REQUEST,0,NULL)
#include <string.h>
#include <errno.h>
#ifdef VMS
+#pragma message disable DOLLARID
#include <lib$routines.h>
#include <libfisdef.h>
#include <stsdef.h>
0, flags);
}
-static void *vms_bind_sym(DSO *dso, const char *symname)
+void vms_bind_sym(DSO *dso, const char *symname, void **sym)
{
DSO_VMS_INTERNAL *ptr;
- void *sym = 0;
int status;
int flags = LIB$M_FIS_MIXEDCASE;
struct dsc$descriptor_s symname_dsc;
+ *sym = NULL;
symname_dsc.dsc$w_length = strlen(symname);
symname_dsc.dsc$b_dtype = DSC$K_DTYPE_T;
if((dso == NULL) || (symname == NULL))
{
DSOerr(DSO_F_VMS_BIND_VAR,ERR_R_PASSED_NULL_PARAMETER);
- return(NULL);
+ return;
}
if(sk_num(dso->meth_data) < 1)
{
DSOerr(DSO_F_VMS_BIND_VAR,DSO_R_STACK_ERROR);
- return(NULL);
+ return;
}
ptr = (DSO_VMS_INTERNAL *)sk_value(dso->meth_data,
sk_num(dso->meth_data) - 1);
if(ptr == NULL)
{
DSOerr(DSO_F_VMS_BIND_VAR,DSO_R_NULL_HANDLE);
- return(NULL);
+ return;
}
if(dso->flags & DSO_FLAG_UPCASE_SYMBOL) flags = 0;
- status = do_find_symbol(ptr, &symname_dsc, &sym, flags);
+ status = do_find_symbol(ptr, &symname_dsc, sym, flags);
if(!$VMS_STATUS_SUCCESS(status))
{
errstring_dsc.dsc$b_class = DSC$K_CLASS_S;
errstring_dsc.dsc$a_pointer = errstring;
+ *sym = NULL;
+
status = sys$getmsg(status, &length, &errstring_dsc, 1, 0);
if (!$VMS_STATUS_SUCCESS(status))
" in ", ptr->filename,
": ", errstring);
}
- return(NULL);
+ return;
}
- return(sym);
+ return;
}
static void *vms_bind_var(DSO *dso, const char *symname)
{
- return vms_bind_sym(dso, symname);
+ void *sym = 0;
+ vms_bind_sym(dso, symname, &sym);
+ return sym;
}
static DSO_FUNC_TYPE vms_bind_func(DSO *dso, const char *symname)
{
- return (DSO_FUNC_TYPE)vms_bind_sym(dso, symname);
+ DSO_FUNC_TYPE sym = 0;
+ vms_bind_sym(dso, symname, &sym);
+ return sym;
}
static long vms_ctrl(DSO *dso, int cmd, long larg, void *parg)
STACK *sk_new_null(void)
{
- return sk_new((int (*)(const char * const *, const char * const *))NULL);
+ return sk_new((int (*)(const char * const *, const char * const *))0);
}
STACK *sk_new(int (*c)(const char * const *, const char * const *))
#define SSL_CTX_set_cert_verify_callback SSL_CTX_set_cert_verify_cb
#define SSL_CTX_set_default_passwd_cb_userdata SSL_CTX_set_def_passwd_cb_ud
+/* Hack some long ENGINE names */
+#define ENGINE_get_default_BN_mod_exp_crt ENGINE_get_def_BN_mod_exp_crt
+#define ENGINE_set_default_BN_mod_exp_crt ENGINE_set_def_BN_mod_exp_crt
+
#endif /* defined VMS */
=head1 NAME
-BIO_s_bio, BIO_make_bio_pair, BIO_destroy_bio_pair, BIO_set_shutdown_wr,
+BIO_s_bio, BIO_make_bio_pair, BIO_destroy_bio_pair, BIO_shutdown_wr,
BIO_set_write_buf_size, BIO_get_write_buf_size, BIO_new_bio_pair,
BIO_get_write_guarantee, BIO_ctrl_get_write_guarantee, BIO_get_read_request,
BIO_ctrl_get_read_request, BIO_ctrl_reset_read_request - BIO pair BIO
#define BIO_make_bio_pair(b1,b2) (int)BIO_ctrl(b1,BIO_C_MAKE_BIO_PAIR,0,b2)
#define BIO_destroy_bio_pair(b) (int)BIO_ctrl(b,BIO_C_DESTROY_BIO_PAIR,0,NULL)
- #define BIO_set_shutdown_wr(b) (int)BIO_ctrl(b, BIO_C_SHUTDOWN_WR, 0, NULL)
+ #define BIO_shutdown_wr(b) (int)BIO_ctrl(b, BIO_C_SHUTDOWN_WR, 0, NULL)
#define BIO_set_write_buf_size(b,size) (int)BIO_ctrl(b,BIO_C_SET_WRITE_BUF_SIZE,size,NULL)
#define BIO_get_write_buf_size(b,size) (size_t)BIO_ctrl(b,BIO_C_GET_WRITE_BUF_SIZE,size,NULL)
BIO_destroy_pair() destroys the association between two connected BIOs. Freeing
up any half of the pair will automatically destroy the association.
-BIO_set_shutdown_wr() is used to close down a BIO B<b>. After this call no further
+BIO_shutdown_wr() is used to close down a BIO B<b>. After this call no further
writes on BIO B<b> are allowed (they will return an error). Reads on the other
half of the pair will return any pending data or EOF when all pending data has
been read.
ENGINE_get_BN_mod_exp 2467 EXIST::FUNCTION:
DSA_get_default_openssl_method 2468 EXIST::FUNCTION:DSA
ENGINE_set_DH 2469 EXIST::FUNCTION:
-ENGINE_set_default_BN_mod_exp_crt 2470 EXIST::FUNCTION:
+ENGINE_set_default_BN_mod_exp_crt 2470 EXIST:!VMS:FUNCTION:
+ENGINE_set_def_BN_mod_exp_crt 2470 EXIST:VMS:FUNCTION:
ENGINE_init 2471 EXIST::FUNCTION:
DH_get_default_openssl_method 2472 EXIST::FUNCTION:DH
RSA_set_default_openssl_method 2473 EXIST::FUNCTION:RSA
ENGINE_get_first 2488 EXIST::FUNCTION:
ENGINE_by_id 2489 EXIST::FUNCTION:
ENGINE_set_finish_function 2490 EXIST::FUNCTION:
-ENGINE_get_default_BN_mod_exp_crt 2491 EXIST::FUNCTION:
+ENGINE_get_default_BN_mod_exp_crt 2491 EXIST:!VMS:FUNCTION:
+ENGINE_get_def_BN_mod_exp_crt 2491 EXIST:VMS:FUNCTION:
RSA_get_default_openssl_method 2492 EXIST::FUNCTION:RSA
ENGINE_set_RSA 2493 EXIST::FUNCTION:
ENGINE_load_private_key 2494 EXIST::FUNCTION:
}
if ($new_info) {
print STDERR "$new_info old symbols got an info update\n";
+ if (!$do_rewrite) {
+ print STDERR "You should do a rewrite to fix this.\n";
+ }
} else {
print STDERR "No old symbols needed info update\n";
}