summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorSebastian Huber <sebastian.huber@embedded-brains.de>2022-06-10 08:00:00 +0200
committerSebastian Huber <sebastian.huber@embedded-brains.de>2022-06-22 17:25:58 +0200
commitcdb5ac55c61ab1160cc4baff07308e93c168da52 (patch)
tree8972f4a5207c4115abe0cee06c48b25e2fba7fa6
parentwpa: Use CONFIG_ELOOP_KQUEUE (diff)
downloadrtems-libbsd-cdb5ac55c61ab1160cc4baff07308e93c168da52.tar.bz2
openssl: Do not use signals
-rw-r--r--freebsd/crypto/openssl/apps/ocsp.c2
-rw-r--r--freebsd/crypto/openssl/apps/openssl.c2
-rw-r--r--freebsd/crypto/openssl/apps/rtems-bsd-openssl-ocsp-data.h2
-rw-r--r--freebsd/crypto/openssl/crypto/ui/ui_openssl.c10
4 files changed, 13 insertions, 3 deletions
diff --git a/freebsd/crypto/openssl/apps/ocsp.c b/freebsd/crypto/openssl/apps/ocsp.c
index 7ff6a20c..dba8e6a9 100644
--- a/freebsd/crypto/openssl/apps/ocsp.c
+++ b/freebsd/crypto/openssl/apps/ocsp.c
@@ -58,7 +58,7 @@ NON_EMPTY_TRANSLATION_UNIT
#endif
# if !defined(NO_FORK) && !defined(OPENSSL_NO_SOCK) \
- && !defined(OPENSSL_NO_POSIX_IO)
+ && !defined(OPENSSL_NO_POSIX_IO) && !defined(__rtems__)
# define OCSP_DAEMON
# include <sys/types.h>
# include <sys/wait.h>
diff --git a/freebsd/crypto/openssl/apps/openssl.c b/freebsd/crypto/openssl/apps/openssl.c
index 31ec58d8..cdbb262b 100644
--- a/freebsd/crypto/openssl/apps/openssl.c
+++ b/freebsd/crypto/openssl/apps/openssl.c
@@ -89,9 +89,11 @@ static void calculate_columns(DISPLAY_COLUMNS *dc)
static int apps_startup(void)
{
+#ifndef __rtems__
#ifdef SIGPIPE
signal(SIGPIPE, SIG_IGN);
#endif
+#endif /* __rtems__ */
/* Set non-default library initialisation settings */
if (!OPENSSL_init_ssl(OPENSSL_INIT_ENGINE_ALL_BUILTIN
diff --git a/freebsd/crypto/openssl/apps/rtems-bsd-openssl-ocsp-data.h b/freebsd/crypto/openssl/apps/rtems-bsd-openssl-ocsp-data.h
index 2c2b926e..90043fb0 100644
--- a/freebsd/crypto/openssl/apps/rtems-bsd-openssl-ocsp-data.h
+++ b/freebsd/crypto/openssl/apps/rtems-bsd-openssl-ocsp-data.h
@@ -3,6 +3,4 @@
#include "rtems-bsd-openssl-data.h"
/* ocsp.c */
RTEMS_LINKER_RWSET_CONTENT(bsd_prog_openssl, static char *prog);
-RTEMS_LINKER_RWSET_CONTENT(bsd_prog_openssl, static int acfd);
RTEMS_LINKER_RWSET_CONTENT(bsd_prog_openssl, static int multi);
-RTEMS_LINKER_RWSET_CONTENT(bsd_prog_openssl, static int termsig);
diff --git a/freebsd/crypto/openssl/crypto/ui/ui_openssl.c b/freebsd/crypto/openssl/crypto/ui/ui_openssl.c
index 03596eee..6a040553 100644
--- a/freebsd/crypto/openssl/crypto/ui/ui_openssl.c
+++ b/freebsd/crypto/openssl/crypto/ui/ui_openssl.c
@@ -158,11 +158,13 @@ struct IOSB {
# endif
/* Define globals. They are protected by a lock */
+#ifndef __rtems__
# ifdef SIGACTION
static struct sigaction savsig[NX509_SIG];
# else
static void (*savsig[NX509_SIG]) (int);
# endif
+#endif /* __rtems__ */
# ifdef OPENSSL_SYS_VMS
static struct IOSB iosb;
@@ -185,7 +187,9 @@ static int is_a_tty;
/* Declare static functions */
# if !defined(OPENSSL_SYS_WINCE)
static int read_till_nl(FILE *);
+#ifndef __rtems__
static void recsig(int);
+#endif /* __rtems__ */
static void pushsig(void);
static void popsig(void);
# endif
@@ -588,6 +592,7 @@ static int close_console(UI *ui)
/* Internal functions to handle signals and act on them */
static void pushsig(void)
{
+#ifndef __rtems__
# ifndef OPENSSL_SYS_WIN32
int i;
# endif
@@ -630,10 +635,12 @@ static void pushsig(void)
# ifdef SIGWINCH
signal(SIGWINCH, SIG_DFL);
# endif
+#endif /* __rtems__ */
}
static void popsig(void)
{
+#ifndef __rtems__
# ifdef OPENSSL_SYS_WIN32
signal(SIGABRT, savsig[SIGABRT]);
signal(SIGFPE, savsig[SIGFPE]);
@@ -659,12 +666,15 @@ static void popsig(void)
# endif
}
# endif
+#endif /* __rtems__ */
}
+#ifndef __rtems__
static void recsig(int i)
{
intr_signal = i;
}
+#endif /* __rtems__ */
# endif
/* Internal functions specific for Windows */