OpenSSL library, Tools, Library implementing the Secure Socket Layer SSL

Installation

  Just execute @makevms to build the library. This procedure accepts the
  following parameters: 

  1. Build options 
     ALL 
     Just build "everything". 
     
     CONFIG 
     Just build the "[.CRYPTO]OPENSSLCONF.H" file. 
     
     BUILDINF 
     Just build the "[.CRYPTO]BUILDINF.H" file. 
     
     SOFTLINKS 
     Just fix the Unix soft links. 
     
     BUILDALL 
     Same as ALL, except CONFIG, BUILDINF and SOFTILNKS aren't done 
     
     RSAREF 
     Just build the "[.xxx.EXE.RSAREF]LIBRSAGLUE.OLB" library. 
     
     CRYPTO/x 
     Just build the x part of the "[.xxx.EXE.CRYPTO]LIBCRYPTO.OLB" library. 
     
     CRYPTO 
     Just build the "[.xxx.EXE.CRYPTO]LIBCRYPTO.OLB" library. 
     
     SSL 
     Just build the "[.xxx.EXE.SSL]LIBSSL.OLB" library. 
     
     SSL_TASK 
     Just build the "[.xxx.EXE.SSL]SSL_TASK.EXE" program. 
     
     TEST 
     Just build the "[.xxx.EXE.TEST]" test programs for OpenSSL. 
     
     APPS 
     Just build the "[.xxx.EXE.APPS]" application programs for OpenSSL. 

  2. RSAREF option
     Specify RSAREF as P2 to compile using the RSAREF Library. If you
     specify NORSAREF, it will compile without using RSAREF. (If in the
     United States, You Must Compile Using RSAREF). 
     Note: The RSAREF libraries are NOT INCLUDED and you have to
     download it from ftp.rsa.com. You have to get the ".tar-Z" file as
     the ".zip" file dosen'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. 

  3. Debug option
     Speficy DEBUG or NODEBUG as P3 to compile with or without
     debugging information. 

  4. Compiler option

     Specify which compiler at P4 to try to compile under. 

     VAXC   For VAX C 
     DECC   For DEC C 
     GNUC   For GNU C 
     LINK   To only link the programs from existing object files.
            (not yet implemented)

     If you don't speficy a compiler, it will try to determine which
     "C" compiler to use. 

  5. TCP/IP option

     P5, if defined, sets a TCP/IP library to use, through one of the
     following keywords: 

     UCX         for UCX or UCX emulation
     SOCKETSHR   for SOCKETSHR+NETLIB

  6. Thread option
 
     P6, if defined, sets a compiler thread NOT needed on OpenVMS 7.1 (and up) 

  Apart from the commandline options the following logical names can be
  used to customize the build process: 

  OPENSSL_NO_ASM 
    If this logical is defined with any value the assembler parts of
    OpenSSL will be replaced by plain C implementations 

  OPENSSL_NO_'alg' 
    If this logical is defined with any value the corresponding crypto
    algorithm will not be implemented.
    Algorithms you can exclude this way are: RSA, DSA, DH, MD2, MD5,
    RIPEMD, SHA, SHA0, SHA1, DES, MDC2, RC2, RC4, RC5, IDEA, BF, CAST,
    HMAC, and SSL2. 
    Example: Defining OPENSSL_NO_DES will create a LIBCRYPTO.OLB
    without an DES implementation. 

Building shareable images (Alpha only)

  After the build of the object libraries has finished, you can
  additionally create shareable images by invoking [.vms]mkshared.com in
  the root directory of the source distribution. This will create
  [.AXP.EXE.CRYPTO]LIBCRYPTO.EXE and [.AXP.EXE.SSL]LIBSSL.EXE 


Tests

  To check if the newly created programs work fine execute @[.test]tests,  
  which will execute loads of tests actually (expect them to take some
  time). 


Package contents

  The main result of the compilation are the object libraries/shareable
  images libcrypto.[olb||exe] and libssl.[olb||exe], which other
  applications need to link against. Additionally a command-line driven
  interface to the cryptography and certificate functions is build, which
  can be invoked as openssl. 

Setup

  To setup the necessary logicals for the operation of OpenSSL and to
  define some handy symbols one can use [.vms]openssl_startup.com and
  [.vms]openssl_utils.com. 

The latest version of the OpenVMS port of the OpenSSL library should always be 
accessible via 

http://zinser.no-ip.info/vms/sw/openssl.htmlx
