1 $ ! OpenSSL Internal Verification Procedure 2 $ ! 3 $ ! This script checks the consistency of a OpenSSL installation 4 $ ! It had better be spawned, as it creates process logicals 5 $ 6 $ ! Generated information 7 $ INSTALLTOP := {- $config{INSTALLTOP} -} 8 $ OPENSSLDIR := {- $config{OPENSSLDIR} -} 9 $ 10 $ ! Make sure that INSTALLTOP and OPENSSLDIR become something one 11 $ ! can use to call the startup procedure 12 $ INSTALLTOP_ = F$PARSE("A.;",INSTALLTOP,,,"NO_CONCEAL") - 13 - ".][000000" - "[000000." - "][" - "]A.;" + "." 14 $ OPENSSLDIR_ = F$PARSE("A.;",OPENSSLDIR,,,"NO_CONCEAL") - 15 - ".][000000" - "[000000." - "][" - "]A.;" + "." 16 $ 17 $ v := {- sprintf "%02d", split(/\./, $config{version}) -} 18 $ pz := {- $target{pointer_size} -} 19 $ 20 $ @'INSTALLTOP_'SYS$STARTUP]openssl_startup'v' 21 $ @'INSTALLTOP_'SYS$STARTUP]openssl_utils'v' 22 $ 23 $ IF F$SEARCH("OSSL$LIBCRYPTO''pz'") .EQS. "" - 24 .OR. F$SEARCH("OSSL$LIBSSL''pz'") .EQS. "" {- output_off() if $disabled{shared}; "" -}- 25 .OR. F$SEARCH("OSSL$LIBCRYPTO_SHR''pz'") .EQS. "" - 26 .OR. F$SEARCH("OSSL$LIBSSL_SHR''pz'") .EQS. "" {- output_on() if $disabled{shared}; "" -}- 27 .OR. F$SEARCH("OSSL$INCLUDE:[OPENSSL]crypto.h") .EQS. "" - 28 .OR. F$SEARCH("OPENSSL:crypto.h") .EQS. "" - 29 .OR. F$SEARCH("OSSL$EXE:OPENSSL''v'.EXE") .EQS. "" 30 $ THEN 31 $ WRITE SYS$ERROR "Installation inconsistent" 32 $ EXIT %x00018292 ! RMS$_FNF, file not found 33 $ ENDIF 34 $ 35 $ ON ERROR THEN GOTO error 36 $ 37 $ ! If something else is wrong with the installation, we're likely 38 $ ! to get an image activation error here 39 $ openssl version -a 40 $ 41 $ ! FUTURE ENHANCEMENT: Verify that engines are where they should be. 42 $ ! openssl engine -c -t checker 43 $ 44 $ ! Verify that the built in providers are reachable. If they aren't, 45 $ ! then we're likely to get an image activation error here 46 $ openssl list -provider base -providers 47 $ openssl list -provider default -providers 48 $ openssl list -provider legacy -providers 49 $ 50 $ WRITE SYS$ERROR "OpenSSL IVP passed" 51 $ EXIT %x10000001 52 $ 53 $ error: 54 $ save_status = $STATUS 55 $ WRITE SYS$ERROR "OpenSSL IVP failed" 56 $ EXIT 'save_status' 57