Skip to content
Snippets Groups Projects
Commit 189c2f49 authored by Daniel Stenberg's avatar Daniel Stenberg
Browse files

so there are at least two different strerror_r() versions and our brand

new configure script detects them and now this code acts according to what
API that was detected
parent f28389c8
No related branches found
No related tags found
No related merge requests found
......@@ -506,10 +506,17 @@ const char *Curl_strerror(struct connectdata *conn, int err)
if (err >= 0 && err < sys_nerr) {
/* These should be atomic and hopefully thread-safe */
#ifdef HAVE_STRERROR_R
#ifdef HAVE_POSIX_STRERROR_R
strerror_r(err, buf, max);
/* this may set errno to ERANGE if insufficient storage was supplied via
strerrbuf and buflen to contain the generated message string, or EINVAL
if the value of errnum is not a valid error number.*/
#else
/* HAVE_GLIBC_STRERROR_R */
char buffer[256];
char *msg = strerror_r(err, buffer, sizeof(buffer));
strncpy(buf, msg, max);
#endif
#else
strncpy(buf, strerror(err), max);
#endif
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment