~ubuntu-branches/ubuntu/oneiric/openssl/oneiric-security

« back to all changes in this revision

Viewing changes to makevms.com

  • Committer: Package Import Robot
  • Author(s): Steve Beattie
  • Date: 2011-09-14 22:06:03 UTC
  • mfrom: (11.1.23 sid)
  • Revision ID: package-import@ubuntu.com-20110914220603-tsuxw8z3kt4lx9oc
Tags: 1.0.0e-2ubuntu1
* Resynchronise with Debian, fixes CVE-2011-1945, CVE-2011-3207 and
  CVE-2011-3210 (LP: #850608). Remaining changes:
  - debian/libssl1.0.0.postinst:
    + Display a system restart required notification bubble on libssl1.0.0
      upgrade.
    + Use a different priority for libssl1.0.0/restart-services depending
      on whether a desktop, or server dist-upgrade is being performed.
  - debian/{libssl1.0.0-udeb.dirs, control, rules}: Create
    libssl1.0.0-udeb, for the benefit of wget-udeb (no wget-udeb package
    in Debian).
  - debian/{libcrypto1.0.0-udeb.dirs, libssl1.0.0.dirs, libssl1.0.0.files,
    rules}: Move runtime libraries to /lib, for the benefit of
    wpasupplicant.
  - debian/patches/aesni.patch: Backport Intel AES-NI support, now from
    http://rt.openssl.org/Ticket/Display.html?id=2065 rather than the
    0.9.8 variant.
  - debian/patches/Bsymbolic-functions.patch: Link using
    -Bsymbolic-functions.
  - debian/patches/perlpath-quilt.patch: Don't change perl #! paths under
    .pc.
  - debian/rules:
    + Don't run 'make test' when cross-building.
    + Use host compiler when cross-building.  Patch from Neil Williams.
    + Don't build for processors no longer supported: i486, i586 (on
      i386), v8 (on sparc).
    + Fix Makefile to properly clean up libs/ dirs in clean target.
    + Replace duplicate files in the doc directory with symlinks.
