You Are Visitor: [Image]
[Previous] [Next] [Table of Contents]
  ------------------------------------------------------------------------

2.1 What platforms are supported?

The following VAX configurations have been tested and verified to work.

 OpenVMS v6.2         DEC C  VAX C  GNU C
 Multinet v4.1 Rev b   Yes    Yes  Untested
 Pathway TCP/IP v3.0   Yes    Yes    Yes
 UCX v4.1 ECO 9     Untested  Yes  Untested

 OpenVMS v7.1           DEC C   VAX C   GNU C
 Multinet v4.1 Rev b     Yes     Yes   Untested
 Pathway TCP/IP v3.0     Yes     Yes     Yes
 NetLib 2.2F & SOCKETSHR Yes  Untested Untested

  ------------------------------------------------------------------------

The following Alpha configurations have been tested and verified to work.

 OpenVMS v7.1       DEC C   GNU C
 Multinet v4.1 Rev b Yes  Untested
 UCX v4.1 ECO 8      Yes  Untested

  ------------------------------------------------------------------------

2.2 What SSLeay utilites are supported?

Currently (at least on the VAX platforms) all the stock SSLeay utilities
have been tested to the best of my working knowledge. This also holds true
for the test utilities.

As far as I know, the same holds true for the Alpha builds of SSLeay for
OpenVMS.

  ------------------------------------------------------------------------

2.3 What do I need to build SSLeay for OpenVMS?

O.k., here's is what you need to build OpenVMS SSLeay v0.8.1b on an OpenVMS
system.

  1. A copy of the OpenVMS SSLeay v0.8.1b distribution file.
     This can be found at
     ftp://ftp.levitte.org/vms/ssleay-0_8_1a-rl-19990219.tar-gz

  2. If you are in the United States, you will need a copy of the RSAREF
     library in order to use SSLeay legally.

     In order to get the RSAREF library you have to read the README file.
     and follow the directions for getting the RSAREF library. You need
     to get the TAR'd file as the ZIP file dosen't contain the directory
     structure.

  3. A C compiler. Currently DEC C, VAX C and GNU C are supported.
     The GNU C compiler is available at
     ftp://ftp.caltech.edu/pub/rankin/gcc-vms-2_7_1.tar-gz

  ------------------------------------------------------------------------

2.4 Compiling SSLeay for OpenVMS.

O.k. You have everything outlined in the section What do I need to build
SSLeay for OpenVMS? and you want to get the ball rolling.

  1. Unpack the ssleay-0_8_1a-rl-19990219.tar-gz file into a directory
     of your choice.

  2. If you are in the United States, you need to unpack the RSAREF library
     so it unpacks into the RSAREF directory inside the SSLeay directory.

  3. If you are using the DEC C compiler, you must make sure that the
     SYS$STARTUP:CCXX$STARTUP.COM has been executed at system
     startup and that the logical DECC$CC_DEFAULT is defined to "/DECC"
     as my scripts look for this logical to try to autodetect your C
     compiler. If it's not defined or you don't have that startup script
     for DEC C (for some reason) just execute the following.

             $ DEFINE DECC$DEFAULT "/DECC"

  4. Go to the root of the SSLeay distribution and you will find
     the main compile script MAKEVMS.COM. The MAKEVMS.COM
     accepts the following parameters.

          P1:  ALL        Just build "everything".
               DATE       Just build the "[.INCLUDE]DATE.H" file.
               SOFTLINKS  Just fix the Unix soft links.
               RSAREF     Just build the "[.xxx.EXE.RSAREF]LIBRSAGLUE.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 SSLeay.
               APPS       Just build the "[.xxx.EXE.APPS]" applictaion programs for SSLeay."

          P2:  RSAREF     Compile using the RSAREF library.
               NORSAREF   Compile without using the RSAREF library.

          P3:  DEBUG      Compile with debugging information.
               NODEBUG    Compile without debugging information.

          P4:  VAXC       Compile using the VAX C compiler.
               DECC       Compile using the DEC C compiler.
               GNUC       Compile using the GNU C compiler.

          P5:  UCX        Compile using the UCX TCP/IP library.
               MULTINET   Compile using the Multinet TCP/IP library.
               SOCKETSHR  Compile using the SOCKETSHR TCP/IP library.

          P6, if defined, sets a compiler thread NOT needed on OpenVMS v7.1 (and up)

     Select your parameters and execute the MAKEVMS script. This will
     take some time and you might see a few warning messages which won't
     cause any trouble.

     When the script goes to compile the SSLeay applications, you
     will get alot of warnings and errors when the SSL socket applications
     are being compiled. Don't worry about these as they arn't necessary.

  5. Everything should have built just fine and if all went well, you
     should have a directory structure similar to the following in
     the root of the SSLeay distribution.

             XXX
              +--+--EXE
                 |   +--+--APPS
                 |      +--CRYPTO
                 |      +--RSAREF
                 |      +--SSL
                 |      +--TEST
                 +--OBJ
                     +--+--APPS
                        +--CRYPTO
                        +--RSAREF
                        +--SSL
                        +--TEST

     The "XXX" denotes the machine architecture of either VAX for
     VAX or AXP for Alpha.

  6. Go to the [.XXX.EXE.TEST] directory and execute all the test EXE
     files with the exception of the SSLTEST.EXE file.

  7. If all the crypto tests passed, go to the [.TEST] directory in the
     base of the SSLeay distribution and execute the following

             $ RUN [-.XXX.EXE.TEST]SSLTEST

     If that executed with no problems, the you are done and have a
     working SSLeay system.

  ------------------------------------------------------------------------

