1aa936243b
gsoap>=2.8.49 supports glibc 2.26.
42 lines
2.5 KiB
Diff
42 lines
2.5 KiB
Diff
--- gsoap/stdsoap2.c.orig
|
|
+++ gsoap/stdsoap2.c
|
|
@@ -4462,7 +4462,7 @@ tcp_gethost(struct soap *soap, const char *addr, struct in_addr *inaddr)
|
|
return soap->error = SOAP_EOM;
|
|
return SOAP_OK;
|
|
}
|
|
-#if defined(__GLIBC__) || (defined(HAVE_GETHOSTBYNAME_R) && (defined(FREEBSD) || defined(__FreeBSD__))) || defined(__ANDROID__)
|
|
+#if defined(LINUX) || (defined(HAVE_GETHOSTBYNAME_R) && (defined(FREEBSD) || defined(__FreeBSD__))) || defined(__ANDROID__)
|
|
if (gethostbyname_r(addr, &hostent, soap->buf, sizeof(soap->buf), &host, &soap->errnum) < 0)
|
|
host = NULL;
|
|
#elif defined(_AIX43) || ((defined(TRU64) || defined(HP_UX)) && defined(HAVE_GETHOSTBYNAME_R))
|
|
--- gsoap/stdsoap2.cpp.orig
|
|
+++ gsoap/stdsoap2.cpp
|
|
@@ -4462,7 +4462,7 @@ tcp_gethost(struct soap *soap, const char *addr, struct in_addr *inaddr)
|
|
return soap->error = SOAP_EOM;
|
|
return SOAP_OK;
|
|
}
|
|
-#if defined(__GLIBC__) || (defined(HAVE_GETHOSTBYNAME_R) && (defined(FREEBSD) || defined(__FreeBSD__))) || defined(__ANDROID__)
|
|
+#if defined(LINUX) || (defined(HAVE_GETHOSTBYNAME_R) && (defined(FREEBSD) || defined(__FreeBSD__))) || defined(__ANDROID__)
|
|
if (gethostbyname_r(addr, &hostent, soap->buf, sizeof(soap->buf), &host, &soap->errnum) < 0)
|
|
host = NULL;
|
|
#elif defined(_AIX43) || ((defined(TRU64) || defined(HP_UX)) && defined(HAVE_GETHOSTBYNAME_R))
|
|
@@ -19658,7 +19658,7 @@ soap_strerror(struct soap *soap)
|
|
{
|
|
#ifndef WIN32
|
|
# ifdef HAVE_STRERROR_R
|
|
-# if defined(_GNU_SOURCE) && !defined(__ANDROID__)
|
|
+# if defined(_GNU_SOURCE) && !defined(__ANDROID__) && defined(__GLIBC__)
|
|
return strerror_r(err, soap->msgbuf, sizeof(soap->msgbuf)); /* GNU-specific */
|
|
# else
|
|
strerror_r(err, soap->msgbuf, sizeof(soap->msgbuf)); /* XSI-compliant */
|
|
--- gsoap/stdsoap2.h.orig
|
|
+++ gsoap/stdsoap2.h
|
|
@@ -947,7 +947,7 @@ extern "C" {
|
|
# endif
|
|
#elif defined(SOCKLEN_T)
|
|
# define SOAP_SOCKLEN_T SOCKLEN_T
|
|
-#elif defined(__socklen_t_defined) || defined(_SOCKLEN_T) || defined(CYGWIN) || defined(FREEBSD) || defined(__FreeBSD__) || defined(OPENBSD) || defined(__QNX__) || defined(QNX) || defined(OS390) || defined(__ANDROID__) || defined(_XOPEN_SOURCE)
|
|
+#elif defined(__socklen_t_defined) || defined(_SOCKLEN_T) || defined(CYGWIN) || defined(FREEBSD) || defined(__FreeBSD__) || defined(OPENBSD) || defined(__QNX__) || defined(QNX) || defined(OS390) || defined(__ANDROID__) || defined(_XOPEN_SOURCE) || defined (LINUX)
|
|
# define SOAP_SOCKLEN_T socklen_t
|
|
#elif defined(IRIX) || defined(WIN32) || defined(__APPLE__) || defined(SUN_OS) || defined(OPENSERVER) || defined(TRU64) || defined(VXWORKS)
|
|
# define SOAP_SOCKLEN_T int
|