summaryrefslogtreecommitdiffstats
path: root/apps
diff options
context:
space:
mode:
authorRandall S. Becker <rsbecker@nexbridge.com>2020-09-06 16:37:47 -0500
committerRichard Levitte <levitte@openssl.org>2020-09-12 20:32:11 +0200
commit08073700cc50bcd0df5c0ee68c100e300a320d03 (patch)
tree33e0641543cc32390ba73c49901183de01fdb9db /apps
parentf0c62c53286b3a79cc059354a6d3425b35bb1d50 (diff)
NonStop port updates for 3.0.0.
HPE NonStop Port Changes for 3.0.0 Includes unthreaded, PUT, and SPT for OSS. The port changes include wrapping where necessary for FLOSS and appropriate configuration changes to support that. Two tests are excluded as being inappropriate for the platform. The changes are: * Added /usr/local/include to nonstop-nsx_spt_floss to load floss.h * Added SPT Floss variant for NonStop * Wrapped FLOSS definitions in OPENSSL_TANDEM_FLOSS to allow selective enablement. * SPT build configuration for NonStop * Skip tests not relevant for NonStop * PUT configuration changes required for NonStop platforms * Configurations/50-nonstop.conf: updates for TNS/X platform. * FLOSS instrumentation for HPE NonStop TNS/X and TNS/E platforms. * Configurations/50-nonstop.conf: modifications for non-PUT TNS/E platform b * Fix use of DELAY in ssltestlib.c for HPNS. * Fixed commit merge issues and added floss to http_server.c CLA: Permission is granted by the author to the OpenSSL team to use these modifications. Fixes #5087. Signed-off-by: Randall S. Becker <rsbecker@nexbridge.com> Reviewed-by: Shane Lontis <shane.lontis@oracle.com> Reviewed-by: Richard Levitte <levitte@openssl.org> (Merged from https://github.com/openssl/openssl/pull/12800)
Diffstat (limited to 'apps')
-rw-r--r--apps/ca.c2
-rw-r--r--apps/lib/apps.c20
-rw-r--r--apps/lib/http_server.c6
-rw-r--r--apps/lib/s_socket.c6
-rw-r--r--apps/ocsp.c6
-rw-r--r--apps/provider.c4
-rw-r--r--apps/speed.c6
-rw-r--r--apps/version.c13
8 files changed, 62 insertions, 1 deletions
diff --git a/apps/ca.c b/apps/ca.c
index f6a928a0e8..3c2bee8f2f 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)
+# elif !defined(OPENSSL_SYS_VXWORKS) && !defined(OPENSSL_SYS_WINDOWS) && !defined(OPENSSL_SYSNAME_TANDEM)
# include <sys/file.h>
# endif
#endif
diff --git a/apps/lib/apps.c b/apps/lib/apps.c
index f2c384494f..5d95ce0c65 100644
--- a/apps/lib/apps.c
+++ b/apps/lib/apps.c
@@ -2399,6 +2399,11 @@ int raw_read_stdin(void *buf, int siz)
return recv(fileno_stdin(), buf, siz, 0);
}
#else
+# if defined(__TANDEM)
+# if defined(OPENSSL_TANDEM_FLOSS)
+# include <floss.h(floss_read)>
+# endif
+# endif
int raw_read_stdin(void *buf, int siz)
{
return read(fileno_stdin(), buf, siz);
@@ -2414,7 +2419,22 @@ int raw_write_stdout(const void *buf, int siz)
else
return -1;
}
+#elif defined(OPENSSL_SYSNAME_TANDEM) && defined(OPENSSL_THREADS) && defined(_SPT_MODEL_)
+# if defined(__TANDEM)
+# if defined(OPENSSL_TANDEM_FLOSS)
+# include <floss.h(floss_write)>
+# endif
+# endif
+int raw_write_stdout(const void *buf,int siz)
+{
+ return write(fileno(stdout),(void*)buf,siz);
+}
#else
+# if defined(__TANDEM)
+# if defined(OPENSSL_TANDEM_FLOSS)
+# include <floss.h(floss_write)>
+# endif
+# endif
int raw_write_stdout(const void *buf, int siz)
{
return write(fileno_stdout(), buf, siz);
diff --git a/apps/lib/http_server.c b/apps/lib/http_server.c
index 5c009b9990..b7d9842013 100644
--- a/apps/lib/http_server.c
+++ b/apps/lib/http_server.c
@@ -24,6 +24,12 @@
#include <openssl/err.h>
#include <openssl/rand.h>
+#if defined(__TANDEM)
+# if defined(OPENSSL_TANDEM_FLOSS)
+# include <floss.h(floss_fork)>
+# endif
+#endif
+
int multi = 0; /* run multiple responder processes */
#ifdef HTTP_DAEMON
diff --git a/apps/lib/s_socket.c b/apps/lib/s_socket.c
index b9baef913d..890bd39414 100644
--- a/apps/lib/s_socket.c
+++ b/apps/lib/s_socket.c
@@ -32,6 +32,12 @@ typedef unsigned int u_int;
# include "s_apps.h"
# include "internal/sockets.h"
+# if defined(__TANDEM)
+# if defined(OPENSSL_TANDEM_FLOSS)
+# include <floss.h(floss_read)>
+# endif
+# endif
+
# include <openssl/bio.h>
# include <openssl/err.h>
diff --git a/apps/ocsp.c b/apps/ocsp.c
index 0aca4b7622..4f42d66c0e 100644
--- a/apps/ocsp.c
+++ b/apps/ocsp.c
@@ -38,6 +38,12 @@ DEFINE_STACK_OF(CONF_VALUE)
DEFINE_STACK_OF(X509)
DEFINE_STACK_OF_STRING()
+#if defined(__TANDEM)
+# if defined(OPENSSL_TANDEM_FLOSS)
+# include <floss.h(floss_fork)>
+# endif
+#endif
+
#if defined(OPENSSL_SYS_VXWORKS)
/* not supported */
int setpgid(pid_t pid, pid_t pgid)
diff --git a/apps/provider.c b/apps/provider.c
index 7d3581153b..748b95023e 100644
--- a/apps/provider.c
+++ b/apps/provider.c
@@ -20,6 +20,10 @@
#include <openssl/core.h>
#include <openssl/core_dispatch.h>
+#ifdef __TANDEM
+# include <string.h> /* memset */
+#endif
+
DEFINE_STACK_OF_CSTRING()
typedef enum OPTION_choice {
diff --git a/apps/speed.c b/apps/speed.c
index 4bd42d4e42..017c5a280a 100644
--- a/apps/speed.c
+++ b/apps/speed.c
@@ -37,6 +37,12 @@
# include <unistd.h>
#endif
+#if defined(__TANDEM)
+# if defined(OPENSSL_TANDEM_FLOSS)
+# include <floss.h(floss_fork)>
+# endif
+#endif
+
#if defined(_WIN32)
# include <windows.h>
#endif
diff --git a/apps/version.c b/apps/version.c
index ebdd03e0fe..4a289faca0 100644
--- a/apps/version.c
+++ b/apps/version.c
@@ -134,3 +134,16 @@ opthelp:
end:
return ret;
}
+
+
+#if defined(__TANDEM) && defined(OPENSSL_VPROC)
+/*
+ * Define a VPROC function for the openssl program.
+ * This is used by platform version identification tools.
+ * Do not inline this procedure or make it static.
+ */
+# define OPENSSL_VPROC_STRING_(x) x##_OPENSSL
+# define OPENSSL_VPROC_STRING(x) OPENSSL_VPROC_STRING_(x)
+# define OPENSSL_VPROC_FUNC OPENSSL_VPROC_STRING(OPENSSL_VPROC)
+void OPENSSL_VPROC_FUNC(void) {}
+#endif