[openssl] master update

Richard Levitte levitte at openssl.org
Thu Sep 24 06:07:51 UTC 2020


The branch master has been updated
       via  cdb5129e5c5fd8ad678c5efb1e87c91595d907b4 (commit)
       via  37fe90ad17fcaaeb33d01c660ed1c12db723d833 (commit)
       via  c60330cb0efcde5fea80113c110499d352b2abca (commit)
      from  3eb99601b148e0019905b660d344508cccfc6943 (commit)


- Log -----------------------------------------------------------------
commit cdb5129e5c5fd8ad678c5efb1e87c91595d907b4
Author: Richard Levitte <levitte at openssl.org>
Date:   Mon Sep 21 13:14:26 2020 +0200

    Use OPENSSL_SYS_TANDEM instead of OPENSSL_SYSNAME_TANDEM
    
    This streamlines with all other config targets, and draws from the
    'sys_id' config attribute.
    
    Fixes #12858
    
    Reviewed-by: Tim Hudson <tjh at openssl.org>
    (Merged from https://github.com/openssl/openssl/pull/12933)

commit 37fe90ad17fcaaeb33d01c660ed1c12db723d833
Author: Richard Levitte <levitte at openssl.org>
Date:   Mon Sep 21 13:13:25 2020 +0200

    Configure: Show 'enable' and 'disable' config attributes
    
    This makes a difference for './Configure HASH' and './Configure TABLE'
    
    Reviewed-by: Tim Hudson <tjh at openssl.org>
    (Merged from https://github.com/openssl/openssl/pull/12933)

commit c60330cb0efcde5fea80113c110499d352b2abca
Author: Richard Levitte <levitte at openssl.org>
Date:   Mon Sep 21 13:11:28 2020 +0200

    Configuration: Streamline NonStop entries
    
    Because there are many combinations and much repetition, we add a large
    number of templates to cover all aspects, and make the actual config
    entries inherit from the templates combined.
    
    Fixes #12858
    
    Reviewed-by: Tim Hudson <tjh at openssl.org>
    (Merged from https://github.com/openssl/openssl/pull/12933)

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

Summary of changes:
 Configurations/50-nonstop.conf | 438 +++++++++++++++++++++++++----------------
 Configure                      |   2 +
 apps/ca.c                      |   2 +-
 apps/lib/apps.c                |   2 +-
 crypto/rand/rand_egd.c         |   6 +-
 include/internal/sockets.h     |   2 +-
 6 files changed, 275 insertions(+), 177 deletions(-)

diff --git a/Configurations/50-nonstop.conf b/Configurations/50-nonstop.conf
index 51034c70aa..e11bc77083 100644
--- a/Configurations/50-nonstop.conf
+++ b/Configurations/50-nonstop.conf
@@ -1,176 +1,272 @@
 #### Nonstop configurations
-    "nonstop-common" => {
-        inherit_from     => [ "BASE_unix" ],
-        template         => 1,
-        cc               => "c99",
-        cflags           => add_before(picker(debug   => "-g -O0",
-                                              release => "-g -O2") ,"-Wextensions -Wnowarn=203,220,272,734,770,1506 -Wbuild_neutral_library"),
-        perl             => "/usr/bin/perl",
-        lflags           => "-lrld",
-        shared_target    => "self",
-        shared_cflag     => "",
-        shared_ldflag    => "-Wshared",
+    # Common for all
+    'nonstop-common' => {
+        inherit_from     => [ 'BASE_unix' ],
+        template         => 1,
+        cc               => 'c99',
+        cflags           => add_before(picker(debug   => '-g -O0',
+                                              release => '-g -O2'),
+                                       '-Wextensions',
+                                       '-Wnowarn=203,220,272,734,770,1506',
+                                       '-Wbuild_neutral_library',
+                                       '-Wverbose'),
+        defines          => add('OPENSSL_VPROC=$(OPENSSL_VPROC)',
+                                '_XOPEN_SOURCE',
+                                '_XOPEN_SOURCE_EXTENDED=1',
+                                '_TANDEM_SOURCE',
+                                'B_ENDIAN'),
+        perl             => '/usr/bin/perl',
+        shared_target    => 'self',
         shared_extension => ".so",
-        enable           => ["egd"],
-        dso_scheme       => "DLFCN",
-    },
-    "nonstop-nsx" => {
-        inherit_from     => [ "nonstop-common" ],
-        cflags           => sub { join(" ", at _,"-Wverbose -I/usr/local/include") },
-        shared_cflag     => sub { join(" ", at _,"-Wverbose -I/usr/local/include") },
-        lflags           => sub { join(" ", at _,"-lfloss -Wxld='-set floattype neutral_float' -Wsystype=oss") },
-        shared_ldflag    => sub { join(" ", at _,"-lfloss -Wxld='-export_all -set floattype neutral_float -set systype oss' -Wsystype=oss") },
-        defines          => ["OPENSSL_VPROC=\$(OPENSSL_VPROC)","_XOPEN_SOURCE","_XOPEN_SOURCE_EXTENDED=1","B_ENDIAN", "OPENSSL_SYSNAME_TANDEM", "OPENSSL_TANDEM_FLOSS"],
-        disable          => ["threads"],
-        bn_ops           => "THIRTY_TWO_BIT",
-    },
-    "nonstop-nsx_put" => {
-        inherit_from     => [ "nonstop-common" ],
-        cflags           => sub { join(" ", at _,"-Wverbose") },
-        shared_cflag     => sub { join(" ", at _,"-Wverbose") },
-        lflags           => sub { join(" ", at _,"-lput") },
-        shared_ldflag    => sub { join(" ", at _,"-Wxld='-export_all -set floattype neutral_float -set systype oss' -lput -Wsystype=oss") },
-        defines          => ["OPENSSL_VPROC=\$(OPENSSL_VPROC)","_REENTRANT", "_PUT_MODEL_","_XOPEN_SOURCE","_XOPEN_SOURCE_EXTENDED=1","_ENABLE_FLOSS_THREADS", "B_ENDIAN", "OPENSSL_SYSNAME_TANDEM"],
-        bn_ops           => "THIRTY_TWO_BIT",
-    },
-    "nonstop-nsx_64" => {
-        inherit_from     => [ "nonstop-common" ],
-        cflags           => sub { join(" ", at _,"-Wlp64 -Wverbose") },
-        shared_cflag     => sub { join(" ", at _,"-Wlp64 -Wverbose") },
-        lflags           => sub { join(" ", at _,"-lfloss -Wlp64") },
-        shared_ldflag    => sub { join(" ", at _,"-lfloss -Wxld='-export_all -set data_model lp64 -set floattype neutral_float -set systype oss' -Wlp64 -Wsystype=oss") },
-        defines          => ["OPENSSL_VPROC=\$(OPENSSL_VPROC)","_XOPEN_SOURCE","_XOPEN_SOURCE_EXTENDED=1", "B_ENDIAN", "OPENSSL_SYSNAME_TANDEM", "OPENSSL_TANDEM_FLOSS"],
-        disable          => ["threads"],
-        bn_ops           => "SIXTY_FOUR_BIT",
-    },
-    "nonstop-nsx_64_put" => {
-        inherit_from     => [ "nonstop-common" ],
-        shared_cflag     => sub { join(" ", at _,"-Wlp64 -Wverbose -Wtarget=tns/x") },
-        cflags           => sub { join(" ", at _,"-Wlp64 -Wverbose -Wtarget=tns/x") },
-        lflags           => sub { join(" ", at _,"-Wxld='-set floattype neutral_float -set systype oss' -Wlp64 -lput -Wsystype=oss") },
-        shared_ldflag    => sub { join(" ", at _,"-Wxld='-export_all -set data_model lp64'") },
-        defines          => ["OPENSSL_VPROC=\$(OPENSSL_VPROC)","_REENTRANT", "_PUT_MODEL_","_TANDEM_ARCH=3","_XOPEN_SOURCE","_XOPEN_SOURCE_EXTENDED=1","_ENABLE_FLOSS_THREADS","__TANDEM", "_TANDEM_SOURCE", "B_ENDIAN", "OPENSSL_SYSNAME_TANDEM"],
-        bn_ops           => "SIXTY_FOUR_BIT",
-    },
-    "nonstop-nsx_spt" => {
-        inherit_from     => [ "nonstop-common" ],
-        cflags           => sub { join(" ", at _,"-Wverbose -Wtarget=tns/x") },
-        shared_cflag     => sub { join(" ", at _,"-Wverbose -Wtarget=tns/x") },
-        lflags           => sub { join(" ", at _,"-lspt -Wextensions") },
-        shared_ldflag    => sub { join(" ", at _,"-Wxld='-export_all -set floattype neutral_float -set systype oss' -lspt -Wextensions -Wsystype=oss") },
-        defines          => ["OPENSSL_VPROC=\$(OPENSSL_VPROC)","_REENTRANT", "_SPT_MODEL_","_THREAD_SUPPORT_FUNCTIONS","_XOPEN_SOURCE","_XOPEN_SOURCE_EXTENDED=1","_TANDEM_SOURCE", "B_ENDIAN", "OPENSSL_SYSNAME_TANDEM"],
-        bn_ops           => "THIRTY_TWO_BIT",
-    },
-    "nonstop-nsx_spt_floss" => {
-        inherit_from     => [ "nonstop-common" ],
-        cflags           => sub { join(" ", at _,"-I/usr/local/include -Wverbose -Wtarget=tns/x") },
-        shared_cflag     => sub { join(" ", at _,"-I/usr/local/include -Wverbose -Wtarget=tns/x") },
-        lflags           => sub { join(" ", at _,"-lfloss -lspt -Wextensions") },
-        shared_ldflag    => sub { join(" ", at _,"-lfloss -Wxld='-export_all -set floattype neutral_float -set systype oss' -lspt -Wextensions -Wsystype=oss") },
-        defines          => ["OPENSSL_VPROC=\$(OPENSSL_VPROC)","_REENTRANT", "_SPT_MODEL_","_THREAD_SUPPORT_FUNCTIONS","_XOPEN_SOURCE","_XOPEN_SOURCE_EXTENDED=1","_TANDEM_SOURCE", "B_ENDIAN", "OPENSSL_SYSNAME_TANDEM","OPENSSL_TANDEM_FLOSS"],
-        bn_ops           => "THIRTY_TWO_BIT",
-    },
-    "nonstop-nsx_g" => {
-        inherit_from     => [ "nonstop-common" ],
-        cflags           => sub { join(" ", at _,"-Wverbose -Wtarget=tns/x") },
-        shared_cflag     => sub { join(" ", at _,"-Wverbose -Wtarget=tns/x") },
-        lflags           => sub { join(" ", at _,"-Wsystype=guardian -Wxld='-set systype guardian -set floattype neutral_float'") },
-        shared_ldflag    => sub { join(" ", at _,"-Wxld='-export_all -set floattype neutral_float -soname \$\(\@:lib%.so=%\)  -set systype guardian' -Wsystype=guardian") },
-        #shared_extension => " ",
-        defines          => ["OPENSSL_VPROC=\$(OPENSSL_VPROC)","_XOPEN_SOURCE","_XOPEN_SOURCE_EXTENDED=1", "_TANDEM_SOURCE", "B_ENDIAN", "OPENSSL_SYSNAME_TANDEM", "NO_GETPID"],
-        disable          => ["threads"],
-        bn_ops           => "THIRTY_TWO_BIT",
-    },
-    "nonstop-nsx_g_tandem" => {
-        inherit_from     => [ "nonstop-common" ],
-        cflags           => sub { join(" ", at _,"-Wverbose -Wtarget=tns/x") },
-        shared_cflag     => sub { join(" ", at _,"-Wverbose -Wtarget=tns/x") },
-        lflags           => sub { join(" ", at _,"-Wsystype=guardian -Wxld='-set systype guardian -set floattype tandem_float'") },
-        shared_ldflag    => sub { join(" ", at _,"-Wxld='-export_all -set floattype tandem_float -soname \$\(\@:lib%.so=%\)  -set systype guardian' -Wsystype=guardian") },
-        #shared_extension => " ",
-        defines          => ["OPENSSL_VPROC=\$(OPENSSL_VPROC)","_XOPEN_SOURCE","_XOPEN_SOURCE_EXTENDED=1", "_TANDEM_SOURCE", "B_ENDIAN", "OPENSSL_SYSNAME_TANDEM", "NO_GETPID"],
-        disable          => ["threads"],
-        bn_ops           => "THIRTY_TWO_BIT",
-    },
-    "nonstop-nsv" => {
-        inherit_from     => [ "nonstop-nsx" ],
-    },
-    "nonstop-nse" => {
-        inherit_from     => [ "nonstop-common" ],
-        cflags           => sub { join(" ", at _,"-Wverbose -Wtarget=tns/e -I/usr/local/include") },
-        shared_cflag     => sub { join(" ", at _,"-Wverbose -Wtarget=tns/e -I/usr/local/include") },
-        lflags           => sub { join(" ", at _,"-lfloss") },
-        shared_ldflag    => sub { join(" ", at _,"-lfloss -Weld='-export_all -set floattype neutral_float -set systype oss' -Wsystype=oss") },
-        defines          => ["OPENSSL_VPROC=\$(OPENSSL_VPROC)","_TANDEM_ARCH=2","_XOPEN_SOURCE","_XOPEN_SOURCE_EXTENDED=1","__TANDEM", "_TANDEM_SOURCE", "B_ENDIAN", "OPENSSL_SYSNAME_TANDEM", "OPENSSL_TANDEM_FLOSS"],
-        disable          => ["threads"],
-        bn_ops           => "THIRTY_TWO_BIT",
-    },
-    "nonstop-nse_put" => {
-        inherit_from     => [ "nonstop-common" ],
-        cflags           => sub { join(" ", at _,"-Wverbose -Wtarget=tns/e") },
-        shared_cflag     => sub { join(" ", at _,"-Wverbose -Wtarget=tns/e") },
-        lflags           => sub { join(" ", at _,"-lput") },
-        shared_ldflag    => sub { join(" ", at _,"-Weld='-export_all -set floattype neutral_float -set systype oss' -lput -Wsystype=oss") },
-        defines          => ["OPENSSL_VPROC=\$(OPENSSL_VPROC)","_REENTRANT", "_PUT_MODEL_","_XOPEN_SOURCE","_XOPEN_SOURCE_EXTENDED=1","_ENABLE_FLOSS_THREADS", "_TANDEM_SOURCE", "B_ENDIAN", "OPENSSL_SYSNAME_TANDEM"],
-        bn_ops           => "THIRTY_TWO_BIT",
-    },
-    "nonstop-nse_64" => {
-        inherit_from     => [ "nonstop-common" ],
-        cflags           => sub { join(" ", at _,"-Wlp64 -Wverbose -Wtarget=tns/e") },
-        shared_cflag     => sub { join(" ", at _,"-Wlp64 -Wverbose -Wtarget=tns/e") },
-        lflags           => sub { join(" ", at _,"-lfloss -Wlp64") },
-        shared_ldflag    => sub { join(" ", at _,"-lfloss -Weld='-export_all -set data_model lp64  -set floattype neutral_float -set systype oss' -Wlp64 -Wsystype=oss") },
-        defines          => ["OPENSSL_VPROC=\$(OPENSSL_VPROC)","_XOPEN_SOURCE","_XOPEN_SOURCE_EXTENDED=1","_TANDEM_SOURCE", "B_ENDIAN", "OPENSSL_SYSNAME_TANDEM", "OPENSSL_TANDEM_FLOSS"],
-        disable          => ["threads"],
-        bn_ops           => "SIXTY_FOUR_BIT_LONG RC4_CHAR RC4_CHUNK DES_INT DES_UNROLL BF_PTR",
-    },
-    "nonstop-nse_64_put" => {
-        inherit_from     => [ "nonstop-common" ],
-        cflags           => sub { join(" ", at _,"-Wlp64 -Wverbose -Wtarget=tns/e") },
-        shared_cflag     => sub { join(" ", at _,"-Wlp64 -Wverbose -Wtarget=tns/e") },
-        lflags           => sub { join(" ", at _,"-lput -Wlp64") },
-        shared_ldflag    => sub { join(" ", at _,"-Weld='-export_all -set data_model lp64 -set floattype neutral_float -set systype oss' -Wlp64 -lput -Wsystype=oss") },
-        defines          => ["OPENSSL_VPROC=\$(OPENSSL_VPROC)","_REENTRANT", "_PUT_MODEL_","_XOPEN_SOURCE","_XOPEN_SOURCE_EXTENDED=1","_ENABLE_FLOSS_THREADS", "_TANDEM_SOURCE", "B_ENDIAN", "OPENSSL_SYSNAME_TANDEM"],
-        bn_ops           => "SIXTY_FOUR_BIT_LONG RC4_CHAR RC4_CHUNK DES_INT DES_UNROLL BF_PTR",
-    },
-    "nonstop-nse_spt" => {
-        inherit_from     => [ "nonstop-common" ],
-        cflags           => sub { join(" ", at _,"-Wverbose -Wtarget=tns/e") },
-        shared_cflag     => sub { join(" ", at _,"-Wverbose -Wtarget=tns/e") },
-        lflags           => sub { join(" ", at _,"-lspt -Wextensions") },
-        shared_ldflag    => sub { join(" ", at _,"-Weld='-export_all -set floattype neutral_float -set systype oss' -lspt -Wextensions -Wsystype=oss") },
-        defines          => ["OPENSSL_VPROC=\$(OPENSSL_VPROC)","_REENTRANT", "_SPT_MODEL_","_THREAD_SUPPORT_FUNCTIONS","_XOPEN_SOURCE","_XOPEN_SOURCE_EXTENDED=1", "_TANDEM_SOURCE", "B_ENDIAN", "OPENSSL_SYSNAME_TANDEM"],
-        bn_ops           => "THIRTY_TWO_BIT",
-    },
-    "nonstop-nse_spt_floss" => {
-        inherit_from     => [ "nonstop-common" ],
-        cflags           => sub { join(" ", at _,"-Wverbose -Wtarget=tns/e") },
-        shared_cflag     => sub { join(" ", at _,"-Wverbose -Wtarget=tns/e") },
-        lflags           => sub { join(" ", at _,"-lfloss -lspt -Wextensions") },
-        shared_ldflag    => sub { join(" ", at _,"-lfloss -Weld='-export_all -set floattype neutral_float -set systype oss' -lspt -Wextensions -Wsystype=oss") },
-        defines          => ["OPENSSL_VPROC=\$(OPENSSL_VPROC)","_REENTRANT", "_SPT_MODEL_","_THREAD_SUPPORT_FUNCTIONS","_XOPEN_SOURCE","_XOPEN_SOURCE_EXTENDED=1", "_TANDEM_SOURCE", "B_ENDIAN", "OPENSSL_SYSNAME_TANDEM", "OPENSSL_TANDEM_FLOSS"],
-        bn_ops           => "THIRTY_TWO_BIT",
-    },
-    "nonstop-nse_g" => {
-        inherit_from     => [ "nonstop-common" ],
-        cflags           => sub { join(" ", at _,"-Wverbose -Wtarget=tns/e") },
-        shared_cflag     => sub { join(" ", at _,"-Wverbose -Wtarget=tns/e") },
-        lflags           => sub { join(" ", at _,"-Wsystype=guardian -Weld='-set systype guardian'") },
-        shared_ldflag    => sub { join(" ", at _,"-Weld='-set systype guardian -export_all -set floattype neutral_float -soname \$\(\@:lib%.so=%\)' -Wsystype=guardian") },
-        #shared_extension => " ",
-        defines          => ["OPENSSL_VPROC=\$(OPENSSL_VPROC)","_XOPEN_SOURCE","_XOPEN_SOURCE_EXTENDED=1", "_TANDEM_SOURCE", "B_ENDIAN", "OPENSSL_SYSNAME_TANDEM", "NO_GETPID"],
-        disable          => ["threads"],
-        bn_ops           => "THIRTY_TWO_BIT",
+        ex_libs          => add('-lrld'),
+        enable           => ['egd'],
+        dso_scheme       => 'DLFCN',
+        sys_id           => 'TANDEM',
+    },
+
+    ######################################################################
+    # Additional variant settings, to be combined with nonstop-common
+    # Note that these do not inherit anything.  However, the diverse values
+    # are merged with other entries in an 'inherit_from'.
+    #
+    # These combine:
+    # - System architecture (MIPS, Itanium, or x86)
+    # - Execution environment (oss [default] or guardian)
+    #
+    # Unfortunately, they can't be separated into independent templates, because
+    # a number of the above are encoded as different linkers, and by consequence,
+    # different c99 linker flags (-Wld, -Weld, and -Wxld)
+    #
+    # In addition, the are modifiers for:
+    # - Size of long + pointer (ilp32 [default] and lp64)
+    # - Float type (neutral and tandem)
+    #
+    # Unfortunately, because the float types affect the linker settings, those
+    # are divided per system architecture
+    #
+    # MIPS + guardian (unused but present for convenience):
+    'nonstop-archenv-mips-guardian' => {
+        template         => 1,
+        defines          => ['NO_GETPID'],
+        cflags           => '-Wtarget=tns/r -Wsystype=guardian',
+        lflags           => '-Wld="-set systype guardian"',
+        shared_ldflag    => '-Wshared -Wld="-export_all -soname $(@:lib%.so=%)"',
+    },
+
+    # Itanium + guardian:
+    'nonstop-archenv-itanium-guardian' => {
+        template         => 1,
+        defines          => ['NO_GETPID', '_TANDEM_ARCH=2'],
+        cflags           => '-Wtarget=tns/e -Wsystype=guardian',
+        lflags           => '-Weld="-set systype guardian"',
+        shared_ldflag    => '-Wshared -Weld="-export_all -soname $(@:lib%.so=%)"',
+    },
+
+    # x86 + guardian:
+    'nonstop-archenv-x86_64-guardian' => {
+        template         => 1,
+        defines          => ['NO_GETPID', '_TANDEM_ARCH=3'],
+        cflags           => '-Wtarget=tns/x -Wsystype=guardian',
+        lflags           => '-Wxld="-set systype guardian"',
+        shared_ldflag    => '-Wshared -Wxld="-export_all -soname $(@:lib%.so=%)"',
+    },
+
+    # MIPS + oss (unused but present for convenience):
+    'nonstop-archenv-mips-oss' => {
+        template         => 1,
+        cflags           => '-Wtarget=tns/r -Wsystype=oss',
+        lflags           => '-Wld="-set systype oss"',
+        shared_ldflag    => '-Wshared -Wld="-export_all"',
+    },
+    # Itanium + oss:
+    'nonstop-archenv-itanium-oss' => {
+        template         => 1,
+        defines          => ['_TANDEM_ARCH=2'],
+        cflags           => '-Wtarget=tns/e -Wsystype=oss',
+        lflags           => '-Weld="-set systype oss"',
+        shared_ldflag    => '-Wshared -Weld="-export_all"',
+    },
+    # x86_64 + oss:
+    'nonstop-archenv-x86_64-oss' => {
+        template         => 1,
+        defines          => ['_TANDEM_ARCH=3'],
+        cflags           => '-Wtarget=tns/x -Wsystype=oss',
+        lflags           => '-Wxld="-set systype oss"',
+        shared_ldflag    => '-Wshared -Wxld="-export_all"',
+    },
+
+    # Size variants
+    'nonstop-ilp32' => {
+        template         => 1,
+        cflags           => '-Wilp32',
+        bn_ops           => 'THIRTY_TWO_BIT',
+    },
+    'nonstop-lp64-itanium' => {
+        template         => 1,
+        cflags           => '-Wlp64',
+        bn_ops           => 'SIXTY_FOUR_BIT_LONG RC4_CHAR RC4_CHUNK DES_INT DES_UNROLL BF_PTR',
+    },
+    'nonstop-lp64-x86_64' => {
+        template         => 1,
+        cflags           => '-Wlp64',
+        lflags           => '-Wxld="-set data_model lp64"',
+        bn_ops           => 'SIXTY_FOUR_BIT',
+    },
+
+    # Float variants
+    'nonstop-nfloat-mips' => {
+        template         => 1,
+        lflags           => '-Wld="-set floattype neutral_float"',
+    },
+    'nonstop-tfloat-mips' => {
+        template         => 1,
+        lflags           => '-Wld="-set floattype tandem_float"',
+    },
+    'nonstop-nfloat-itanium' => {
+        template         => 1,
+        lflags           => '-Weld="-set floattype neutral_float"',
+    },
+    'nonstop-tfloat-itanium' => {
+        template         => 1,
+        lflags           => '-Weld="-set floattype tandem_float"',
+    },
+    'nonstop-nfloat-x86_64' => {
+        template         => 1,
+        lflags           => '-Wxld="-set floattype neutral_float"',
+    },
+    'nonstop-tfloat-x86_64' => {
+        template         => 1,
+        lflags           => '-Wxld="-set floattype tandem_float"',
+    },
+
+    ######################################################################
+    # Build models
+    'nonstop-model-put' => {
+        template         => 1,
+        defines          => ['_PUT_MODEL_',
+                             '_REENTRANT', '_ENABLE_FLOSS_THREADS'],
+        ex_libs          => '-lput',
+    },
+    'nonstop-model-spt' => {
+        template         => 1,
+        defines          => ['_SPT_MODEL_',
+                             '_REENTRANT', '_THREAD_SUPPORT_FUNCTIONS'],
+        ex_libs          => '-lspt',
+    },
+
+    # Additional floss model that can be combined with any of the other models.
+    # If used without any of the other models, the entry that does so must
+    # disable threads.
+    'nonstop-model-floss' => {
+        template         => 1,
+        defines          => ['OPENSSL_TANDEM_FLOSS'],
+        includes         => ['/usr/local/include'],
+        ex_libs          => '-lfloss',
+    },
+
+    ######################################################################
+    # Now for the entried themselves, let's combine things!
+    'nonstop-nsx' => {
+        inherit_from     => [ 'nonstop-common',
+                              'nonstop-archenv-x86_64-oss',
+                              'nonstop-ilp32', 'nonstop-nfloat-x86_64',
+                              'nonstop-model-floss' ],
+        disable          => ['threads'],
+    },
+    'nonstop-nsx_put' => {
+        inherit_from     => [ 'nonstop-common',
+                              'nonstop-archenv-x86_64-oss',
+                              'nonstop-ilp32', 'nonstop-nfloat-x86_64',
+                              'nonstop-model-put' ],
+    },
+    'nonstop-nsx_64' => {
+        inherit_from     => [ 'nonstop-common',
+                              'nonstop-archenv-x86_64-oss',
+                              'nonstop-lp64-x86_64', 'nonstop-nfloat-x86_64',
+                              'nonstop-model-floss' ],
+        disable          => ['threads'],
+    },
+    'nonstop-nsx_64_put' => {
+        inherit_from     => [ 'nonstop-common',
+                              'nonstop-archenv-x86_64-oss',
+                              'nonstop-lp64-x86_64', 'nonstop-nfloat-x86_64',
+                              'nonstop-model-put' ],
+    },
+    'nonstop-nsx_spt' => {
+        inherit_from     => [ 'nonstop-common',
+                              'nonstop-archenv-x86_64-oss', 
+                              'nonstop-ilp32', 'nonstop-nfloat-x86_64',
+                              'nonstop-model-spt' ],
+    },
+    'nonstop-nsx_spt_floss' => {
+        inherit_from     => [ 'nonstop-common',
+                              'nonstop-archenv-x86_64-oss',
+                              'nonstop-ilp32', 'nonstop-nfloat-x86_64',
+                              'nonstop-model-floss', 'nonstop-model-spt'],
+    },
+    'nonstop-nsx_g' => {
+        inherit_from     => [ 'nonstop-common',
+                              'nonstop-archenv-x86_64-guardian',
+                              'nonstop-ilp32', 'nonstop-nfloat-x86_64' ],
+        disable          => ['threads'],
+    },
+    'nonstop-nsx_g_tandem' => {
+        inherit_from     => [ 'nonstop-common',
+                              'nonstop-archenv-x86_64-guardian',
+                              'nonstop-ilp32', 'nonstop-tfloat-x86_64' ],
+        disable          => ['threads'],
+    },
+    'nonstop-nsv' => {
+        inherit_from     => [ 'nonstop-nsx' ],
+    },
+    'nonstop-nse' => {
+        inherit_from     => [ 'nonstop-common',
+                              'nonstop-archenv-itanium-oss',
+                              'nonstop-ilp32', 'nonstop-nfloat-itanium',
+                              'nonstop-model-floss' ],
+        disable          => ['threads'],
+    },
+    'nonstop-nse_put' => {
+        inherit_from     => [ 'nonstop-common',
+                              'nonstop-archenv-itanium-oss',
+                              'nonstop-ilp32', 'nonstop-nfloat-itanium',
+                              'nonstop-model-put' ],
+    },
+    'nonstop-nse_64' => {
+        inherit_from     => [ 'nonstop-common',
+                              'nonstop-archenv-itanium-oss',
+                              'nonstop-lp64-itanium', 'nonstop-nfloat-itanium',
+                              'nonstop-model-floss' ],
+        disable          => ['threads'],
+    },
+    'nonstop-nse_64_put' => {
+        inherit_from     => [ 'nonstop-common',
+                              'nonstop-archenv-itanium-oss',
+                              'nonstop-lp64-itanium', 'nonstop-nfloat-itanium',
+                              'nonstop-model-put' ],
+    },
+    'nonstop-nse_spt' => {
+        inherit_from     => [ 'nonstop-common',
+                              'nonstop-archenv-itanium-oss',
+                              'nonstop-ilp32', 'nonstop-nfloat-itanium',
+                              'nonstop-model-spt' ],
+    },
+    'nonstop-nse_spt_floss' => {
+        inherit_from     => [ 'nonstop-common',
+                              'nonstop-archenv-itanium-oss',
+                              'nonstop-ilp32', 'nonstop-nfloat-itanium',
+                              'nonstop-model-floss', 'nonstop-model-spt' ],
+    },
+    'nonstop-nse_g' => {
+        inherit_from     => [ 'nonstop-common',
+                              'nonstop-archenv-itanium-guardian',
+                              'nonstop-ilp32', 'nonstop-nfloat-itanium' ],
+        disable          => ['threads'],
     },
 
-    "nonstop-nse_g_tandem" => {
-        inherit_from     => [ "nonstop-common" ],
-        cflags           => sub { join(" ", at _,"-Wverbose -Wtarget=tns/e") },
-        shared_cflag     => sub { join(" ", at _,"-Wverbose -Wtarget=tns/e") },
-        lflags           => sub { join(" ", at _,"-Wsystype=guardian -Weld='-set systype guardian -set floattype tandem_float'") },
-        shared_ldflag    => sub { join(" ", at _,"-Wsystype=guardian -Weld='-set systype guardian -export_all -set floattype tandem_float -soname \$\(\@:lib%.so=%\)'") },
-        #shared_extension => " ",
-        defines          => ["OPENSSL_VPROC=\$(OPENSSL_VPROC)","_XOPEN_SOURCE","_XOPEN_SOURCE_EXTENDED=1", "_TANDEM_SOURCE", "B_ENDIAN", "OPENSSL_SYSNAME_TANDEM", "NO_GETPID"],
-        disable          => ["threads"],
-        bn_ops           => "THIRTY_TWO_BIT",
+    'nonstop-nse_g_tandem' => {
+        inherit_from     => [ 'nonstop-common',
+                              'nonstop-archenv-itanium-guardian',
+                              'nonstop-ilp32', 'nonstop-tfloat-itanium' ],
+        disable          => ['threads'],
     },
diff --git a/Configure b/Configure
index 22c0ecdabd..6219e2e37e 100755
--- a/Configure
+++ b/Configure
@@ -3162,6 +3162,8 @@ sub print_table_entry
         "loutflag",
         "ex_libs",
         "bn_ops",
+        "enable",
+        "disable",
         "poly1035_asm_src",
         "thread_scheme",
         "perlasm_scheme",
diff --git a/apps/ca.c b/apps/ca.c
index 6ae52c2277..74113cdd67 100644
--- a/apps/ca.c
+++ b/apps/ca.c
@@ -26,7 +26,7 @@
 #ifndef W_OK
 # ifdef OPENSSL_SYS_VMS
 #  include <unistd.h>
-# elif !defined(OPENSSL_SYS_VXWORKS) && !defined(OPENSSL_SYS_WINDOWS) && !defined(OPENSSL_SYSNAME_TANDEM)
+# elif !defined(OPENSSL_SYS_VXWORKS) && !defined(OPENSSL_SYS_WINDOWS) && !defined(OPENSSL_SYS_TANDEM)
 #  include <sys/file.h>
 # endif
 #endif
diff --git a/apps/lib/apps.c b/apps/lib/apps.c
index 9c608e6582..c0c56d9c22 100644
--- a/apps/lib/apps.c
+++ b/apps/lib/apps.c
@@ -2410,7 +2410,7 @@ int raw_write_stdout(const void *buf, int siz)
     else
         return -1;
 }
-#elif defined(OPENSSL_SYSNAME_TANDEM) && defined(OPENSSL_THREADS) && defined(_SPT_MODEL_)
+#elif defined(OPENSSL_SYS_TANDEM) && defined(OPENSSL_THREADS) && defined(_SPT_MODEL_)
 # if defined(__TANDEM)
 #  if defined(OPENSSL_TANDEM_FLOSS)
 #   include <floss.h(floss_write)>
diff --git a/crypto/rand/rand_egd.c b/crypto/rand/rand_egd.c
index c6dcd87f04..dc1833169c 100644
--- a/crypto/rand/rand_egd.c
+++ b/crypto/rand/rand_egd.c
@@ -54,7 +54,7 @@ struct sockaddr_un {
 # include <string.h>
 # include <errno.h>
 
-# if defined(OPENSSL_SYSNAME_TANDEM)
+# if defined(OPENSSL_SYS_TANDEM)
 /*
  * HPNS:
  *
@@ -125,7 +125,7 @@ int RAND_query_egd_bytes(const char *path, unsigned char *buf, int bytes)
         return -1;
     strcpy(addr.sun_path, path);
     i = offsetof(struct sockaddr_un, sun_path) + strlen(path);
-#if defined(OPENSSL_SYSNAME_TANDEM)
+#if defined(OPENSSL_SYS_TANDEM)
     fd = hpns_socket(AF_UNIX, SOCK_STREAM, 0, AF_UNIX_COMPATIBILITY);
 #else
     fd = socket(AF_UNIX, SOCK_STREAM, 0);
@@ -158,7 +158,7 @@ int RAND_query_egd_bytes(const char *path, unsigned char *buf, int bytes)
             /* No error, try again */
             break;
         default:
-# if defined(OPENSSL_SYSNAME_TANDEM)
+# if defined(OPENSSL_SYS_TANDEM)
             if (hpns_connect_attempt == 0) {
                 /* try the other kind of AF_UNIX socket */
                 close(fd);
diff --git a/include/internal/sockets.h b/include/internal/sockets.h
index e3a6bd459b..e86ae8a09e 100644
--- a/include/internal/sockets.h
+++ b/include/internal/sockets.h
@@ -145,7 +145,7 @@ struct servent *PASCAL getservbyname(const char *, const char *);
 #  define closesocket(s)              close(s)
 #  define readsocket(s,b,n)           read((s),(b),(n))
 #  define writesocket(s,b,n)          write((s),(char *)(b),(n))
-# elif defined(OPENSSL_SYSNAME_TANDEM)
+# elif defined(OPENSSL_SYS_TANDEM)
 #  if defined(OPENSSL_TANDEM_FLOSS)
 #   include <floss.h(floss_read, floss_write)>
 #   define readsocket(s,b,n)       floss_read((s),(b),(n))


More information about the openssl-commits mailing list