VMS Changes to OpenSSL 0.9.8j 2009-02-22 SMS. ================================================ General [...]*.com Changed command procedures to use the value of f$getsyi( "ARCH_NAME") as the name for the architecture-specific files and directories. Thus "AXP" -> "ALPHA", and "I64" -> "IA64". [] install.com Added IA64 support. Changed to stop using directories for other system architecture types. Changed to save and restore the default directory on error or abort. Removed (unused) WRK_SSLLIB logical name and [.LIB] directory. makevms.com Added IA64 support. Changed to save and restore the default directory on error or abort. Moved VMS architecture-specific code for "opensslconf.h" into "opensslconf.in.h", and moved the generated "opensslconf.h" into an architecture-specific directory (in case other configuration data differ). Added existence checks before deleting some files to avoid %DELETE-W-SEARCHFAIL/-RMS-E-FNF complaints. Changed to return a realistic status code (%X00018294 = %RMS-F-FNF, file not found) when no "[.crypto]opensslconf.h.in" file is found. Changed to stop copying files into "[.apps]". Changed to stop copying files into "[.test]". [.apps] install.com Added IA64 support. Changed to stop using directories for other system architecture types. Removed (unused) WRK_SSLLIB logical name and [.LIB] directory. makeapps.com Added IA64 support. Changed to put the link options files into an architecture-specific directory. Added "CMS" to the "LIB_FILES" module list. Restored non-empty definition of "APP_FILES" with a current file list (eliminating %DCL-W-UNDSYM complaints.) Added some order to "APP_FILES" and "LIB_FILES". [.crypto] crypto-lib.com Added IA64 support. Changed to put the link options files into an architecture-specific directory. Added "des_lib" to "LIB_DES" module list. Added "seed" to "COMPILEWITH_CC5" module list. Added some order to module lists, and changed to allow white space in them. install.com Added IA64 support. Changed to stop using directories for other system architecture types. opensslconf.h.in Moved VMS architecture-specific code for "opensslconf.h" into here from "makevms.com". symhacks.h Added a shorter-name macro for "int_CRYPTO_set_do_dynlock_callback". [.crypto.des] des-lib.com Added IA64 support. Changed to put the link options files into an architecture-specific directory. Added "des_lib" to "LIB_DES" module list. [.crypto.sha] sha512.c Added a dummy function to avoid a %CC-W-EMPTYFILE complaint when "OPENSSL_NO_SHA512" is defined. [.crypto.threads] pthreads-vms.com Added IA64 support. [.demos.engines.rsaref] build.com Added IA64 support. [.engines] axp.opt Renamed to "alpha.opt". i64.opt Renamed to "ia64.opt". makeengines.com Added IA64 support. Changed to put the link options files into an architecture-specific directory. Made the ".mar" recognition code safer (case-insensitive, parsed more reliably), to avoid using the C compiler on a Macro 32 source file (%CC-I-EXTRASEMI, ...). Changed to avoid deleting the transfer vector object file ("ENGINE_VECTOR.OBJ") on VAX before it could be used to create the shareable images. Added some order to the ENGINES list, and changed to allow white space in it. [.fips] fips-lib.com Added IA64 support. Changed to put the link options files into an architecture-specific directory. install.com Added IA64 support. Changed to stop using directories for other system architecture types. [.ssl] install.com Added IA64 support. Changed to stop using directories for other system architecture types. Changed to put the link options files into an architecture-specific directory. ssl-lib.com Added IA64 support. [.test] maketests.com Added IA64 support. Changed to put the link options files into an architecture-specific directory. Reorganized C source file lists to allow use of source files from their original directories, rather than using local copies (made by "makevms.com"). Reconciled source module list with reality. tcrl.com Added IA64 support. testca.com Added IA64 support. Corrected file name errors in clean-up delete operations. testenc.com Added IA64 support. testgen.com Added IA64 support. tests.com Added IA64 support. Added some order to test name lists and subroutines, and changed to allow white space in them. Reconciled test name list with reality. Corrected file name errors in clean-up delete operations. testss.com Added IA64 support. Changed to delete more (all?) temporary files. testssl.com Added IA64 support. Changed to stop looking for ".pem" certificate files in a directory where none exists. Changed to use process-specific temporary file names. Fixed some problems in the certificate file search processing. tpkcs7.com Added IA64 support. tpkcs7d.com Added IA64 support. treq.com Added IA64 support. trsa.com Added IA64 support. tsid.com Added IA64 support. tverify.com Added IA64 support. Changed to stop looking for ".pem" certificate files in a directory where none exists. Changed to use a process-specific temporary file name. Changed to use an effective test for DCL CLI line length overflow. tx509.com Added IA64 support. [.util] libeay.num Changed to use the shortened name for "int_CRYPTO_set_do_dynlock_callback" on VMS: "int_CRYPTO_set_do_dynlock_cb". Changed not to use ENGINE_load_capi on VMS. Added new "!VMSV" code to several 64-bit items which are not available on VAX. [.vms] install.com Added IA64 support. Changed to stop using directories for other system architecture types. Changed to use a universal (static) openssl_startup.com, instead of creating one at installation time (which contains a hard-coded value for SSLROOT). mkshared.com Added IA64 support. Changed to look for new "[!]VMSV" codes (on VAX), to avoid several 64-bit items which are not available on VAX. Changed shared image names from LIBCRYPTO.EXE and LIBSSL.EXE to SSL_LIBCRYPTO.EXE and SSL_LIBSSL.EXE, which are more similar to the HP SSL SSL$LIBxxx names, and easier to find amid the clutter in SYS$SHARE. openssl_startup.com New. Replaces the procedure which had been created at installation time. This one derives its value for SSLROOT from its own location. openssl_undo.com New. Deassigns the logical names defined by openssl_startup.com. openssl_utils.com Added some missing commands, and rearranged the symbol definitions. Made all symbols other than OPENSSL optional -- Specify a non-null P1 to get the optional ones. Changed CMS and REQ to OCMS and OREQ to avoid the obvious conflicts with DECset CMS and REQUEST. Expect %CC-I-BADSUBSCRIPT complaints on VAX when compiling "[.crypto.bn]bn_nist.c". These statements look dangerous to the compiler, but because the bn_cp_64() macro checks its last arg >= 0, they should be harmless. Known remaining architecture collision problems: [.test]