xref: /openssl/VMS/openssl_ivp.com.in (revision 0c5307ef)
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 $config{no_shared}; "" -}-
25           .OR. F$SEARCH("OSSL$LIBCRYPTO_SHR''pz'") .EQS. "" -
26           .OR. F$SEARCH("OSSL$LIBSSL_SHR''pz'") .EQS. "" {- output_on() if $config{no_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