summaryrefslogtreecommitdiff
path: root/src/lib/libcrypto/crypto-lib.com
diff options
context:
space:
mode:
Diffstat (limited to 'src/lib/libcrypto/crypto-lib.com')
-rw-r--r--src/lib/libcrypto/crypto-lib.com439
1 files changed, 352 insertions, 87 deletions
diff --git a/src/lib/libcrypto/crypto-lib.com b/src/lib/libcrypto/crypto-lib.com
index bf916528eb..79d86771e8 100644
--- a/src/lib/libcrypto/crypto-lib.com
+++ b/src/lib/libcrypto/crypto-lib.com
@@ -14,7 +14,14 @@ $!
14$! It was re-written so it would try to determine what "C" compiler to use 14$! It was re-written so it would try to determine what "C" compiler to use
15$! or you can specify which "C" compiler to use. 15$! or you can specify which "C" compiler to use.
16$! 16$!
17$! Specify RSAREF as P1 to compile with the RSAREF library instead of 17$! Specify the following as P1 to build just that part or ALL to just
18$! build everything.
19$!
20$! LIBRARY To just compile the [.xxx.EXE.CRYPTO]LIBCRYPTO.OLB Library.
21$! APPS To just compile the [.xxx.EXE.CRYPTO]*.EXE
22$! ALL To do both LIBRARY and APPS
23$!
24$! Specify RSAREF as P2 to compile with the RSAREF library instead of
18$! the regular one. If you specify NORSAREF it will compile with the 25$! the regular one. If you specify NORSAREF it will compile with the
19$! regular RSAREF routines. (Note: If you are in the United States 26$! regular RSAREF routines. (Note: If you are in the United States
20$! you MUST compile with RSAREF unless you have a license from RSA). 27$! you MUST compile with RSAREF unless you have a license from RSA).
@@ -26,10 +33,10 @@ $! directory structure stored. You have to extract the file
26$! into the [.RSAREF] directory under the root directory as that 33$! into the [.RSAREF] directory under the root directory as that
27$! is where the scripts will look for the files. 34$! is where the scripts will look for the files.
28$! 35$!
29$! Specify DEBUG or NODEBUG as P2 to compile with or without debugger 36$! Specify DEBUG or NODEBUG as P3 to compile with or without debugger
30$! information. 37$! information.
31$! 38$!
32$! Specify which compiler at P3 to try to compile under. 39$! Specify which compiler at P4 to try to compile under.
33$! 40$!
34$! VAXC For VAX C. 41$! VAXC For VAX C.
35$! DECC For DEC C. 42$! DECC For DEC C.
@@ -38,15 +45,15 @@ $!
38$! If you don't speficy a compiler, it will try to determine which 45$! If you don't speficy a compiler, it will try to determine which
39$! "C" compiler to use. 46$! "C" compiler to use.
40$! 47$!
41$! P4, if defined, sets a TCP/IP library to use, through one of the following 48$! P5, if defined, sets a TCP/IP library to use, through one of the following
42$! keywords: 49$! keywords:
43$! 50$!
44$! UCX for UCX 51$! UCX for UCX
45$! SOCKETSHR for SOCKETSHR+NETLIB 52$! SOCKETSHR for SOCKETSHR+NETLIB
46$! 53$!
47$! P5, if defined, sets a compiler thread NOT needed on OpenVMS 7.1 (and up) 54$! P6, if defined, sets a compiler thread NOT needed on OpenVMS 7.1 (and up)
48$! 55$!
49$! P6, if defined, sets a choice of crypto methods to compile. 56$! P7, if defined, sets a choice of crypto methods to compile.
50$! WARNING: this should only be done to recompile some part of an already 57$! WARNING: this should only be done to recompile some part of an already
51$! fully compiled library. 58$! fully compiled library.
52$! 59$!
@@ -79,12 +86,13 @@ $ ENDIF
79$! 86$!
80$! Define The Different Encryption Types. 87$! Define The Different Encryption Types.
81$! 88$!
82$ ENCRYPT_TYPES = ",MD2,MD5,SHA,MDC2,HMAC,RIPEMD,"+ - 89$ ENCRYPT_TYPES = "Basic,MD2,MD5,SHA,MDC2,HMAC,RIPEMD,"+ -
83 "DES,RC2,RC4,RC5,IDEA,BF,CAST,"+ - 90 "DES,RC2,RC4,RC5,IDEA,BF,CAST,"+ -
84 "BN,RSA,DSA,DH,"+ - 91 "BN,RSA,DSA,DH,"+ -
85 "BUFFER,BIO,STACK,LHASH,RAND,ERR,OBJECTS,"+ - 92 "BUFFER,BIO,STACK,LHASH,RAND,ERR,OBJECTS,"+ -
86 "EVP,EVP_2,ASN1,ASN1_2,PEM,X509,X509V3,"+ - 93 "EVP,EVP_2,ASN1,ASN1_2,PEM,X509,X509V3,"+ -
87 "CONF,TXT_DB,PKCS7,PKCS12,COMP" 94 "CONF,TXT_DB,PKCS7,PKCS12,COMP"
95$ ENCRYPT_PROGRAMS = "DES,PKCS7"
88$! 96$!
89$! Check To Make Sure We Have Valid Command Line Parameters. 97$! Check To Make Sure We Have Valid Command Line Parameters.
90$! 98$!
@@ -136,6 +144,14 @@ $! Define The Library Name.
136$! 144$!
137$ LIB_NAME := 'EXE_DIR'LIBCRYPTO.OLB 145$ LIB_NAME := 'EXE_DIR'LIBCRYPTO.OLB
138$! 146$!
147$! Define The CRYPTO-LIB We Are To Use.
148$!
149$ CRYPTO_LIB := 'EXE_DIR'LIBCRYPTO.OLB
150$!
151$! Define The RSAREF-LIB We Are To Use.
152$!
153$ RSAREF_LIB := SYS$DISK:[-.'ARCH'.EXE.RSAREF]LIBRSAGLUE.OLB
154$!
139$! Check To See If We Already Have A "[.xxx.EXE.CRYPTO]LIBCRYPTO.OLB" Library... 155$! Check To See If We Already Have A "[.xxx.EXE.CRYPTO]LIBCRYPTO.OLB" Library...
140$! 156$!
141$ IF (F$SEARCH(LIB_NAME).EQS."") 157$ IF (F$SEARCH(LIB_NAME).EQS."")
@@ -149,9 +165,16 @@ $! End The Library Check.
149$! 165$!
150$ ENDIF 166$ ENDIF
151$! 167$!
168$! Build our options file for the application
169$!
170$ GOSUB CHECK_OPT_FILE
171$!
152$! Define The Different Encryption "library" Strings. 172$! Define The Different Encryption "library" Strings.
153$! 173$!
154$ LIB_ = "cryptlib,mem,cversion,ex_data,tmdiff,cpt_err" 174$ APPS_DES = "DES/DES,CBC3_ENC"
175$ APPS_PKCS7 = "ENC/ENC;DEC/DEC;SIGN/SIGN;VERIFY/VERIFY,EXAMPLE"
176$
177$ LIB_ = "cryptlib,mem,mem_dbg,cversion,ex_data,tmdiff,cpt_err"
155$ LIB_MD2 = "md2_dgst,md2_one" 178$ LIB_MD2 = "md2_dgst,md2_one"
156$ LIB_MD5 = "md5_dgst,md5_one" 179$ LIB_MD5 = "md5_dgst,md5_one"
157$ LIB_SHA = "sha_dgst,sha1dgst,sha_one,sha1_one" 180$ LIB_SHA = "sha_dgst,sha1dgst,sha_one,sha1_one"
@@ -171,14 +194,14 @@ $ LIB_IDEA = "i_cbc,i_cfb64,i_ofb64,i_ecb,i_skey"
171$ LIB_BF = "bf_skey,bf_ecb,bf_enc,bf_cfb64,bf_ofb64" 194$ LIB_BF = "bf_skey,bf_ecb,bf_enc,bf_cfb64,bf_ofb64"
172$ LIB_CAST = "c_skey,c_ecb,c_enc,c_cfb64,c_ofb64" 195$ LIB_CAST = "c_skey,c_ecb,c_enc,c_cfb64,c_ofb64"
173$ LIB_BN_ASM = "[.asm]vms.mar,vms-helper" 196$ LIB_BN_ASM = "[.asm]vms.mar,vms-helper"
174$ IF F$TRNLNM("OPENSSL_NO_ASM") .NES. "" THEN LIB_BN_ASM = "bn_asm" 197$ IF F$TRNLNM("OPENSSL_NO_ASM").OR.ARCH.EQS."AXP" THEN LIB_BN_ASM = "bn_asm"
175$ LIB_BN = "bn_add,bn_div,bn_exp,bn_lib,bn_mul,"+ - 198$ LIB_BN = "bn_add,bn_div,bn_exp,bn_lib,bn_ctx,bn_mul,"+ -
176 "bn_print,bn_rand,bn_shift,bn_word,bn_blind,"+ - 199 "bn_print,bn_rand,bn_shift,bn_word,bn_blind,"+ -
177 "bn_gcd,bn_prime,bn_err,bn_sqr,"+LIB_BN_ASM+",bn_recp,bn_mont,"+ - 200 "bn_gcd,bn_prime,bn_err,bn_sqr,"+LIB_BN_ASM+",bn_recp,bn_mont,"+ -
178 "bn_mpi,bn_exp2" 201 "bn_mpi,bn_exp2"
179$ LIB_RSA = "rsa_eay,rsa_gen,rsa_lib,rsa_sign,rsa_saos,rsa_err,"+ - 202$ LIB_RSA = "rsa_eay,rsa_gen,rsa_lib,rsa_sign,rsa_saos,rsa_err,"+ -
180 "rsa_pk1,rsa_ssl,rsa_none,rsa_oaep,rsa_chk" 203 "rsa_pk1,rsa_ssl,rsa_none,rsa_oaep,rsa_chk,rsa_null"
181$ LIB_DSA = "dsa_gen,dsa_key,dsa_lib,dsa_asn1,dsa_vrf,dsa_sign,dsa_err" 204$ LIB_DSA = "dsa_gen,dsa_key,dsa_lib,dsa_asn1,dsa_vrf,dsa_sign,dsa_err,dsa_ossl"
182$ LIB_DH = "dh_gen,dh_key,dh_lib,dh_check,dh_err" 205$ LIB_DH = "dh_gen,dh_key,dh_lib,dh_check,dh_err"
183$ LIB_BUFFER = "buffer,buf_err" 206$ LIB_BUFFER = "buffer,buf_err"
184$ LIB_BIO = "bio_lib,bio_cb,bio_err,"+ - 207$ LIB_BIO = "bio_lib,bio_cb,bio_err,"+ -
@@ -188,7 +211,7 @@ $ LIB_BIO = "bio_lib,bio_cb,bio_err,"+ -
188 "b_sock,bss_acpt,bf_nbio,bss_rtcp,bss_bio" ! + ",bss_log" for syslog 211 "b_sock,bss_acpt,bf_nbio,bss_rtcp,bss_bio" ! + ",bss_log" for syslog
189$ LIB_STACK = "stack" 212$ LIB_STACK = "stack"
190$ LIB_LHASH = "lhash,lh_stats" 213$ LIB_LHASH = "lhash,lh_stats"
191$ LIB_RAND = "md_rand,randfile,rand_lib" 214$ LIB_RAND = "md_rand,randfile,rand_lib,rand_err,rand_egd"
192$ LIB_ERR = "err,err_all,err_prn" 215$ LIB_ERR = "err,err_all,err_prn"
193$ LIB_OBJECTS = "o_names,obj_dat,obj_lib,obj_err" 216$ LIB_OBJECTS = "o_names,obj_dat,obj_lib,obj_err"
194$ LIB_EVP = "encode,digest,evp_enc,evp_key,"+ - 217$ LIB_EVP = "encode,digest,evp_enc,evp_key,"+ -
@@ -204,38 +227,39 @@ $ LIB_EVP_2 = "e_ecb_c,e_cbc_c,e_cfb_c,e_ofb_c,"+ -
204 "m_ripemd,"+ - 227 "m_ripemd,"+ -
205 "p_open,p_seal,p_sign,p_verify,p_lib,p_enc,p_dec,"+ - 228 "p_open,p_seal,p_sign,p_verify,p_lib,p_enc,p_dec,"+ -
206 "bio_md,bio_b64,bio_enc,evp_err,e_null,"+ - 229 "bio_md,bio_b64,bio_enc,evp_err,e_null,"+ -
207 "c_all,evp_lib,bio_ok,evp_pkey,evp_pbe,p5_crpt,p5_crpt2" 230 "c_all,c_allc,c_alld,evp_lib,bio_ok,"+-
231 "evp_pkey,evp_pbe,p5_crpt,p5_crpt2"
208$ LIB_ASN1 = "a_object,a_bitstr,a_utctm,a_gentm,a_time,a_int,a_octet,"+ - 232$ LIB_ASN1 = "a_object,a_bitstr,a_utctm,a_gentm,a_time,a_int,a_octet,"+ -
209 "a_print,a_type,a_set,a_dup,a_d2i_fp,a_i2d_fp,a_bmp,"+ - 233 "a_null,a_print,a_type,a_set,a_dup,a_d2i_fp,a_i2d_fp,a_bmp,"+ -
210 "a_enum,a_vis,a_utf8,a_sign,a_digest,a_verify,"+ - 234 "a_enum,a_vis,a_utf8,a_sign,a_digest,a_verify,a_mbstr,"+ -
211 "x_algor,x_val,x_pubkey,x_sig,x_req,x_attrib,"+ - 235 "x_algor,x_val,x_pubkey,x_sig,x_req,x_attrib,"+ -
212 "x_name,x_cinf,x_x509,x_crl,x_info,x_spki,nsseq,"+ - 236 "x_name,x_cinf,x_x509,x_x509a,x_crl,x_info,x_spki,nsseq,"+ -
213 "d2i_r_pr,i2d_r_pr,d2i_r_pu,i2d_r_pu,"+ - 237 "d2i_r_pr,i2d_r_pr,d2i_r_pu,i2d_r_pu,"+ -
214 "d2i_s_pr,i2d_s_pr,d2i_s_pu,i2d_s_pu,"+ - 238 "d2i_s_pr,i2d_s_pr,d2i_s_pu,i2d_s_pu,"+ -
215 "d2i_pu,d2i_pr,i2d_pu,i2d_pr" 239 "d2i_pu,d2i_pr,i2d_pu,i2d_pr"
216$ LIB_ASN1_2 = "t_req,t_x509,t_crl,t_pkey,"+ - 240$ LIB_ASN1_2 = "t_req,t_x509,t_x509a,t_crl,t_pkey,t_spki,t_bitst,"+ -
217 "p7_i_s,p7_signi,p7_signd,p7_recip,p7_enc_c,p7_evp,"+ - 241 "p7_i_s,p7_signi,p7_signd,p7_recip,p7_enc_c,p7_evp,"+ -
218 "p7_dgst,p7_s_e,p7_enc,p7_lib,"+ - 242 "p7_dgst,p7_s_e,p7_enc,p7_lib,"+ -
219 "f_int,f_string,i2d_dhp,i2d_dsap,d2i_dhp,d2i_dsap,n_pkey,"+ - 243 "f_int,f_string,i2d_dhp,i2d_dsap,d2i_dhp,d2i_dsap,n_pkey,"+ -
220 "f_enum,a_hdr,x_pkey,a_bool,x_exten,"+ - 244 "f_enum,a_hdr,x_pkey,a_bool,x_exten,"+ -
221 "asn1_par,asn1_lib,asn1_err,a_meth,a_bytes,"+ - 245 "asn1_par,asn1_lib,asn1_err,a_meth,a_bytes,a_strnid,"+ -
222 "evp_asn1,asn_pack,p5_pbe,p5_pbev2,p8_pkey" 246 "evp_asn1,asn_pack,p5_pbe,p5_pbev2,p8_pkey"
223$ LIB_PEM = "pem_sign,pem_seal,pem_info,pem_lib,pem_all,pem_err" 247$ LIB_PEM = "pem_sign,pem_seal,pem_info,pem_lib,pem_all,pem_err"
224$ LIB_X509 = "x509_def,x509_d2,x509_r2x,x509_cmp,"+ - 248$ LIB_X509 = "x509_def,x509_d2,x509_r2x,x509_cmp,"+ -
225 "x509_obj,x509_req,x509_vfy,"+ - 249 "x509_obj,x509_req,x509spki,x509_vfy,"+ -
226 "x509_set,x509rset,x509_err,"+ - 250 "x509_set,x509rset,x509_err,"+ -
227 "x509name,x509_v3,x509_ext,"+ - 251 "x509name,x509_v3,x509_ext,x509_att,"+ -
228 "x509type,x509_lu,x_all,x509_txt,"+ - 252 "x509type,x509_lu,x_all,x509_txt,"+ -
229 "by_file,by_dir" 253 "x509_trs,by_file,by_dir"
230$ LIB_X509V3 = "v3_bcons,v3_bitst,v3_conf,v3_extku,v3_ia5,v3_lib,"+ - 254$ LIB_X509V3 = "v3_bcons,v3_bitst,v3_conf,v3_extku,v3_ia5,v3_lib,"+ -
231 "v3_prn,v3_utl,v3err,v3_genn,v3_alt,v3_skey,v3_akey,v3_pku,"+ - 255 "v3_prn,v3_utl,v3err,v3_genn,v3_alt,v3_skey,v3_akey,v3_pku,"+ -
232 "v3_int,v3_enum,v3_sxnet,v3_cpols,v3_crld" 256 "v3_int,v3_enum,v3_sxnet,v3_cpols,v3_crld,v3_purp,v3_info"
233$ LIB_CONF = "conf,conf_err" 257$ LIB_CONF = "conf,conf_err"
234$ LIB_TXT_DB = "txt_db" 258$ LIB_TXT_DB = "txt_db"
235$ LIB_PKCS7 = "pk7_lib,pkcs7err,pk7_doit" 259$ LIB_PKCS7 = "pk7_lib,pkcs7err,pk7_doit,pk7_smime,pk7_attr,pk7_mime"
236$ LIB_PKCS12 = "p12_add,p12_attr,p12_bags,p12_crpt,p12_crt,p12_decr,"+ - 260$ LIB_PKCS12 = "p12_add,p12_attr,p12_bags,p12_crpt,p12_crt,p12_decr,"+ -
237 "p12_init,p12_key,p12_kiss,p12_lib,p12_mac,p12_mutl,"+ - 261 "p12_init,p12_key,p12_kiss,p12_lib,p12_mac,p12_mutl,"+ -
238 "p12_sbag,p12_utl,pk12err" 262 "p12_sbag,p12_utl,p12_npas,pk12err"
239$ LIB_COMP = "comp_lib,"+ - 263$ LIB_COMP = "comp_lib,"+ -
240 "c_rle,c_zlib" 264 "c_rle,c_zlib"
241$! 265$!
@@ -248,7 +272,8 @@ $ COMPILEWITH_CC5 = ",md2_dgst,md5_dgst,mdc2dgst,sha_dgst,sha1dgst," + -
248$! 272$!
249$! Check To See If We Are Going To Use RSAREF. 273$! Check To See If We Are Going To Use RSAREF.
250$! 274$!
251$ IF (RSAREF.EQS."TRUE" .AND. ENCRYPT_TYPES - "RSA".NES.ENCRYPT_TYPES) 275$ IF (RSAREF.EQS."TRUE" .AND. ENCRYPT_TYPES - "RSA".NES.ENCRYPT_TYPES -
276 .AND. (BUILDALL .EQS. "TRUE" .OR. BUILDALL .EQS. "LIBRARY"))
252$ THEN 277$ THEN
253$! 278$!
254$! Check To See If The File [-.RSAREF]RSAREF.C Is Actually There. 279$! Check To See If The File [-.RSAREF]RSAREF.C Is Actually There.
@@ -340,6 +365,8 @@ $!
340$! Extract The Module Name From The Encryption List. 365$! Extract The Module Name From The Encryption List.
341$! 366$!
342$ MODULE_NAME = F$ELEMENT(MODULE_COUNTER,",",ENCRYPT_TYPES) 367$ MODULE_NAME = F$ELEMENT(MODULE_COUNTER,",",ENCRYPT_TYPES)
368$ IF MODULE_NAME.EQS."Basic" THEN MODULE_NAME = ""
369$ MODULE_NAME1 = MODULE_NAME
343$! 370$!
344$! Check To See If We Are At The End Of The Module List. 371$! Check To See If We Are At The End Of The Module List.
345$! 372$!
@@ -358,20 +385,10 @@ $! Increment The Moudle Counter.
358$! 385$!
359$ MODULE_COUNTER = MODULE_COUNTER + 1 386$ MODULE_COUNTER = MODULE_COUNTER + 1
360$! 387$!
361$! Tell The User What Module We Are Building. 388$! Create The Library and Apps Module Names.
362$!
363$ IF (MODULE_NAME.NES."")
364$ THEN
365$ WRITE SYS$OUTPUT "Compiling The ",MODULE_NAME," Files."
366$ ENDIF
367$!
368$! Define A File Counter And Set It To "0".
369$!
370$ FILE_COUNTER = 0
371$!
372$! Create The Library Module Name.
373$! 389$!
374$ LIB_MODULE = "LIB_" + MODULE_NAME 390$ LIB_MODULE = "LIB_" + MODULE_NAME
391$ APPS_MODULE = "APPS_" + MODULE_NAME
375$ IF (MODULE_NAME.EQS."ASN1_2") 392$ IF (MODULE_NAME.EQS."ASN1_2")
376$ THEN 393$ THEN
377$ MODULE_NAME = "ASN1" 394$ MODULE_NAME = "ASN1"
@@ -381,6 +398,11 @@ $ THEN
381$ MODULE_NAME = "EVP" 398$ MODULE_NAME = "EVP"
382$ ENDIF 399$ ENDIF
383$! 400$!
401$! Set state (can be LIB and APPS)
402$!
403$ STATE = "LIB"
404$ IF BUILDALL .EQS. "APPS" THEN STATE = "APPS"
405$!
384$! Check if the library module name actually is defined 406$! Check if the library module name actually is defined
385$! 407$!
386$ IF F$TYPE('LIB_MODULE') .EQS. "" 408$ IF F$TYPE('LIB_MODULE') .EQS. ""
@@ -391,22 +413,92 @@ $ WRITE SYS$ERROR ""
391$ GOTO MODULE_NEXT 413$ GOTO MODULE_NEXT
392$ ENDIF 414$ ENDIF
393$! 415$!
416$! Top Of The Module Loop.
417$!
418$ MODULE_AGAIN:
419$!
420$! Tell The User What Module We Are Building.
421$!
422$ IF (MODULE_NAME1.NES."")
423$ THEN
424$ IF STATE .EQS. "LIB"
425$ THEN
426$ WRITE SYS$OUTPUT "Compiling The ",MODULE_NAME1," Library Files. (",BUILDALL,",",STATE,")"
427$ ELSE IF F$TYPE('APPS_MODULE') .NES. ""
428$ THEN
429$ WRITE SYS$OUTPUT "Compiling The ",MODULE_NAME1," Applications. (",BUILDALL,",",STATE,")"
430$ ENDIF
431$ ENDIF
432$ ENDIF
433$!
434$! Define A File Counter And Set It To "0".
435$!
436$ FILE_COUNTER = 0
437$ APPLICATION = ""
438$ APPLICATION_COUNTER = 0
439$!
394$! Top Of The File Loop. 440$! Top Of The File Loop.
395$! 441$!
396$ NEXT_FILE: 442$ NEXT_FILE:
397$! 443$!
398$! O.K, Extract The File Name From The File List. 444$! Look in the LIB_MODULE is we're in state LIB
445$!
446$ IF STATE .EQS. "LIB"
447$ THEN
448$!
449$! O.K, Extract The File Name From The File List.
450$!
451$ FILE_NAME = F$ELEMENT(FILE_COUNTER,",",'LIB_MODULE')
452$!
453$! else
454$!
455$ ELSE
456$ FILE_NAME = ","
457$!
458$ IF F$TYPE('APPS_MODULE') .NES. ""
459$ THEN
460$!
461$! Extract The File Name From The File List.
462$! This part is a bit more complicated.
399$! 463$!
400$ FILE_NAME = F$ELEMENT(FILE_COUNTER,",",'LIB_MODULE') 464$ IF APPLICATION .EQS. ""
465$ THEN
466$ APPLICATION = F$ELEMENT(APPLICATION_COUNTER,";",'APPS_MODULE')
467$ APPLICATION_COUNTER = APPLICATION_COUNTER + 1
468$ APPLICATION_OBJECTS = F$ELEMENT(1,"/",APPLICATION)
469$ APPLICATION = F$ELEMENT(0,"/",APPLICATION)
470$ FILE_COUNTER = 0
471$ ENDIF
472$
473$! WRITE SYS$OUTPUT "DEBUG: SHOW SYMBOL APPLICATION*"
474$! SHOW SYMBOL APPLICATION*
475$!
476$ IF APPLICATION .NES. ";"
477$ THEN
478$ FILE_NAME = F$ELEMENT(FILE_COUNTER,",",APPLICATION_OBJECTS)
479$ IF FILE_NAME .EQS. ","
480$ THEN
481$ APPLICATION = ""
482$ GOTO NEXT_FILE
483$ ENDIF
484$ ENDIF
485$ ENDIF
486$ ENDIF
401$! 487$!
402$! Check To See If We Are At The End Of The File List. 488$! Check To See If We Are At The End Of The File List.
403$! 489$!
404$ IF (FILE_NAME.EQS.",") 490$ IF (FILE_NAME.EQS.",")
405$ THEN 491$ THEN
406$! 492$!
407$! We Are At The End Of The File List, Goto FILE_DONE. 493$! We Are At The End Of The File List, Change State Or Goto FILE_DONE.
408$! 494$!
409$ GOTO FILE_DONE 495$ IF STATE .EQS. "LIB" .AND. BUILDALL .NES. "LIBRARY"
496$ THEN
497$ STATE = "APPS"
498$ GOTO MODULE_AGAIN
499$ ELSE
500$ GOTO FILE_DONE
501$ ENDIF
410$! 502$!
411$! End The File List Check. 503$! End The File List Check.
412$! 504$!
@@ -458,7 +550,7 @@ $! Tell The User We Are Compiling The File.
458$! 550$!
459$ IF (MODULE_NAME.EQS."") 551$ IF (MODULE_NAME.EQS."")
460$ THEN 552$ THEN
461 WRITE SYS$OUTPUT "Compiling The ",FILE_NAME," File." 553$ WRITE SYS$OUTPUT "Compiling The ",FILE_NAME," File. (",BUILDALL,",",STATE,")"
462$ ENDIF 554$ ENDIF
463$ IF (MODULE_NAME.NES."") 555$ IF (MODULE_NAME.NES."")
464$ THEN 556$ THEN
@@ -490,14 +582,17 @@ $ ENDIF
490$ ENDIF 582$ ENDIF
491$ ENDIF 583$ ENDIF
492$ ENDIF 584$ ENDIF
585$ IF STATE .EQS. "LIB"
586$ THEN
493$! 587$!
494$! Add It To The Library. 588$! Add It To The Library.
495$! 589$!
496$ LIBRARY/REPLACE 'LIB_NAME' 'OBJECT_FILE' 590$ LIBRARY/REPLACE 'LIB_NAME' 'OBJECT_FILE'
497$! 591$!
498$! Time To Clean Up The Object File. 592$! Time To Clean Up The Object File.
499$! 593$!
500$ DELETE 'OBJECT_FILE';* 594$ DELETE 'OBJECT_FILE';*
595$ ENDIF
501$! 596$!
502$! Go Back And Do It Again. 597$! Go Back And Do It Again.
503$! 598$!
@@ -507,6 +602,99 @@ $! All Done With This Library Part.
507$! 602$!
508$ FILE_DONE: 603$ FILE_DONE:
509$! 604$!
605$! Time To Build Some Applications
606$!
607$ IF F$TYPE('APPS_MODULE') .NES. "" .AND. BUILDALL .NES. "LIBRARY"
608$ THEN
609$ APPLICATION_COUNTER = 0
610$ NEXT_APPLICATION:
611$ APPLICATION = F$ELEMENT(APPLICATION_COUNTER,";",'APPS_MODULE')
612$ IF APPLICATION .EQS. ";" THEN GOTO APPLICATION_DONE
613$
614$ APPLICATION_COUNTER = APPLICATION_COUNTER + 1
615$ APPLICATION_OBJECTS = F$ELEMENT(1,"/",APPLICATION)
616$ APPLICATION = F$ELEMENT(0,"/",APPLICATION)
617$
618$! WRITE SYS$OUTPUT "DEBUG: SHOW SYMBOL APPLICATION*"
619$! SHOW SYMBOL APPLICATION*
620$!
621$! Tell the user what happens
622$!
623$ WRITE SYS$OUTPUT " ",APPLICATION,".exe"
624$!
625$! Link The Program, Check To See If We Need To Link With RSAREF Or Not.
626$!
627$ IF (RSAREF.EQS."TRUE")
628$ THEN
629$!
630$! Check To See If We Are To Link With A Specific TCP/IP Library.
631$!
632$ IF (TCPIP_LIB.NES."")
633$ THEN
634$!
635$! Link With The RSAREF Library And A Specific TCP/IP Library.
636$!
637$ LINK/'DEBUGGER'/'TRACEBACK'/EXE='EXE_DIR''APPLICATION'.EXE -
638 'OBJ_DIR''APPLICATION_OBJECTS', -
639 'CRYPTO_LIB'/LIBRARY,'RSAREF_LIB'/LIBRARY, -
640 'TCPIP_LIB','OPT_FILE'/OPTION
641$!
642$! Else...
643$!
644$ ELSE
645$!
646$! Link With The RSAREF Library And NO TCP/IP Library.
647$!
648$ LINK/'DEBUGGER'/'TRACEBACK'/EXE='EXE_DIR''APPLICATION'.EXE -
649 'OBJ_DIR''APPLICATION_OBJECTS', -
650 'CRYPTO_LIB'/LIBRARY,'RSAREF_LIB'/LIBRARY, -
651 'OPT_FILE'/OPTION
652$!
653$! End The TCP/IP Library Check.
654$!
655$ ENDIF
656$!
657$! Else...
658$!
659$ ELSE
660$!
661$! Don't Link With The RSAREF Routines.
662$!
663$!
664$! Check To See If We Are To Link With A Specific TCP/IP Library.
665$!
666$ IF (TCPIP_LIB.NES."")
667$ THEN
668$!
669$! Don't Link With The RSAREF Routines And TCP/IP Library.
670$!
671$ LINK/'DEBUGGER'/'TRACEBACK'/EXE='EXE_DIR''APPLICATION'.EXE -
672 'OBJ_DIR''APPLICATION_OBJECTS', -
673 'CRYPTO_LIB'/LIBRARY, -
674 'TCPIP_LIB','OPT_FILE'/OPTION
675$!
676$! Else...
677$!
678$ ELSE
679$!
680$! Don't Link With The RSAREF Routines And Link With A TCP/IP Library.
681$!
682$ LINK/'DEBUGGER'/'TRACEBACK'/EXE='EXE_DIR''APPLICATION'.EXE -
683 'OBJ_DIR''APPLICATION_OBJECTS',-
684 'CRYPTO_LIB'/LIBRARY, -
685 'OPT_FILE'/OPTION
686$!
687$! End The TCP/IP Library Check.
688$!
689$ ENDIF
690$!
691$! End The RSAREF Link Check.
692$!
693$ ENDIF
694$ GOTO NEXT_APPLICATION
695$ APPLICATION_DONE:
696$ ENDIF
697$!
510$! Go Back And Get The Next Module. 698$! Go Back And Get The Next Module.
511$! 699$!
512$ GOTO MODULE_NEXT 700$ GOTO MODULE_NEXT
@@ -653,17 +841,70 @@ $ CHECK_OPTIONS:
653$! 841$!
654$! Check To See If P1 Is Blank. 842$! Check To See If P1 Is Blank.
655$! 843$!
656$ IF (P1.EQS."NORSAREF") 844$ IF (P1.EQS."ALL")
657$ THEN 845$ THEN
658$! 846$!
659$! P1 Is NORSAREF, So Compile With The Regular RSA Libraries. 847$! P1 Is Blank, So Build Everything.
848$!
849$ BUILDALL = "TRUE"
850$!
851$! Else...
852$!
853$ ELSE
854$!
855$! Else, Check To See If P1 Has A Valid Arguement.
856$!
857$ IF (P1.EQS."LIBRARY").OR.(P1.EQS."APPS")
858$ THEN
859$!
860$! A Valid Arguement.
861$!
862$ BUILDALL = P1
863$!
864$! Else...
865$!
866$ ELSE
867$!
868$! Tell The User We Don't Know What They Want.
869$!
870$ WRITE SYS$OUTPUT ""
871$ WRITE SYS$OUTPUT "The Option ",P1," Is Invalid. The Valid Options Are:"
872$ WRITE SYS$OUTPUT ""
873$ WRITE SYS$OUTPUT " ALL : Just Build Everything."
874$ WRITE SYS$OUTPUT " LIBRARY : To Compile Just The [.xxx.EXE.SSL]LIBCRYPTO.OLB Library."
875$ WRITE SYS$OUTPUT " APPS : To Compile Just The [.xxx.EXE.SSL]*.EXE Programs."
876$ WRITE SYS$OUTPUT ""
877$ WRITE SYS$OUTPUT " Where 'xxx' Stands For:"
878$ WRITE SYS$OUTPUT ""
879$ WRITE SYS$OUTPUT " AXP : Alpha Architecture."
880$ WRITE SYS$OUTPUT " VAX : VAX Architecture."
881$ WRITE SYS$OUTPUT ""
882$!
883$! Time To EXIT.
884$!
885$ EXIT
886$!
887$! End The Valid Arguement Check.
888$!
889$ ENDIF
890$!
891$! End The P1 Check.
892$!
893$ ENDIF
894$!
895$! Check To See If P2 Is Blank.
896$!
897$ IF (P2.EQS."NORSAREF")
898$ THEN
899$!
900$! P2 Is NORSAREF, So Compile With The Regular RSA Libraries.
660$! 901$!
661$ RSAREF = "FALSE" 902$ RSAREF = "FALSE"
662$ ELSE 903$ ELSE
663$! 904$!
664$! Check To See If We Are To Use The RSAREF Library. 905$! Check To See If We Are To Use The RSAREF Library.
665$! 906$!
666$ IF (P1.EQS."RSAREF") 907$ IF (P2.EQS."RSAREF")
667$ THEN 908$ THEN
668$! 909$!
669$! Check To Make Sure We Have The RSAREF Source Code Directory. 910$! Check To Make Sure We Have The RSAREF Source Code Directory.
@@ -697,7 +938,7 @@ $!
697$! They Entered An Invalid Option.. 938$! They Entered An Invalid Option..
698$! 939$!
699$ WRITE SYS$OUTPUT "" 940$ WRITE SYS$OUTPUT ""
700$ WRITE SYS$OUTPUT "The Option ",P1," Is Invalid. The Valid Options Are:" 941$ WRITE SYS$OUTPUT "The Option ",P2," Is Invalid. The Valid Options Are:"
701$ WRITE SYS$OUTPUT "" 942$ WRITE SYS$OUTPUT ""
702$ WRITE SYS$OUTPUT " RSAREF : Compile With The RSAREF Library." 943$ WRITE SYS$OUTPUT " RSAREF : Compile With The RSAREF Library."
703$ WRITE SYS$OUTPUT " NORSAREF : Compile With The Regular RSA Library." 944$ WRITE SYS$OUTPUT " NORSAREF : Compile With The Regular RSA Library."
@@ -711,16 +952,16 @@ $! End The Valid Arguement Check.
711$! 952$!
712$ ENDIF 953$ ENDIF
713$! 954$!
714$! End The P1 Check. 955$! End The P2 Check.
715$! 956$!
716$ ENDIF 957$ ENDIF
717$! 958$!
718$! Check To See If P2 Is Blank. 959$! Check To See If P3 Is Blank.
719$! 960$!
720$ IF (P2.EQS."NODEBUG") 961$ IF (P3.EQS."NODEBUG")
721$ THEN 962$ THEN
722$! 963$!
723$! P2 Is NODEBUG, So Compile Without The Debugger Information. 964$! P3 Is NODEBUG, So Compile Without The Debugger Information.
724$! 965$!
725$ DEBUGGER = "NODEBUG" 966$ DEBUGGER = "NODEBUG"
726$ TRACEBACK = "NOTRACEBACK" 967$ TRACEBACK = "NOTRACEBACK"
@@ -733,7 +974,7 @@ $ ELSE
733$! 974$!
734$! Check To See If We Are To Compile With Debugger Information. 975$! Check To See If We Are To Compile With Debugger Information.
735$! 976$!
736$ IF (P2.EQS."DEBUG") 977$ IF (P3.EQS."DEBUG")
737$ THEN 978$ THEN
738$! 979$!
739$! Compile With Debugger Information. 980$! Compile With Debugger Information.
@@ -750,7 +991,7 @@ $!
750$! They Entered An Invalid Option.. 991$! They Entered An Invalid Option..
751$! 992$!
752$ WRITE SYS$OUTPUT "" 993$ WRITE SYS$OUTPUT ""
753$ WRITE SYS$OUTPUT "The Option ",P2," Is Invalid. The Valid Options Are:" 994$ WRITE SYS$OUTPUT "The Option ",P3," Is Invalid. The Valid Options Are:"
754$ WRITE SYS$OUTPUT "" 995$ WRITE SYS$OUTPUT ""
755$ WRITE SYS$OUTPUT " DEBUG : Compile With The Debugger Information." 996$ WRITE SYS$OUTPUT " DEBUG : Compile With The Debugger Information."
756$ WRITE SYS$OUTPUT " NODEBUG : Compile Without The Debugger Information." 997$ WRITE SYS$OUTPUT " NODEBUG : Compile Without The Debugger Information."
@@ -764,7 +1005,7 @@ $! End The Valid Arguement Check.
764$! 1005$!
765$ ENDIF 1006$ ENDIF
766$! 1007$!
767$! End The P2 Check. 1008$! End The P3 Check.
768$! 1009$!
769$ ENDIF 1010$ ENDIF
770$! 1011$!
@@ -774,9 +1015,9 @@ $! Written By: Richard Levitte
774$! richard@levitte.org 1015$! richard@levitte.org
775$! 1016$!
776$! 1017$!
777$! Check To See If We Have A Option For P5. 1018$! Check To See If We Have A Option For P6.
778$! 1019$!
779$ IF (P5.EQS."") 1020$ IF (P6.EQS."")
780$ THEN 1021$ THEN
781$! 1022$!
782$! Get The Version Of VMS We Are Using. 1023$! Get The Version Of VMS We Are Using.
@@ -798,13 +1039,13 @@ $! End The VMS Version Check.
798$! 1039$!
799$ ENDIF 1040$ ENDIF
800$! 1041$!
801$! End The P5 Check. 1042$! End The P6 Check.
802$! 1043$!
803$ ENDIF 1044$ ENDIF
804$! 1045$!
805$! Check To See If P3 Is Blank. 1046$! Check To See If P4 Is Blank.
806$! 1047$!
807$ IF (P3.EQS."") 1048$ IF (P4.EQS."")
808$ THEN 1049$ THEN
809$! 1050$!
810$! O.K., The User Didn't Specify A Compiler, Let's Try To 1051$! O.K., The User Didn't Specify A Compiler, Let's Try To
@@ -817,7 +1058,7 @@ $ THEN
817$! 1058$!
818$! Looks Like GNUC, Set To Use GNUC. 1059$! Looks Like GNUC, Set To Use GNUC.
819$! 1060$!
820$ P3 = "GNUC" 1061$ P4 = "GNUC"
821$! 1062$!
822$! Else... 1063$! Else...
823$! 1064$!
@@ -830,7 +1071,7 @@ $ THEN
830$! 1071$!
831$! Looks Like DECC, Set To Use DECC. 1072$! Looks Like DECC, Set To Use DECC.
832$! 1073$!
833$ P3 = "DECC" 1074$ P4 = "DECC"
834$! 1075$!
835$! Else... 1076$! Else...
836$! 1077$!
@@ -838,7 +1079,7 @@ $ ELSE
838$! 1079$!
839$! Looks Like VAXC, Set To Use VAXC. 1080$! Looks Like VAXC, Set To Use VAXC.
840$! 1081$!
841$ P3 = "VAXC" 1082$ P4 = "VAXC"
842$! 1083$!
843$! End The VAXC Compiler Check. 1084$! End The VAXC Compiler Check.
844$! 1085$!
@@ -852,9 +1093,9 @@ $! End The Compiler Check.
852$! 1093$!
853$ ENDIF 1094$ ENDIF
854$! 1095$!
855$! Check To See If We Have A Option For P4. 1096$! Check To See If We Have A Option For P5.
856$! 1097$!
857$ IF (P4.EQS."") 1098$ IF (P5.EQS."")
858$ THEN 1099$ THEN
859$! 1100$!
860$! Find out what socket library we have available 1101$! Find out what socket library we have available
@@ -864,7 +1105,7 @@ $ THEN
864$! 1105$!
865$! We have SOCKETSHR, and it is my opinion that it's the best to use. 1106$! We have SOCKETSHR, and it is my opinion that it's the best to use.
866$! 1107$!
867$ P4 = "SOCKETSHR" 1108$ P5 = "SOCKETSHR"
868$! 1109$!
869$! Tell the user 1110$! Tell the user
870$! 1111$!
@@ -884,7 +1125,7 @@ $ THEN
884$! 1125$!
885$! Last resort: a UCX or UCX-compatible library 1126$! Last resort: a UCX or UCX-compatible library
886$! 1127$!
887$ P4 = "UCX" 1128$ P5 = "UCX"
888$! 1129$!
889$! Tell the user 1130$! Tell the user
890$! 1131$!
@@ -898,22 +1139,46 @@ $ ENDIF
898$! 1139$!
899$! Set Up Initial CC Definitions, Possibly With User Ones 1140$! Set Up Initial CC Definitions, Possibly With User Ones
900$! 1141$!
901$ CCDEFS = "VMS=1,TCPIP_TYPE_''P4'" 1142$ CCDEFS = "VMS=1,TCPIP_TYPE_''P5'"
1143$ IF F$TRNLNM("OPENSSL_NO_ASM") THEN CCDEFS = CCDEFS + ",NO_ASM"
1144$ IF F$TRNLNM("OPENSSL_NO_RSA") THEN CCDEFS = CCDEFS + ",NO_RSA"
1145$ IF F$TRNLNM("OPENSSL_NO_DSA") THEN CCDEFS = CCDEFS + ",NO_DSA"
1146$ IF F$TRNLNM("OPENSSL_NO_DH") THEN CCDEFS = CCDEFS + ",NO_DH"
1147$ IF F$TRNLNM("OPENSSL_NO_MD2") THEN CCDEFS = CCDEFS + ",NO_MD2"
1148$ IF F$TRNLNM("OPENSSL_NO_MD5") THEN CCDEFS = CCDEFS + ",NO_MD5"
1149$ IF F$TRNLNM("OPENSSL_NO_RIPEMD") THEN CCDEFS = CCDEFS + ",NO_RIPEMD"
1150$ IF F$TRNLNM("OPENSSL_NO_SHA") THEN CCDEFS = CCDEFS + ",NO_SHA"
1151$ IF F$TRNLNM("OPENSSL_NO_SHA0") THEN CCDEFS = CCDEFS + ",NO_SHA0"
1152$ IF F$TRNLNM("OPENSSL_NO_SHA1") THEN CCDEFS = CCDEFS + ",NO_SHA1"
1153$ IF F$TRNLNM("OPENSSL_NO_DES")
1154$ THEN
1155$ CCDEFS = CCDEFS + ",NO_DES,NO_MDC2"
1156$ ELSE
1157$ IF F$TRNLNM("OPENSSL_NO_MDC2") THEN CCDEFS = CCDEFS + ",NO_MDC2"
1158$ ENDIF
1159$ IF F$TRNLNM("OPENSSL_NO_RC2") THEN CCDEFS = CCDEFS + ",NO_RC2"
1160$ IF F$TRNLNM("OPENSSL_NO_RC4") THEN CCDEFS = CCDEFS + ",NO_RC4"
1161$ IF F$TRNLNM("OPENSSL_NO_RC5") THEN CCDEFS = CCDEFS + ",NO_RC5"
1162$ IF F$TRNLNM("OPENSSL_NO_IDEA") THEN CCDEFS = CCDEFS + ",NO_IDEA"
1163$ IF F$TRNLNM("OPENSSL_NO_BF") THEN CCDEFS = CCDEFS + ",NO_BF"
1164$ IF F$TRNLNM("OPENSSL_NO_CAST") THEN CCDEFS = CCDEFS + ",NO_CAST"
1165$ IF F$TRNLNM("OPENSSL_NO_HMAC") THEN CCDEFS = CCDEFS + ",NO_HMAC"
1166$ IF F$TRNLNM("OPENSSL_NO_SSL2") THEN CCDEFS = CCDEFS + ",NO_SSL2"
902$ IF F$TYPE(USER_CCDEFS) .NES. "" THEN CCDEFS = CCDEFS + "," + USER_CCDEFS 1167$ IF F$TYPE(USER_CCDEFS) .NES. "" THEN CCDEFS = CCDEFS + "," + USER_CCDEFS
903$ CCEXTRAFLAGS = "" 1168$ CCEXTRAFLAGS = ""
904$ IF F$TYPE(USER_CCFLAGS) .NES. "" THEN CCEXTRAFLAGS = USER_CCFLAGS 1169$ IF F$TYPE(USER_CCFLAGS) .NES. "" THEN CCEXTRAFLAGS = USER_CCFLAGS
905$ CCDISABLEWARNINGS = "" 1170$ CCDISABLEWARNINGS = "LONGLONGTYPE,LONGLONGSUFX"
906$ IF F$TYPE(USER_CCDISABLEWARNINGS) .NES. "" THEN - 1171$ IF F$TYPE(USER_CCDISABLEWARNINGS) .NES. "" THEN -
907 CCDISABLEWARNINGS = USER_CCDISABLEWARNINGS 1172 CCDISABLEWARNINGS = CCDISABLEWARNINGS + "," + USER_CCDISABLEWARNINGS
908$! 1173$!
909$! Check To See If The User Entered A Valid Paramter. 1174$! Check To See If The User Entered A Valid Paramter.
910$! 1175$!
911$ IF (P3.EQS."VAXC").OR.(P3.EQS."DECC").OR.(P3.EQS."GNUC") 1176$ IF (P4.EQS."VAXC").OR.(P4.EQS."DECC").OR.(P4.EQS."GNUC")
912$ THEN 1177$ THEN
913$! 1178$!
914$! Check To See If The User Wanted DECC. 1179$! Check To See If The User Wanted DECC.
915$! 1180$!
916$ IF (P3.EQS."DECC") 1181$ IF (P4.EQS."DECC")
917$ THEN 1182$ THEN
918$! 1183$!
919$! Looks Like DECC, Set To Use DECC. 1184$! Looks Like DECC, Set To Use DECC.
@@ -942,7 +1207,7 @@ $ ENDIF
942$! 1207$!
943$! Check To See If We Are To Use VAXC. 1208$! Check To See If We Are To Use VAXC.
944$! 1209$!
945$ IF (P3.EQS."VAXC") 1210$ IF (P4.EQS."VAXC")
946$ THEN 1211$ THEN
947$! 1212$!
948$! Looks Like VAXC, Set To Use VAXC. 1213$! Looks Like VAXC, Set To Use VAXC.
@@ -980,7 +1245,7 @@ $ ENDIF
980$! 1245$!
981$! Check To See If We Are To Use GNU C. 1246$! Check To See If We Are To Use GNU C.
982$! 1247$!
983$ IF (P3.EQS."GNUC") 1248$ IF (P4.EQS."GNUC")
984$ THEN 1249$ THEN
985$! 1250$!
986$! Looks Like GNUC, Set To Use GNUC. 1251$! Looks Like GNUC, Set To Use GNUC.
@@ -1051,7 +1316,7 @@ $ CC4DISABLEWARNINGS = ""
1051$ ENDIF 1316$ ENDIF
1052$ CC3 = CC + "/DEFINE=(" + CCDEFS + ISSEVEN + ")" + CCDISABLEWARNINGS 1317$ CC3 = CC + "/DEFINE=(" + CCDEFS + ISSEVEN + ")" + CCDISABLEWARNINGS
1053$ CC = CC + "/DEFINE=(" + CCDEFS + ")" + CCDISABLEWARNINGS 1318$ CC = CC + "/DEFINE=(" + CCDEFS + ")" + CCDISABLEWARNINGS
1054$ IF ARCH .EQS. "VAX" .AND. COMPILER .EQS. "DECC" .AND. P2 .NES. "DEBUG" 1319$ IF ARCH .EQS. "VAX" .AND. COMPILER .EQS. "DECC" .AND. P3 .NES. "DEBUG"
1055$ THEN 1320$ THEN
1056$ CC5 = CC + "/OPTIMIZE=NODISJOINT" 1321$ CC5 = CC + "/OPTIMIZE=NODISJOINT"
1057$ ELSE 1322$ ELSE
@@ -1070,7 +1335,7 @@ $!
1070$! Tell The User We Don't Know What They Want. 1335$! Tell The User We Don't Know What They Want.
1071$! 1336$!
1072$ WRITE SYS$OUTPUT "" 1337$ WRITE SYS$OUTPUT ""
1073$ WRITE SYS$OUTPUT "The Option ",P3," Is Invalid. The Valid Options Are:" 1338$ WRITE SYS$OUTPUT "The Option ",P4," Is Invalid. The Valid Options Are:"
1074$ WRITE SYS$OUTPUT "" 1339$ WRITE SYS$OUTPUT ""
1075$ WRITE SYS$OUTPUT " VAXC : To Compile With VAX C." 1340$ WRITE SYS$OUTPUT " VAXC : To Compile With VAX C."
1076$ WRITE SYS$OUTPUT " DECC : To Compile With DEC C." 1341$ WRITE SYS$OUTPUT " DECC : To Compile With DEC C."
@@ -1096,12 +1361,12 @@ $ WRITE SYS$OUTPUT "Main MACRO Compiling Command: ",MACRO
1096$! 1361$!
1097$! Time to check the contents, and to make sure we get the correct library. 1362$! Time to check the contents, and to make sure we get the correct library.
1098$! 1363$!
1099$ IF P4.EQS."SOCKETSHR" .OR. P4.EQS."MULTINET" .OR. P4.EQS."UCX" 1364$ IF P5.EQS."SOCKETSHR" .OR. P5.EQS."MULTINET" .OR. P5.EQS."UCX"
1100$ THEN 1365$ THEN
1101$! 1366$!
1102$! Check to see if SOCKETSHR was chosen 1367$! Check to see if SOCKETSHR was chosen
1103$! 1368$!
1104$ IF P4.EQS."SOCKETSHR" 1369$ IF P5.EQS."SOCKETSHR"
1105$ THEN 1370$ THEN
1106$! 1371$!
1107$! Set the library to use SOCKETSHR 1372$! Set the library to use SOCKETSHR
@@ -1114,12 +1379,12 @@ $ ENDIF
1114$! 1379$!
1115$! Check to see if MULTINET was chosen 1380$! Check to see if MULTINET was chosen
1116$! 1381$!
1117$ IF P4.EQS."MULTINET" 1382$ IF P5.EQS."MULTINET"
1118$ THEN 1383$ THEN
1119$! 1384$!
1120$! Set the library to use UCX emulation. 1385$! Set the library to use UCX emulation.
1121$! 1386$!
1122$ P4 = "UCX" 1387$ P5 = "UCX"
1123$! 1388$!
1124$! Done with MULTINET 1389$! Done with MULTINET
1125$! 1390$!
@@ -1127,7 +1392,7 @@ $ ENDIF
1127$! 1392$!
1128$! Check to see if UCX was chosen 1393$! Check to see if UCX was chosen
1129$! 1394$!
1130$ IF P4.EQS."UCX" 1395$ IF P5.EQS."UCX"
1131$ THEN 1396$ THEN
1132$! 1397$!
1133$! Set the library to use UCX. 1398$! Set the library to use UCX.
@@ -1156,7 +1421,7 @@ $!
1156$! Tell The User We Don't Know What They Want. 1421$! Tell The User We Don't Know What They Want.
1157$! 1422$!
1158$ WRITE SYS$OUTPUT "" 1423$ WRITE SYS$OUTPUT ""
1159$ WRITE SYS$OUTPUT "The Option ",P4," Is Invalid. The Valid Options Are:" 1424$ WRITE SYS$OUTPUT "The Option ",P5," Is Invalid. The Valid Options Are:"
1160$ WRITE SYS$OUTPUT "" 1425$ WRITE SYS$OUTPUT ""
1161$ WRITE SYS$OUTPUT " SOCKETSHR : To link with SOCKETSHR TCP/IP library." 1426$ WRITE SYS$OUTPUT " SOCKETSHR : To link with SOCKETSHR TCP/IP library."
1162$ WRITE SYS$OUTPUT " UCX : To link with UCX TCP/IP library." 1427$ WRITE SYS$OUTPUT " UCX : To link with UCX TCP/IP library."
@@ -1173,9 +1438,9 @@ $!
1173$! Check if the user wanted to compile just a subset of all the encryption 1438$! Check if the user wanted to compile just a subset of all the encryption
1174$! methods. 1439$! methods.
1175$! 1440$!
1176$ IF P6 .NES. "" 1441$ IF P7 .NES. ""
1177$ THEN 1442$ THEN
1178$ ENCRYPT_TYPES = P6 1443$ ENCRYPT_TYPES = P7
1179$ ENDIF 1444$ ENDIF
1180$! 1445$!
1181$! Time To RETURN... 1446$! Time To RETURN...