The branch master has been updated
       via  3426de2262caee3283b88c40308b99009182fcd1 (commit)
      from  d17d3293d112c3f32ac187ab7c33bb3a2c44ddba (commit)


- Log -----------------------------------------------------------------
commit 3426de2262caee3283b88c40308b99009182fcd1
Author: Richard Levitte <[email protected]>
Date:   Sat Jul 2 10:28:39 2016 +0200

    VMS: Add installation verification procedure
    
    On VMS, it's customary to have a procedure to check that the software
    was installed correctly and can run as advertised.
    
    The procedure added here is fairly simple, it checks that all
    libraries are in place, that the header crypto.h is in place, and that
    the command 'openssl version -a' runs without trouble.
    
    Reviewed-by: Rich Salz <[email protected]>

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

Summary of changes:
 Configurations/descrip.mms.tmpl | 17 +++++++++++++++--
 VMS/openssl_ivp.com.in          | 40 ++++++++++++++++++++++++++++++++++++++++
 2 files changed, 55 insertions(+), 2 deletions(-)
 create mode 100644 VMS/openssl_ivp.com.in

diff --git a/Configurations/descrip.mms.tmpl b/Configurations/descrip.mms.tmpl
index f33801e..225f385 100644
--- a/Configurations/descrip.mms.tmpl
+++ b/Configurations/descrip.mms.tmpl
@@ -302,6 +302,9 @@ install : install_sw install_ssldirs install_docs
                     WRITE SYS$OUTPUT "then run @$(SYSTARTUP)openssl_utils to 
define commands" ; -
                     WRITE SYS$OUTPUT "" )
 
+check_install :
+        spawn/nolog @ossl_installroot:[SYSTEST]openssl_ivp.com
+
 uninstall : uninstall_docs uninstall_sw
 
 # Because VMS wants the generation number (or *) to delete files, we can't
@@ -345,9 +348,9 @@ descrip.mms : FORCE
 
 # Install helper targets #############################################
 
-install_sw : all install_dev install_engines install_runtime install_startup
+install_sw : all install_dev install_engines install_runtime install_startup 
install_ivp
 
-uninstall_sw : uninstall_dev uninstall_engines uninstall_runtime 
uninstall_startup
+uninstall_sw : uninstall_dev uninstall_engines uninstall_runtime 
uninstall_startup uninstall_ivp
 
 install_docs : install_html_docs
 
@@ -411,6 +414,10 @@ install_startup : [.VMS]openssl_startup.com 
[.VMS]openssl_shutdown.com -
         COPY/PROT=W:RE [.VMS]openssl_shutdown.com 
ossl_installroot:[SYS$STARTUP]
         COPY/PROT=W:RE [.VMS]openssl_utils.com ossl_installroot:[SYS$STARTUP]
 
+install_ivp : [.VMS]openssl_ivp.com check_INSTALLTOP
+        - CREATE/DIR ossl_installroot:[SYSTEST]
+        COPY/PROT=W:RE [.VMS]openssl_ivp.com ossl_installroot:[SYSTEST]
+
 [.VMS]openssl_startup.com : vmsconfig.pm {- sourcefile("VMS", 
"openssl_startup.com.in") -}
         - CREATE/DIR [.VMS]
         $(PERL) "-I." "-Mvmsconfig" {- sourcefile("util", "dofile.pl") -} -
@@ -429,6 +436,12 @@ install_startup : [.VMS]openssl_startup.com 
[.VMS]openssl_shutdown.com -
                 {- sourcefile("VMS", "openssl_shutdown.com.in") -} -
                 > [.VMS]openssl_shutdown.com
 
+[.VMS]openssl_ivp.com : vmsconfig.pm {- sourcefile("VMS", 
"openssl_ivp.com.in") -}
+        - CREATE/DIR [.VMS]
+        $(PERL) "-I." "-Mvmsconfig" {- sourcefile("util", "dofile.pl") -} -
+                {- sourcefile("VMS", "openssl_ivp.com.in") -} -
+                > [.VMS]openssl_ivp.com
+
 vmsconfig.pm : configdata.pm
         OPEN/WRITE/SHARE=READ CONFIG []vmsconfig.pm
         WRITE CONFIG "package vmsconfig;"
diff --git a/VMS/openssl_ivp.com.in b/VMS/openssl_ivp.com.in
new file mode 100644
index 0000000..950542b
--- /dev/null
+++ b/VMS/openssl_ivp.com.in
@@ -0,0 +1,40 @@
+$      ! OpenSSL Internal Verification Procedure
+$      !
+$      ! This script checks the consistency of a OpenSSL installation
+$      ! It had better be spawned, as it creates process logicals
+$
+$      ! Generated information
+$      INSTALLTOP := {- $config{INSTALLTOP} -}
+$      OPENSSLDIR := {- $config{OPENSSLDIR} -}
+$
+$      ! Make sure that INSTALLTOP and OPENSSLDIR become something one
+$      ! can use to call the startup procedure
+$      INSTALLTOP_ = F$PARSE("A.;",INSTALLTOP,,,"NO_CONCEAL") -
+                    - ".][000000" - "[000000." - "][" - "]A.;" + "."
+$      OPENSSLDIR_ = F$PARSE("A.;",OPENSSLDIR,,,"NO_CONCEAL") -
+                    - ".][000000" - "[000000." - "][" - "]A.;" + "."
+$
+$      @'INSTALLTOP_'SYS$STARTUP]openssl_startup
+$      @'INSTALLTOP_'SYS$STARTUP]openssl_utils
+$
+$      v    := {- sprintf "%02d%02d", split(/\./, $config{version}) -}
+$      pz   := {- $config{pointer_size} -}
+$      
+$      IF F$SEARCH("OSSL$LIBCRYPTO''pz'") .EQS. "" -
+           .OR. F$SEARCH("OSSL$LIBSSL''pz'") .EQS. "" -
+           .OR. F$SEARCH("OSSL$LIBCRYPTO_SHR''pz'") .EQS. "" -
+           .OR. F$SEARCH("OSSL$LIBSSL_SHR''pz'") .EQS. "" -
+           .OR. F$SEARCH("OSSL$INCLUDE:[OPENSSL]crypto.h") .EQS. "" -
+           .OR. F$SEARCH("OPENSSL:crypto.h") .EQS. "" -
+           .OR. F$SEARCH("OSSL$EXE:OPENSSL''v'.EXE") .EQS. ""
+$      THEN
+$          WRITE SYS$ERROR "Installation inconsistent"
+$          EXIT %x00018292 ! RMS$_FNF, file not found
+$      ENDIF
+$
+$      ! If something else is wrong with the installation, we're likely
+$      ! to get an image activation error here
+$      openssl version -a
+$
+$      WRITE SYS$ERROR "OpenSSL IVP passed"
+$      EXIT %x10000001
_____
openssl-commits mailing list
To unsubscribe: https://mta.openssl.org/mailman/listinfo/openssl-commits

Reply via email to