Commit 6f74820c authored by Daniel Stenberg's avatar Daniel Stenberg
Browse files

if no strerror_r prototype is found, we provide our own to prevent picky

compilers to warn
parent af72f198
Loading
Loading
Loading
Loading
+11 −0
Original line number Diff line number Diff line
@@ -396,6 +396,17 @@ AC_DEFUN([CURL_CHECK_STRERROR_R],
	AC_MSG_RESULT(no))])])

  if test "x$strerror_r" = "xyes"; then

    dnl check if strerror_r is properly declared in the headers
    AC_CHECK_DECL(strerror_r, ,
     AC_DEFINE(HAVE_NO_STRERROR_R_DECL, 1, [we have no strerror_r() proto])
,
[#include <stdlib.h>
#include <stdio.h>
#include <string.h>
#include <errno.h>
])

    dnl determine if this strerror_r() is glibc or POSIX
    AC_MSG_CHECKING([for a glibc strerror_r API])
    AC_TRY_RUN([
+9 −0
Original line number Diff line number Diff line
@@ -32,6 +32,15 @@
#define _MPRINTF_REPLACE /* use our functions only */
#include <curl/mprintf.h>

#ifdef HAVE_NO_STRERROR_R_DECL
#ifdef HAVE_POSIX_STRERROR_R
/* seen on AIX 5100-02 gcc 2.9 */
extern int strerror_r(int errnum, char *strerrbuf, size_t buflen);
#else
extern char *strerror_r(int errnum, char *buf, size_t buflen);
#endif
#endif

const char *
curl_easy_strerror(CURLcode error)
{