* debian/libssl1.0.0.postinst: only display restart notification on
  servers (LP: #244250)

Show diffs side-by-side

added added

removed removed

Lines of Context:
15
15
$!
16
16
$! This procedures accepts two command line options listed below.
17
17
$!
18
 
$! Specify one of the following build options for P1.
 
18
$! P1 specifies one of the following build options:
19
19
$!
20
20
$!      ALL       Just build "everything".
21
21
$!      CONFIG    Just build the "[.CRYPTO._xxx]OPENSSLCONF.H" file.
31
31
$!      APPS      Just build the "[.xxx.EXE.APPS]" application programs for OpenSSL.
32
32
$!      ENGINES   Just build the "[.xxx.EXE.ENGINES]" application programs for OpenSSL.
33
33
$!
34
 
$!
35
 
$! For 64 bit architectures (Alpha and IA64), specify the pointer size as P2.
36
 
$! For 32 bit architectures (VAX), P2 is ignored.
37
 
$! Currently supported values are:
38
 
$!
39
 
$!      32      To ge a library compiled with /POINTER_SIZE=32
40
 
$!      64      To ge a library compiled with /POINTER_SIZE=64
41
 
$!
42
 
$!
43
 
$! Specify DEBUG or NODEBUG as P3 to compile with or without debugging
44
 
$! information.
45
 
$!
46
 
$! Specify which compiler as P4 to try to compile under.
 
34
$! P2, if defined, specifies the C pointer size.  Ignored on VAX.
 
35
$!      ("64=ARGV" gives more efficient code with HP C V7.3 or newer.)
 
36
$!      Supported values are:
 
37
$!
 
38
$!      ""       Compile with default (/NOPOINTER_SIZE).
 
39
$!      32       Compile with /POINTER_SIZE=32 (SHORT).
 
40
$!      64       Compile with /POINTER_SIZE=64[=ARGV] (LONG[=ARGV]).
 
41
$!               (Automatically select ARGV if compiler supports it.)
 
42
$!      64=      Compile with /POINTER_SIZE=64 (LONG).
 
43
$!      64=ARGV  Compile with /POINTER_SIZE=64=ARGV (LONG=ARGV).
 
44
$!
 
45
$! P3 specifies DEBUG or NODEBUG, to compile with or without debugging
 
46
$!    information.
 
47
$!
 
48
$! P4 specifies which compiler to try to compile under.
47
49
$!
48
50
$!        VAXC   For VAX C.
49
51
$!        DECC   For DEC C.
65
67
$!                      use at build time (this works with DEC C).  This is
66
68
$!                      the default.
67
69
$!
68
 
$! P6, if defined, sets a compiler thread NOT needed on OpenVMS 7.1 (and up)
69
 
$!
 
70
$! P6, if defined, sets a compiler thread NOT needed on OpenVMS 7.1 (and up).
 
71
$!
 
72
$! P7, if defined, specifies a directory where ZLIB files (zlib.h,
 
73
$! libz.olb) may be found.  Optionally, a non-default object library
 
74
$! name may be included ("dev:[dir]libz_64.olb", for example).
 
75
$!
 
76
$!
 
77
$! Announce/identify.
 
78
$!
 
79
$ proc = f$environment( "procedure")
 
80
$ write sys$output "@@@ "+ -
 
81
   f$parse( proc, , , "name")+ f$parse( proc, , , "type")
70
82
$!
71
83
$ DEF_ORIG = F$ENVIRONMENT( "DEFAULT")
72
84
$ ON ERROR THEN GOTO TIDY
104
116
$!
105
117
$ ENDIF
106
118
$!
 
119
$ ARCHD = ARCH
 
120
$ LIB32 = "32"
 
121
$ POINTER_SIZE = ""
 
122
$!
107
123
$! Get VMS version.
108
124
$!
109
125
$ VMS_VERSION = f$edit( f$getsyi( "VERSION"), "TRIM")
178
194
$!
179
195
$! Tell The User We Are Creating The [.CRYPTO._xxx]OPENSSLCONF.H File.
180
196
$!
181
 
$ WRITE SYS$OUTPUT "Creating [.CRYPTO._''ARCH']OPENSSLCONF.H Include File."
 
197
$ WRITE SYS$OUTPUT "Creating [.CRYPTO.''ARCHD']OPENSSLCONF.H Include File."
182
198
$!
183
199
$! First, make sure the directory exists.
184
200
$!
185
 
$ IF F$PARSE("SYS$DISK:[.CRYPTO._''ARCH']") .EQS. "" THEN -
186
 
     CREATE/DIRECTORY SYS$DISK:[.CRYPTO._'ARCH']
 
201
$ IF F$PARSE("SYS$DISK:[.CRYPTO.''ARCHD']") .EQS. "" THEN -
 
202
     CREATE/DIRECTORY SYS$DISK:[.CRYPTO.'ARCHD']
187
203
$!
188
204
$! Different tar/UnZip versions/option may have named the file differently
189
205
$ IF F$SEARCH("[.crypto]opensslconf.h_in") .NES. ""
209
225
$! Create The [.CRYPTO._xxx]OPENSSLCONF.H File.
210
226
$! Make sure it has the right format.
211
227
$!
212
 
$ OSCH_NAME = "SYS$DISK:[.CRYPTO._''ARCH']OPENSSLCONF.H"
 
228
$ OSCH_NAME = "SYS$DISK:[.CRYPTO.''ARCHD']OPENSSLCONF.H"
213
229
$ CREATE /FDL=SYS$INPUT: 'OSCH_NAME'
214
230
RECORD
215
231
        FORMAT stream_lf
228
244
$ WRITE H_FILE "#endif"
229
245
$
230
246
$! One of the best way to figure out what the list should be is to do
231
 
$! the followin on a Unix system:
 
247
$! the following on a Unix system:
232
248
$!   grep OPENSSL_NO_ crypto/*/*.h ssl/*.h engines/*.h engines/*/*.h|grep ':# *if'|sed -e 's/^.*def //'|sort|uniq
233
249
$! For that reason, the list will also always end up in alphabetical order
234
250
$ CONFIG_LOGICALS := AES,-
326
342
$! Architecture specific rule addtions
327
343
$ IF ARCH .EQS. "VAX"
328
344
$ THEN
329
 
$   ! Disable algorithms that require 64 bit integers in C
 
345
$   ! Disable algorithms that require 64-bit integers in C
330
346
$   CONFIG_DISABLE_RULES = CONFIG_DISABLE_RULES + -
331
347
                           ";/GOST" + -
332
348
                           ";/WHIRLPOOL"
355
371
$! Apply cascading disable rules
356
372
$ CONFIG_DISABLE_I = 0
357
373
$ CONFIG_DISABLE_LOOP0:
358
 
$   CONFIG_DISABLE_E = F$EDIT(F$ELEMENT(CONFIG_DISABLE_I,";",CONFIG_DISABLE_RULES),"TRIM")
 
374
$   CONFIG_DISABLE_E = F$EDIT(F$ELEMENT(CONFIG_DISABLE_I,";", -
 
375
     CONFIG_DISABLE_RULES),"TRIM")
359
376
$   CONFIG_DISABLE_I = CONFIG_DISABLE_I + 1
360
377
$   IF CONFIG_DISABLE_E .EQS. "" THEN GOTO CONFIG_DISABLE_LOOP0
361
378
$   IF CONFIG_DISABLE_E .EQS. ";" THEN GOTO CONFIG_DISABLE_LOOP0_END
365
382
$   TO_DISABLE := YES
366
383
$   CONFIG_ALGO_I = 0
367
384
$   CONFIG_DISABLE_LOOP1:
368
 
$     CONFIG_ALGO_E = F$EDIT(F$ELEMENT(CONFIG_ALGO_I,",",CONFIG_DISABLE_ALGOS),"TRIM")
 
385
$     CONFIG_ALGO_E = F$EDIT(F$ELEMENT(CONFIG_ALGO_I,",", -
 
386
       CONFIG_DISABLE_ALGOS),"TRIM")
369
387
$     CONFIG_ALGO_I = CONFIG_ALGO_I + 1
370
388
$     IF CONFIG_ALGO_E .EQS. "" THEN GOTO CONFIG_DISABLE_LOOP1
371
389
$     IF CONFIG_ALGO_E .EQS. "," THEN GOTO CONFIG_DISABLE_LOOP1_END
382
400
$   THEN
383
401
$     CONFIG_DEPENDENT_I = 0
384
402
$     CONFIG_DISABLE_LOOP2:
385
 
$       CONFIG_DEPENDENT_E = F$EDIT(F$ELEMENT(CONFIG_DEPENDENT_I,",",CONFIG_DISABLE_DEPENDENTS),"TRIM")
 
403
$       CONFIG_DEPENDENT_E = F$EDIT(F$ELEMENT(CONFIG_DEPENDENT_I,",", -
 
404
         CONFIG_DISABLE_DEPENDENTS),"TRIM")
386
405
$       CONFIG_DEPENDENT_I = CONFIG_DEPENDENT_I + 1
387
406
$       IF CONFIG_DEPENDENT_E .EQS. "" THEN GOTO CONFIG_DISABLE_LOOP2
388
407
$       IF CONFIG_DEPENDENT_E .EQS. "," THEN GOTO CONFIG_DISABLE_LOOP2_END
390
409
$       CONFIG_ENABLED_'CONFIG_DEPENDENT_E' := NO
391
410
$       ! Better not to assume defaults at this point...
392
411
$       CONFIG_CHANGED_'CONFIG_DEPENDENT_E' := YES
393
 
$       WRITE SYS$ERROR "''CONFIG_DEPENDENT_E' disabled by rule ''CONFIG_DISABLE_E'"
 
412
$       WRITE SYS$ERROR -
 
413
         "''CONFIG_DEPENDENT_E' disabled by rule ''CONFIG_DISABLE_E'"
394
414
$       GOTO CONFIG_DISABLE_LOOP2
395
415
$     CONFIG_DISABLE_LOOP2_END:
396
416
$   ENDIF
400
420
$! Apply cascading enable rules
401
421
$ CONFIG_ENABLE_I = 0
402
422
$ CONFIG_ENABLE_LOOP0:
403
 
$   CONFIG_ENABLE_E = F$EDIT(F$ELEMENT(CONFIG_ENABLE_I,";",CONFIG_ENABLE_RULES),"TRIM")
 
423
$   CONFIG_ENABLE_E = F$EDIT(F$ELEMENT(CONFIG_ENABLE_I,";", -
 
424
     CONFIG_ENABLE_RULES),"TRIM")
404
425
$   CONFIG_ENABLE_I = CONFIG_ENABLE_I + 1
405
426
$   IF CONFIG_ENABLE_E .EQS. "" THEN GOTO CONFIG_ENABLE_LOOP0
406
427
$   IF CONFIG_ENABLE_E .EQS. ";" THEN GOTO CONFIG_ENABLE_LOOP0_END
410
431
$   TO_ENABLE := YES
411
432
$   CONFIG_ALGO_I = 0
412
433
$   CONFIG_ENABLE_LOOP1:
413
 
$     CONFIG_ALGO_E = F$EDIT(F$ELEMENT(CONFIG_ALGO_I,",",CONFIG_ENABLE_ALGOS),"TRIM")
 
434
$     CONFIG_ALGO_E = F$EDIT(F$ELEMENT(CONFIG_ALGO_I,",", -
 
435
       CONFIG_ENABLE_ALGOS),"TRIM")
414
436
$     CONFIG_ALGO_I = CONFIG_ALGO_I + 1
415
437
$     IF CONFIG_ALGO_E .EQS. "" THEN GOTO CONFIG_ENABLE_LOOP1
416
438
$     IF CONFIG_ALGO_E .EQS. "," THEN GOTO CONFIG_ENABLE_LOOP1_END
427
449
$   THEN
428
450
$     CONFIG_DEPENDENT_I = 0
429
451
$     CONFIG_ENABLE_LOOP2:
430
 
$       CONFIG_DEPENDENT_E = F$EDIT(F$ELEMENT(CONFIG_DEPENDENT_I,",",CONFIG_ENABLE_DEPENDENTS),"TRIM")
 
452
$       CONFIG_DEPENDENT_E = F$EDIT(F$ELEMENT(CONFIG_DEPENDENT_I,",", -
 
453
         CONFIG_ENABLE_DEPENDENTS),"TRIM")
431
454
$       CONFIG_DEPENDENT_I = CONFIG_DEPENDENT_I + 1
432
455
$       IF CONFIG_DEPENDENT_E .EQS. "" THEN GOTO CONFIG_ENABLE_LOOP2
433
456
$       IF CONFIG_DEPENDENT_E .EQS. "," THEN GOTO CONFIG_ENABLE_LOOP2_END
435
458
$       CONFIG_ENABLED_'CONFIG_DEPENDENT_E' := YES
436
459
$       ! Better not to assume defaults at this point...
437
460
$       CONFIG_CHANGED_'CONFIG_DEPENDENT_E' := YES
438
 
$       WRITE SYS$ERROR "''CONFIG_DEPENDENT_E' enabled by rule ''CONFIG_ENABLE_E'"
 
461
$       WRITE SYS$ERROR -
 
462
         "''CONFIG_DEPENDENT_E' enabled by rule ''CONFIG_ENABLE_E'"
439
463
$       GOTO CONFIG_ENABLE_LOOP2
440
464
$     CONFIG_ENABLE_LOOP2_END:
441
465
$   ENDIF
465
489
$   GOTO CONFIG_LOG_LOOP2
466
490
$ CONFIG_LOG_LOOP2_END:
467
491
$!
 
492
$ WRITE H_FILE ""
 
493
$ WRITE H_FILE "/* 2011-02-23 SMS."
 
494
$ WRITE H_FILE " * On VMS (V8.3), setvbuf() doesn't support a 64-bit"
 
495
$ WRITE H_FILE " * ""in"" pointer, and the help says:"
 
496
$ WRITE H_FILE " *       Please note that the previously documented"
 
497
$ WRITE H_FILE " *       value _IONBF is not supported."
 
498
$ WRITE H_FILE " * So, skip it on VMS."
 
499
$ WRITE H_FILE " */"
 
500
$ WRITE H_FILE "#define OPENSSL_NO_SETVBUF_IONBF"
 
501
$ WRITE H_FILE ""
 
502
$!
468
503
$! Add in the common "crypto/opensslconf.h.in".
469
504
$!
470
505
$ TYPE 'OPENSSLCONF_H_IN' /OUTPUT=H_FILE:
557
592
$!
558
593
$! Purge The [.CRYPTO._xxx]OPENSSLCONF.H file
559
594
$!
560
 
$ PURGE SYS$DISK:[.CRYPTO._'ARCH']OPENSSLCONF.H
 
595
$ PURGE SYS$DISK:[.CRYPTO.'ARCHD']OPENSSLCONF.H
561
596
$!
562
597
$! That's All, Time To RETURN.
563
598
$!
569
604
$!
570
605
$! Tell The User We Are Creating The [.CRYPTO._xxx]BUILDINF.H File.
571
606
$!
572
 
$ WRITE SYS$OUTPUT "Creating [.CRYPTO._''ARCH']BUILDINF.H Include File."
 
607
$ WRITE SYS$OUTPUT "Creating [.CRYPTO.''ARCHD']BUILDINF.H Include File."
573
608
$!
574
609
$! Create The [.CRYPTO._xxx]BUILDINF.H File.
575
610
$!
576
 
$ BIH_NAME = "SYS$DISK:[.CRYPTO._''ARCH']BUILDINF.H"
 
611
$ BIH_NAME = "SYS$DISK:[.CRYPTO.''ARCHD']BUILDINF.H"
577
612
$ CREATE /FDL=SYS$INPUT: 'BIH_NAME'
578
613
RECORD
579
614
        FORMAT stream_lf
586
621
$!
587
622
$! Write The [.CRYPTO._xxx]BUILDINF.H File.
588
623
$!
589
 
$ WRITE H_FILE "#define CFLAGS ""/POINTER_SIZE=''POINTER_SIZE'"""
590
 
$ WRITE H_FILE "#define PLATFORM ""VMS ''ARCH' ''VMS_VERSION'"""
 
624
$ CFLAGS = ""
 
625
$ if (POINTER_SIZE .nes. "")
 
626
$ then
 
627
$   CFLAGS = CFLAGS+ "/POINTER_SIZE=''POINTER_SIZE'"
 
628
$ endif
 
629
$ if (ZLIB .nes. "")
 
630
$ then
 
631
$   if (CFLAGS .nes. "") then CFLAGS = CFLAGS+ " "
 
632
$   CFLAGS = CFLAGS+ "/DEFINE=ZLIB"
 
633
$ endif
 
634
$! 
 
635
$ WRITE H_FILE "#define CFLAGS ""''CFLAGS'"""
 
636
$ WRITE H_FILE "#define PLATFORM ""VMS ''ARCHD' ''VMS_VERSION'"""
591
637
$ WRITE H_FILE "#define DATE ""''TIME'"" "
592
638
$!
593
639
$! Close The [.CRYPTO._xxx]BUILDINF.H File.
596
642
$!
597
643
$! Purge The [.CRYPTO._xxx]BUILDINF.H File.
598
644
$!
599
 
$ PURGE SYS$DISK:[.CRYPTO._'ARCH']BUILDINF.H
 
645
$ PURGE SYS$DISK:[.CRYPTO.'ARCHD']BUILDINF.H
600
646
$!
601
647
$! Delete [.CRYPTO]BUILDINF.H File, as there might be some residue from Unix.
602
648
$!
611
657
$!
612
658
$ SOFTLINKS: 
613
659
$!
614
 
$! Tell The User We Are Partly Rebuilding The [.APPS] Directory.
615
 
$!
616
 
$ WRITE SYS$OUTPUT "Rebuilding The '[.APPS]MD4.C' File."
617
 
$!
618
 
$ DELETE SYS$DISK:[.APPS]MD4.C;*
619
 
$!
620
 
$! Copy MD4.C from [.CRYPTO.MD4] into [.APPS]
621
 
$!
622
 
$ COPY SYS$DISK:[.CRYPTO.MD4]MD4.C SYS$DISK:[.APPS]
623
 
$!
624
 
$! Tell The User We Are Rebuilding The [.INCLUDE.OPENSSL] Directory.
625
 
$!
626
 
$ WRITE SYS$OUTPUT "Rebuilding The '[.INCLUDE.OPENSSL]' Directory."
627
 
$!
628
 
$! First, make sure the directory exists
629
 
$!
630
 
$ IF F$PARSE("SYS$DISK:[.INCLUDE.OPENSSL]") .EQS. "" THEN -
631
 
     CREATE/DIRECTORY SYS$DISK:[.INCLUDE.OPENSSL]
 
660
$!!!! Tell The User We Are Partly Rebuilding The [.APPS] Directory.
 
661
$!!!!
 
662
$!!! WRITE SYS$OUTPUT "Rebuilding The '[.APPS]MD4.C' File."
 
663
$!!!!
 
664
$!!! DELETE SYS$DISK:[.APPS]MD4.C;*
 
665
$!!!!
 
666
$!!!! Copy MD4.C from [.CRYPTO.MD4] into [.APPS]
 
667
$!!!!
 
668
$!!! COPY SYS$DISK:[.CRYPTO.MD4]MD4.C SYS$DISK:[.APPS]
 
669
$!
 
670
$! Ensure that the [.include.openssl] directory contains a full set of
 
671
$! real header files.  The distribution kit may have left real or fake
 
672
$! symlinks there.  Rather than think about what's there, simply delete
 
673
$! the destination files (fake or real symlinks) before copying the real
 
674
$! header files in.  (Copying a real header file onto a real symlink
 
675
$! merely duplicates the real header file at its source.)
 
676
$!
 
677
$! Tell The User We Are Rebuilding The [.include.openssl] Directory.
 
678
$!
 
679
$ WRITE SYS$OUTPUT "Rebuilding The '[.include.openssl]' Directory."
 
680
$!
 
681
$! First, make sure the directory exists.  If it did exist, delete all
 
682
$! the existing header files (or fake or real symlinks).
 
683
$!
 
684
$ if f$parse( "sys$disk:[.include.openssl]") .eqs. ""
 
685
$ then
 
686
$   create /directory sys$disk:[.include.openssl]
 
687
$ else
 
688
$   delete sys$disk:[.include.openssl]*.h;*
 
689
$ endif
632
690
$!
633
691
$! Copy All The ".H" Files From The Main Directory.
634
692
$!
635
693
$ EXHEADER := e_os2.h
636
 
$ COPY 'EXHEADER' SYS$DISK:[.INCLUDE.OPENSSL]
 
694
$ copy 'exheader' sys$disk:[.include.openssl]
637
695
$!
638
696
$! Copy All The ".H" Files From The [.CRYPTO] Directory Tree.
639
697
$!
640
 
$ SDIRS := ,-
641
 
   _'ARCH',-
642
 
   OBJECTS,-
643
 
   MD2,MD4,MD5,SHA,MDC2,HMAC,RIPEMD,WHRLPOOL,-
644
 
   DES,AES,RC2,RC4,RC5,IDEA,BF,CAST,CAMELLIA,SEED,MODES,-
645
 
   BN,EC,RSA,DSA,ECDSA,DH,ECDH,DSO,ENGINE,-
646
 
   BUFFER,BIO,STACK,LHASH,RAND,ERR,-
647
 
   EVP,ASN1,PEM,X509,X509V3,CONF,TXT_DB,PKCS7,PKCS12,COMP,OCSP,UI,KRB5,-
648
 
   STORE,CMS,PQUEUE,TS,JPAKE
649
 
$ EXHEADER_ := crypto.h,opensslv.h,ebcdic.h,symhacks.h,ossl_typ.h
650
 
$ EXHEADER__'ARCH' := opensslconf.h
651
 
$ EXHEADER_OBJECTS := objects.h,obj_mac.h
 
698
$ SDIRS := , -
 
699
   'ARCHD', -
 
700
   OBJECTS, -
 
701
   MD2, MD4, MD5, SHA, MDC2, HMAC, RIPEMD, WHRLPOOL, -
 
702
   DES, AES, RC2, RC4, RC5, IDEA, BF, CAST, CAMELLIA, SEED, MODES, -
 
703
   BN, EC, RSA, DSA, ECDSA, DH, ECDH, DSO, ENGINE, -
 
704
   BUFFER, BIO, STACK, LHASH, RAND, ERR, -
 
705
   EVP, ASN1, PEM, X509, X509V3, CONF, TXT_DB, PKCS7, PKCS12, -
 
706
   COMP, OCSP, UI, KRB5, -
 
707
   STORE, CMS, PQUEUE, TS, JPAKE
 
708
$!
 
709
$ EXHEADER_ := crypto.h, opensslv.h, ebcdic.h, symhacks.h, ossl_typ.h
 
710
$ EXHEADER_'ARCHD' := opensslconf.h
 
711
$ EXHEADER_OBJECTS := objects.h, obj_mac.h
652
712
$ EXHEADER_MD2 := md2.h
653
713
$ EXHEADER_MD4 := md4.h
654
714
$ EXHEADER_MD5 := md5.h
657
717
$ EXHEADER_HMAC := hmac.h
658
718
$ EXHEADER_RIPEMD := ripemd.h
659
719
$ EXHEADER_WHRLPOOL := whrlpool.h
660
 
$ EXHEADER_DES := des.h,des_old.h
 
720
$ EXHEADER_DES := des.h, des_old.h
661
721
$ EXHEADER_AES := aes.h
662
722
$ EXHEADER_RC2 := rc2.h
663
723
$ EXHEADER_RC4 := rc4.h
679
739
$ EXHEADER_ENGINE := engine.h
680
740
$ EXHEADER_BUFFER := buffer.h
681
741
$ EXHEADER_BIO := bio.h
682
 
$ EXHEADER_STACK := stack.h,safestack.h
 
742
$ EXHEADER_STACK := stack.h, safestack.h
683
743
$ EXHEADER_LHASH := lhash.h
684
744
$ EXHEADER_RAND := rand.h
685
745
$ EXHEADER_ERR := err.h
686
746
$ EXHEADER_EVP := evp.h
687
 
$ EXHEADER_ASN1 := asn1.h,asn1_mac.h,asn1t.h
688
 
$ EXHEADER_PEM := pem.h,pem2.h
689
 
$ EXHEADER_X509 := x509.h,x509_vfy.h
 
747
$ EXHEADER_ASN1 := asn1.h, asn1_mac.h, asn1t.h
 
748
$ EXHEADER_PEM := pem.h, pem2.h
 
749
$ EXHEADER_X509 := x509.h, x509_vfy.h
690
750
$ EXHEADER_X509V3 := x509v3.h
691
 
$ EXHEADER_CONF := conf.h,conf_api.h
 
751
$ EXHEADER_CONF := conf.h, conf_api.h
692
752
$ EXHEADER_TXT_DB := txt_db.h
693
753
$ EXHEADER_PKCS7 := pkcs7.h
694
754
$ EXHEADER_PKCS12 := pkcs12.h
695
755
$ EXHEADER_COMP := comp.h
696
756
$ EXHEADER_OCSP := ocsp.h
697
 
$ EXHEADER_UI := ui.h,ui_compat.h
 
757
$ EXHEADER_UI := ui.h, ui_compat.h
698
758
$ EXHEADER_KRB5 := krb5_asn.h
699
 
$!EXHEADER_STORE := store.h,str_compat.h
 
759
$!!! EXHEADER_STORE := store.h, str_compat.h
700
760
$ EXHEADER_STORE := store.h
701
761
$ EXHEADER_CMS := cms.h
702
762
$ EXHEADER_PQUEUE := pqueue.h
703
763
$ EXHEADER_TS := ts.h
704
764
$ EXHEADER_JPAKE := jpake.h
705
 
$
706
 
$ I = 0
707
 
$ LOOP_SDIRS: 
708
 
$ D = F$EDIT(F$ELEMENT(I, ",", SDIRS),"TRIM")
709
 
$ I = I + 1
710
 
$ IF D .EQS. "," THEN GOTO LOOP_SDIRS_END
711
 
$ tmp = EXHEADER_'D'
712
 
$ IF D .EQS. ""
713
 
$ THEN
714
 
$   COPY [.CRYPTO]'tmp' SYS$DISK:[.INCLUDE.OPENSSL] !/LOG
715
 
$ ELSE
716
 
$   COPY [.CRYPTO.'D']'tmp' SYS$DISK:[.INCLUDE.OPENSSL] !/LOG
717
 
$ ENDIF
718
 
$ GOTO LOOP_SDIRS
719
 
$ LOOP_SDIRS_END:
 
765
$!
 
766
$ i = 0
 
767
$ loop_sdirs:
 
768
$   sdir = f$edit( f$element( i, ",", sdirs), "trim")
 
769
$   i = i + 1
 
770
$   if (sdir .eqs. ",") then goto loop_sdirs_end
 
771
$   hdr_list = exheader_'sdir'
 
772
$   if (sdir .nes. "") then sdir = "."+ sdir
 
773
$   copy [.crypto'sdir']'hdr_list' sys$disk:[.include.openssl]
 
774
$ goto loop_sdirs
 
775
$ loop_sdirs_end:
720
776
$!
721
777
$! Copy All The ".H" Files From The [.SSL] Directory.
722
778
$!
723
 
$ EXHEADER := ssl.h,ssl2.h,ssl3.h,ssl23.h,tls1.h,dtls1.h,kssl.h
724
 
$ COPY SYS$DISK:[.SSL]'EXHEADER' SYS$DISK:[.INCLUDE.OPENSSL]
725
 
$!
726
 
$! Purge all doubles
727
 
$!
728
 
$ PURGE SYS$DISK:[.INCLUDE.OPENSSL]*.H
 
779
$! (keep these in the same order as ssl/Makefile)
 
780
$ EXHEADER := ssl.h, ssl2.h, ssl3.h, ssl23.h, tls1.h, dtls1.h, kssl.h
 
781
$ copy sys$disk:[.ssl]'exheader' sys$disk:[.include.openssl]
 
782
$!
 
783
$! Purge the [.include.openssl] header files.
 
784
$!
 
785
$ purge sys$disk:[.include.openssl]*.h
729
786
$!
730
787
$! That's All, Time To RETURN.
731
788
$!
732
789
$ RETURN
733
790
$!
734
 
$! Build The "[.xxx.EXE.CRYPTO]LIBCRYPTO''LIB32'.OLB" Library.
 
791
$! Build The "[.xxx.EXE.CRYPTO]SSL_LIBCRYPTO''LIB32'.OLB" Library.
735
792
$!
736
793
$ CRYPTO:
737
794
$!
738
795
$! Tell The User What We Are Doing.
739
796
$!
740
797
$ WRITE SYS$OUTPUT ""
741
 
$ WRITE SYS$OUTPUT "Building The [.",ARCH,".EXE.CRYPTO]LIBCRYPTO''LIB32'.OLB Library."
 
798
$ WRITE SYS$OUTPUT -
 
799
   "Building The [.",ARCHD,".EXE.CRYPTO]SSL_LIBCRYPTO''LIB32'.OLB Library."
742
800
$!
743
801
$! Go To The [.CRYPTO] Directory.
744
802
$!
746
804
$!
747
805
$! Build The [.xxx.EXE.CRYPTO]LIBCRYPTO.OLB Library.
748
806
$!  
749
 
$ @CRYPTO-LIB LIBRARY 'DEBUGGER' "''COMPILER'" "''TCPIP_TYPE'" "''ISSEVEN'" "''BUILDPART'" "''POINTER_SIZE'"
 
807
$ @CRYPTO-LIB LIBRARY 'DEBUGGER' "''COMPILER'" "''TCPIP_TYPE'" -
 
808
   "''ISSEVEN'" "''BUILDPART'" "''POINTER_SIZE'" "''ZLIB'"
750
809
$!
751
810
$! Build The [.xxx.EXE.CRYPTO]*.EXE Test Applications.
752
811
$!  
753
 
$ @CRYPTO-LIB APPS 'DEBUGGER' "''COMPILER'" "''TCPIP_TYPE'" "''ISSEVEN'" "''BUILDPART'" "''POINTER_SIZE'"
 
812
$ @CRYPTO-LIB APPS 'DEBUGGER' "''COMPILER'" "''TCPIP_TYPE'" -
 
813
   "''ISSEVEN'" "''BUILDPART'" "''POINTER_SIZE'" "''ZLIB'"
754
814
$!
755
815
$! Go Back To The Main Directory.
756
816
$!
760
820
$!
761
821
$ RETURN
762
822
$!
763
 
$! Build The "[.xxx.EXE.SSL]LIBSSL''LIB32'.OLB" Library.
 
823
$! Build The "[.xxx.EXE.SSL]SSL_LIBSSL''LIB32'.OLB" Library.
764
824
$!
765
825
$ SSL:
766
826
$!
767
827
$! Tell The User What We Are Doing.
768
828
$!
769
829
$ WRITE SYS$OUTPUT ""
770
 
$ WRITE SYS$OUTPUT "Building The [.",ARCH,".EXE.SSL]LIBSSL''LIB32'.OLB Library."
 
830
$ WRITE SYS$OUTPUT -
 
831
   "Building The [.",ARCHD,".EXE.SSL]SSL_LIBSSL''LIB32'.OLB Library."
771
832
$!
772
833
$! Go To The [.SSL] Directory.
773
834
$!
775
836
$!
776
837
$! Build The [.xxx.EXE.SSL]LIBSSL.OLB Library.
777
838
$!
778
 
$ @SSL-LIB LIBRARY 'DEBUGGER' "''COMPILER'" "''TCPIP_TYPE'" "''ISSEVEN'" "''POINTER_SIZE'"
 
839
$ @SSL-LIB LIBRARY 'DEBUGGER' "''COMPILER'" "''TCPIP_TYPE'" -
 
840
   "''ISSEVEN'" "''POINTER_SIZE'" "''ZLIB'"
779
841
$!
780
842
$! Go Back To The Main Directory.
781
843
$!
792
854
$! Tell The User What We Are Doing.
793
855
$!
794
856
$ WRITE SYS$OUTPUT ""
795
 
$ WRITE SYS$OUTPUT "Building DECNet Based SSL Engine, [.",ARCH,".EXE.SSL]SSL_TASK.EXE"
 
857
$ WRITE SYS$OUTPUT -
 
858
   "Building DECNet Based SSL Engine, [.",ARCHD,".EXE.SSL]SSL_TASK.EXE"
796
859
$!
797
860
$! Go To The [.SSL] Directory.
798
861
$!
800
863
$!
801
864
$! Build The [.xxx.EXE.SSL]SSL_TASK.EXE
802
865
$!
803
 
$ @SSL-LIB SSL_TASK 'DEBUGGER' "''COMPILER'" "''TCPIP_TYPE'" "''ISSEVEN'" "''POINTER_SIZE'"
 
866
$ @SSL-LIB SSL_TASK 'DEBUGGER' "''COMPILER'" "''TCPIP_TYPE'" -
 
867
   "''ISSEVEN'" "''POINTER_SIZE'" "''ZLIB'"
804
868
$!
805
869
$! Go Back To The Main Directory.
806
870
$!
817
881
$! Tell The User What We Are Doing.
818
882
$!
819
883
$ WRITE SYS$OUTPUT ""
820
 
$ WRITE SYS$OUTPUT "Building The OpenSSL [.",ARCH,".EXE.TEST] Test Utilities."
 
884
$ WRITE SYS$OUTPUT "Building The OpenSSL [.",ARCHD,".EXE.TEST] Test Utilities."
821
885
$!
822
886
$! Go To The [.TEST] Directory.
823
887
$!
825
889
$!
826
890
$! Build The Test Programs.
827
891
$!
828
 
$ @MAKETESTS 'DEBUGGER' "''COMPILER'" "''TCPIP_TYPE'" "''ISSEVEN'" "''POINTER_SIZE'"
 
892
$ @MAKETESTS 'DEBUGGER' "''COMPILER'" "''TCPIP_TYPE'" "''ISSEVEN'" -
 
893
   "''POINTER_SIZE'" "''ZLIB'"
829
894
$!
830
895
$! Go Back To The Main Directory.
831
896
$!
842
907
$! Tell The User What We Are Doing.
843
908
$!
844
909
$ WRITE SYS$OUTPUT ""
845
 
$ WRITE SYS$OUTPUT "Building OpenSSL [.",ARCH,".EXE.APPS] Applications."
 
910
$ WRITE SYS$OUTPUT "Building OpenSSL [.",ARCHD,".EXE.APPS] Applications."
846
911
$!
847
912
$! Go To The [.APPS] Directory.
848
913
$!
850
915
$!
851
916
$! Build The Application Programs.
852
917
$!
853
 
$ @MAKEAPPS 'DEBUGGER' "''COMPILER'" "''TCPIP_TYPE'" "''ISSEVEN'" "" "''POINTER_SIZE'"
 
918
$ @MAKEAPPS 'DEBUGGER' "''COMPILER'" "''TCPIP_TYPE'" "''ISSEVEN'" -
 
919
   "" "''POINTER_SIZE'" "''ZLIB'"
854
920
$!
855
921
$! Go Back To The Main Directory.
856
922
$!
867
933
$! Tell The User What We Are Doing.
868
934
$!
869
935
$ WRITE SYS$OUTPUT ""
870
 
$ WRITE SYS$OUTPUT "Building OpenSSL [.",ARCH,".EXE.ENGINES] Engines."
 
936
$ WRITE SYS$OUTPUT "Building OpenSSL [.",ARCHD,".EXE.ENGINES] Engines."
871
937
$!
872
938
$! Go To The [.ENGINES] Directory.
873
939
$!
875
941
$!
876
942
$! Build The Application Programs.
877
943
$!
878
 
$ @MAKEENGINES ENGINES 'DEBUGGER' "''COMPILER'" "''TCPIP_TYPE'" "''ISSEVEN'" "''BUILDPART'" "''POINTER_SIZE'"
 
944
$ @MAKEENGINES ENGINES 'DEBUGGER' "''COMPILER'" "''TCPIP_TYPE'" -
 
945
   "''ISSEVEN'" "''BUILDPART'" "''POINTER_SIZE'" "''ZLIB'"
879
946
$!
880
947
$! Go Back To The Main Directory.
881
948
$!
954
1021
$     WRITE SYS$OUTPUT ""
955
1022
$     WRITE SYS$OUTPUT " Where 'xxx' Stands For:"
956
1023
$     WRITE SYS$OUTPUT ""
957
 
$     WRITE SYS$OUTPUT "    ALPHA    :  Alpha Architecture."
958
 
$     WRITE SYS$OUTPUT "    IA64     :  IA64 Architecture."
 
1024
$     WRITE SYS$OUTPUT "    ALPHA[64]:  Alpha Architecture."
 
1025
$     WRITE SYS$OUTPUT "    IA64[64] :  IA64 Architecture."
959
1026
$     WRITE SYS$OUTPUT "    VAX      :  VAX Architecture."
960
1027
$     WRITE SYS$OUTPUT ""
961
1028
$!
971
1038
$!
972
1039
$ ENDIF
973
1040
$!
974
 
$! Check To See If P2 Is Blank.
 
1041
$! Check P2 (POINTER_SIZE).
975
1042
$!
976
 
$ IF (P2.EQS."")
 
1043
$ IF (P2 .NES. "") .AND. (ARCH .NES. "VAX")
977
1044
$ THEN
978
 
$   POINTER_SIZE = ""
979
 
$ ELSE
980
 
$!
981
 
$!  Check is P2 Is Valid
982
 
$!
983
 
$   IF (P2.EQS."32")
 
1045
$!
 
1046
$   IF (P2 .EQS. "32")
984
1047
$   THEN
985
1048
$     POINTER_SIZE = "32"
986
 
$     IF ARCH .EQS. "VAX"
987
 
$     THEN
988
 
$       LIB32 = ""
989
 
$     ELSE
990
 
$       LIB32 = "32"
991
 
$     ENDIF
992
1049
$   ELSE
993
 
$     IF (P2.EQS."64")
 
1050
$     POINTER_SIZE = F$EDIT( P2, "COLLAPSE, UPCASE")
 
1051
$     IF ((POINTER_SIZE .EQS. "64") .OR. -
 
1052
       (POINTER_SIZE .EQS. "64=") .OR. -
 
1053
       (POINTER_SIZE .EQS. "64=ARGV"))
994
1054
$     THEN
 
1055
$       ARCHD = ARCH+ "_64"
995
1056
$       LIB32 = ""
996
 
$       IF ARCH .EQS. "VAX"
997
 
$       THEN
998
 
$         POINTER_SIZE = "32"
999
 
$       ELSE
1000
 
$         POINTER_SIZE = "64"
1001
 
$       ENDIF
1002
1057
$     ELSE
1003
1058
$!
1004
 
$!      Tell The User Entered An Invalid Option..
1005
 
$!
1006
 
$       WRITE SYS$OUTPUT ""
1007
 
$       WRITE SYS$OUTPUT "The Option ",P2," Is Invalid.  The Valid Options Are:"
1008
 
$       WRITE SYS$OUTPUT ""
1009
 
$       WRITE SYS$OUTPUT "    32  :  Compile with 32 bit pointer size"
1010
 
$       WRITE SYS$OUTPUT "    64  :  Compile with 64 bit pointer size"
1011
 
$       WRITE SYS$OUTPUT ""
1012
 
$!
 
1059
$!      Tell The User Entered An Invalid Option.
 
1060
$!
 
1061
$       WRITE SYS$OUTPUT ""
 
1062
$       WRITE SYS$OUTPUT "The Option ", P2, -
 
1063
         " Is Invalid.  The Valid Options Are:"
 
1064
$       WRITE SYS$OUTPUT ""
 
1065
$       WRITE SYS$OUTPUT -
 
1066
         "    """"       :  Compile with default (short) pointers."
 
1067
$       WRITE SYS$OUTPUT -
 
1068
         "    32       :  Compile with 32-bit (short) pointers."
 
1069
$       WRITE SYS$OUTPUT -
 
1070
         "    64       :  Compile with 64-bit (long) pointers (auto ARGV)."
 
1071
$       WRITE SYS$OUTPUT -
 
1072
         "    64=      :  Compile with 64-bit (long) pointers (no ARGV)."
 
1073
$       WRITE SYS$OUTPUT -
 
1074
         "    64=ARGV  :  Compile with 64-bit (long) pointers (ARGV)."
 
1075
$       WRITE SYS$OUTPUT ""
 
1076
$! 
1013
1077
$!      Time To EXIT.
1014
1078
$!
1015
1079
$       GOTO TIDY
1016
1080
$!
1017
 
$!      End The Valid Arguement Check.
1018
 
$!
1019
1081
$     ENDIF
 
1082
$!
1020
1083
$   ENDIF
1021
1084
$!
1022
 
$! End The P2 Check.
 
1085
$! End The P2 (POINTER_SIZE) Check.
1023
1086
$!
1024
1087
$ ENDIF
1025
1088
$!
1049
1112
$!
1050
1113
$   ELSE
1051
1114
$!
1052
 
$!    Tell The User Entered An Invalid Option..
 
1115
$!    Tell The User Entered An Invalid Option.
1053
1116
$!
1054
1117
$     WRITE SYS$OUTPUT ""
1055
1118
$     WRITE SYS$OUTPUT "The Option ",P3," Is Invalid.  The Valid Options Are:"
1128
1191
$!
1129
1192
$ ELSE
1130
1193
$!
1131
 
$!  Check To See If The User Entered A Valid Paramter.
 
1194
$!  Check To See If The User Entered A Valid Parameter.
1132
1195
$!
1133
1196
$   IF (P4.EQS."VAXC").OR.(P4.EQS."DECC").OR.(P4.EQS."GNUC")!.OR.(P4.EQS."LINK")
1134
1197
$   THEN
1227
1290
$!
1228
1291
$ ENDIF
1229
1292
$!
1230
 
$! Time to check the contents of P5, and to make sure we get the correct library.
 
1293
$! Time to check the contents of P5, and to make sure we get the correct
 
1294
$! library.
1231
1295
$!
1232
1296
$ IF P5.EQS."SOCKETSHR" .OR. P5.EQS."MULTINET" .OR. P5.EQS."UCX" -
1233
1297
     .OR. P5.EQS."TCPIP" .OR. P5.EQS."NONE"
1240
1304
$!
1241
1305
$!    Set the library to use SOCKETSHR
1242
1306
$!
1243
 
$     TCPIP_LIB = "SYS$DISK:[-.VMS]SOCKETSHR_SHR.OPT/OPT"
 
1307
$     TCPIP_LIB = "SYS$DISK:[-.VMS]SOCKETSHR_SHR.OPT /OPTIONS"
1244
1308
$!
1245
1309
$!    Tell the user
1246
1310
$!
1274
1338
$!
1275
1339
$!    Set the library to use UCX.
1276
1340
$!
1277
 
$     TCPIP_LIB = "SYS$DISK:[-.VMS]UCX_SHR_DECC.OPT/OPT"
 
1341
$     TCPIP_LIB = "SYS$DISK:[-.VMS]UCX_SHR_DECC.OPT /OPTIONS"
1278
1342
$!
1279
1343
$!    Tell the user
1280
1344
$!
1291
1355
$!
1292
1356
$!    Set the library to use TCPIP (post UCX).
1293
1357
$!
1294
 
$     TCPIP_LIB = "SYS$DISK:[-.VMS]TCPIP_SHR_DECC.OPT/OPT"
 
1358
$     TCPIP_LIB = "SYS$DISK:[-.VMS]TCPIP_SHR_DECC.OPT /OPTIONS"
1295
1359
$!
1296
1360
$!    Tell the user
1297
1361
$!
1401
1465
$!
1402
1466
$ ENDIF
1403
1467
$!
 
1468
$!
 
1469
$! Check To See If We Have A ZLIB Option.
 
1470
$!
 
1471
$ ZLIB = P7
 
1472
$ IF (ZLIB .NES. "")
 
1473
$ THEN
 
1474
$!
 
1475
$!  Check for expected ZLIB files.
 
1476
$!
 
1477
$   err = 0
 
1478
$   file1 = f$parse( "zlib.h", ZLIB, , , "SYNTAX_ONLY")
 
1479
$   if (f$search( file1) .eqs. "")
 
1480
$   then
 
1481
$     WRITE SYS$OUTPUT ""
 
1482
$     WRITE SYS$OUTPUT "The Option ", ZLIB, " Is Invalid."
 
1483
$     WRITE SYS$OUTPUT "    Can't find header: ''file1'"
 
1484
$     err = 1
 
1485
$   endif
 
1486
$!
 
1487
$   file2 = f$parse( ZLIB, "libz.olb", , , "SYNTAX_ONLY")
 
1488
$   if (f$search( file2) .eqs. "")
 
1489
$   then
 
1490
$     if (err .eq. 0)
 
1491
$     then
 
1492
$       WRITE SYS$OUTPUT ""
 
1493
$       WRITE SYS$OUTPUT "The Option ", ZLIB, " Is Invalid."
 
1494
$     endif
 
1495
$     WRITE SYS$OUTPUT "    Can't find library: ''file2'"
 
1496
$     WRITE SYS$OUTPUT ""
 
1497
$     err = err+ 2
 
1498
$   endif
 
1499
$   if (err .eq. 1)
 
1500
$   then
 
1501
$     WRITE SYS$OUTPUT ""
 
1502
$   endif
 
1503
$!
 
1504
$   if (err .ne. 0)
 
1505
$   then
 
1506
$     GOTO TIDY
 
1507
$   endif
 
1508
$!
 
1509
$!  Print info
 
1510
$!
 
1511
$   WRITE SYS$OUTPUT "ZLIB library spec: ", file2
 
1512
$!
 
1513
$! End The ZLIB Check.
 
1514
$!
 
1515
$ ENDIF
 
1516
$!
1404
1517
$!  Time To RETURN...
1405
1518
$!
1406
1519
$ RETURN
1407
1520
$!
1408
1521
$ TIDY:
 
1522
$!
 
1523
$! Close any open files.
 
1524
$!
 
1525
$ if (f$trnlnm( "h_file", "LNM$PROCESS", 0, "SUPERVISOR") .nes. "") then -
 
1526
   close h_file
 
1527
$!
 
1528
$! Restore the original default device:[directory].
 
1529
$!
1409
1530
$ SET DEFAULT 'DEF_ORIG'
 
1531
$!
1410
1532
$ EXIT
1411
1533
$!