aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorRichard Levitte <levitte@openssl.org>2016-12-16 03:50:40 +0100
committerRichard Levitte <levitte@openssl.org>2016-12-16 14:37:56 +0100
commit7d9533bfa2fe5a5bf2bb19ff6c70558f6caeb92d (patch)
treed333b754c1c26e30b866d52dc3d1f7ea79cbf98f
parent4e9954799aaf6a9012603ed35b9168f2001e668d (diff)
downloadopenssl-7d9533bfa2fe5a5bf2bb19ff6c70558f6caeb92d.tar.gz
HP-UX doesn't have hstrerror(), so make our own for that platform
Reviewed-by: Rich Salz <rsalz@openssl.org> (Merged from https://github.com/openssl/openssl/pull/2092) (cherry picked from commit 46766d003666da5f90346da7e6d09e109355f5c6)
-rw-r--r--crypto/bio/b_addr.c24
1 files changed, 24 insertions, 0 deletions
diff --git a/crypto/bio/b_addr.c b/crypto/bio/b_addr.c
index 29f92cf7c7..0f1900db9e 100644
--- a/crypto/bio/b_addr.c
+++ b/crypto/bio/b_addr.c
@@ -18,6 +18,30 @@
#include <internal/thread_once.h>
#include <ctype.h>
+#ifdef _HPUX_SOURCE
+static const char *ossl_hstrerror(int herr)
+{
+ switch (herr) {
+ case -1:
+ return strerror(errno);
+ case 0:
+ return "No error";
+ case HOST_NOT_FOUND:
+ return "Host not found";
+ case NO_DATA: /* NO_ADDRESS is a synonym */
+ return "No data";
+ case NO_RECOVERY:
+ return "Non recoverable error";
+ case TRY_AGAIN:
+ return "Try again";
+ default:
+ break;
+ }
+ return "unknown error";
+}
+# define hstrerror(e) ossl_hstrerror(e)
+#endif
+
CRYPTO_RWLOCK *bio_lookup_lock;
static CRYPTO_ONCE bio_lookup_init = CRYPTO_ONCE_STATIC_INIT;