From: Andy Polyakov Date: Fri, 27 May 2016 10:04:09 +0000 (+0200) Subject: crypto/o_str.c: add _GNU_SOURCE strerror_r case. X-Git-Tag: OpenSSL_1_1_0-pre6~669 X-Git-Url: https://git.librecmc.org/?a=commitdiff_plain;h=efdb2d6c797112e58e304d3e5300f169dbb16e95;p=oweals%2Fopenssl.git crypto/o_str.c: add _GNU_SOURCE strerror_r case. Reviewed-by: Matt Caswell --- diff --git a/crypto/o_str.c b/crypto/o_str.c index 4e2ef88e61..b0e7524820 100644 --- a/crypto/o_str.c +++ b/crypto/o_str.c @@ -263,7 +263,9 @@ int openssl_strerror_r(int errnum, char *buf, size_t buflen) { #if defined(_MSC_VER) && _MSC_VER>=1400 return !strerror_s(buf, buflen, errnum); -#elif (_POSIX_C_SOURCE >= 200112L || _XOPEN_SOURCE >= 600) && !_GNU_SOURCE +#elif defined(_GNU_SOURCE) + return strerror_r(errnum, buf, buflen) != NULL; +#elif (_POSIX_C_SOURCE >= 200112L || _XOPEN_SOURCE >= 600) /* * We can use "real" strerror_r. The OpenSSL version differs in that it * gives 1 on success and 0 on failure for consistency with other OpenSSL