2.5 Installing SSLeay for OpenVMS.

You compiled the SSLeay library and utilities for OpenVMS following the
Compiling SSLeay for OpenVMS? and you want to install it all so you can
start using it.

Here are the steps:

  1. Go to the root of your SSLeay distribution tree.
     (For the purpose of this exercise we will assume your SSLeay
     is located at DISK$WORK:[SSLEAY-0_8_1A].)

  2. Here you will find the INSTALL.COM file. The INSTALL
     script accepts a directory specification as it's only parameter. So
     if you want to install SSLeay in DISK$WORK:[STUFF.SSLEAY] use
     the following:

             $ @INSTALL DISK$WORK:[STUFF.SSLEAY]

  3. Once that is done copying files, you will find the SSLEAY_STARTUP.COM
     file in the [.VMS] directory where you told the INSTALL.COM
     script to place the files.

     You need to run this script to define the logicals needed by SSLeay
     and a good idea would be to place it in your system startup file.

  4. The SSLEAY_STARTUP.COM file accepts a qualifier to "DEFINE".
     Example, if you want to have all the SSLeay logicals to be
     defined as "/SYSTEM/EXEC" then use the following:

             $ @SSLEAY_STARTUP.COM "/SYSTEM/EXEC"

     The SSLEAY_STARTUP.COM will create the following logicals.

             SSLROOT         Points to the "root" of the SSLeay directory.
             SSLLIB          Points to the SSLeay library directory.
             SSLINCLUDE      Points to the "include" files for SSLeay.
             SSLEXE          Points to the directory where the SSLeay EXE's are kept.
             SSLCERTS        Points to a directory where you can put your SSL certificates.
             SSLPRIVATE      Points to a "private" directory for "private" files.

     ----------------------------------------------------------------------
     [Previous] [Next] [Table of Contents] <!-- var urlOfNewPop=
     "http://www.geocities.com/ad_container/pop.html?cuid="+cuid+"&keywords="+keywords;
     oldPop= window.open(urlOfNewPop, '_popIt', 'width=515,height=125'); if
     (oldPop.location.href != urlOfNewPop) { if ((navigator.appName ==
     "Netscape") && (parseInt(navigator.appVersion) == 3)) {
     setTimeout("oldPop.close()", 750);
     setTimeout("window.open(urlOfNewPop, '_popIt',
     'width=515,height=125')", 1700); } else { oldPop.close();
     setTimeout("window.open(urlOfNewPop, '_popIt',
                                                              [Click Here!]