1
0
Fork 0
mirror of https://gitlab.alpinelinux.org/alpine/aports.git synced 2025-07-23 03:05:48 +03:00
aports/community/gsoap/musl-fixes.patch
2023-02-24 03:20:18 +01:00

76 lines
3.8 KiB
Diff

diff --git a/gsoap/stdsoap2.c b/gsoap/stdsoap2.c
index 1ff4d96..d6362bb 100644
--- a/gsoap/stdsoap2.c
+++ b/gsoap/stdsoap2.c
@@ -5444,7 +5444,7 @@ tcp_gethostbyname(struct soap *soap, const char *addr, struct hostent *hostent,
hostent = NULL;
soap->errnum = h_errno;
}
-#elif (!defined(_GNU_SOURCE) || (!(~_GNU_SOURCE+1) && !defined(_POSIX_C_SOURCE) && !defined(_XOPEN_SOURCE)) || _POSIX_C_SOURCE >= 200112L || _XOPEN_SOURCE >= 600 || defined(__ANDROID__) || defined(FREEBSD) || defined(__FreeBSD__)) && !defined(SUN_OS) && defined(HAVE_GETHOSTBYNAME_R)
+#elif defined(HAVE_GETHOSTBYNAME_R)
while ((r = gethostbyname_r(addr, hostent, tmpbuf, tmplen, &hostent, &soap->errnum)) < 0)
{
if (tmpbuf != soap->tmpbuf)
@@ -5459,8 +5459,6 @@ tcp_gethostbyname(struct soap *soap, const char *addr, struct hostent *hostent,
if (!tmpbuf)
break;
}
-#elif defined(HAVE_GETHOSTBYNAME_R)
- hostent = gethostbyname_r(addr, hostent, tmpbuf, tmplen, &soap->errnum);
#elif defined(VXWORKS)
/* vxWorks compatible */
/* If the DNS resolver library resolvLib has been configured in the vxWorks
@@ -23093,7 +23091,7 @@ soap_strerror(struct soap *soap)
{
#ifndef WIN32
# ifdef HAVE_STRERROR_R
-# if !defined(_GNU_SOURCE) || (!(~_GNU_SOURCE+1) && ((!defined(_POSIX_C_SOURCE) && !defined(_XOPEN_SOURCE)) || (_POSIX_C_SOURCE >= 200112L || _XOPEN_SOURCE >= 600)))
+# if 1
err = strerror_r(err, soap->msgbuf, sizeof(soap->msgbuf)); /* XSI-compliant */
if (err != 0)
soap_strcpy(soap->msgbuf, sizeof(soap->msgbuf), "unknown error");
diff --git a/gsoap/stdsoap2.cpp b/gsoap/stdsoap2.cpp
index 1ff4d96..41b5038 100644
--- a/gsoap/stdsoap2.cpp
+++ b/gsoap/stdsoap2.cpp
@@ -5411,7 +5411,7 @@ tcp_gethostbyname(struct soap *soap, const char *addr, struct hostent *hostent,
{
#if (defined(_AIX43) || defined(TRU64) || defined(HP_UX)) && defined(HAVE_GETHOSTBYNAME_R)
struct hostent_data ht_data;
-#elif (!defined(_GNU_SOURCE) || (!(~_GNU_SOURCE+1) && !defined(_POSIX_C_SOURCE) && !defined(_XOPEN_SOURCE)) || _POSIX_C_SOURCE >= 200112L || _XOPEN_SOURCE >= 600 || defined(__ANDROID__) || defined(FREEBSD) || defined(__FreeBSD__)) && defined(HAVE_GETHOSTBYNAME_R)
+#elif defined(HAVE_GETHOSTBYNAME_R)
int r;
char *tmpbuf = soap->tmpbuf;
size_t tmplen = sizeof(soap->tmpbuf);
@@ -5444,7 +5444,7 @@ tcp_gethostbyname(struct soap *soap, const char *addr, struct hostent *hostent,
hostent = NULL;
soap->errnum = h_errno;
}
-#elif (!defined(_GNU_SOURCE) || (!(~_GNU_SOURCE+1) && !defined(_POSIX_C_SOURCE) && !defined(_XOPEN_SOURCE)) || _POSIX_C_SOURCE >= 200112L || _XOPEN_SOURCE >= 600 || defined(__ANDROID__) || defined(FREEBSD) || defined(__FreeBSD__)) && !defined(SUN_OS) && defined(HAVE_GETHOSTBYNAME_R)
+#elif defined(HAVE_GETHOSTBYNAME_R)
while ((r = gethostbyname_r(addr, hostent, tmpbuf, tmplen, &hostent, &soap->errnum)) < 0)
{
if (tmpbuf != soap->tmpbuf)
@@ -5459,8 +5459,6 @@ tcp_gethostbyname(struct soap *soap, const char *addr, struct hostent *hostent,
if (!tmpbuf)
break;
}
-#elif defined(HAVE_GETHOSTBYNAME_R)
- hostent = gethostbyname_r(addr, hostent, tmpbuf, tmplen, &soap->errnum);
#elif defined(VXWORKS)
/* vxWorks compatible */
/* If the DNS resolver library resolvLib has been configured in the vxWorks
@@ -23093,13 +23091,9 @@ soap_strerror(struct soap *soap)
{
#ifndef WIN32
# ifdef HAVE_STRERROR_R
-# if !defined(_GNU_SOURCE) || (!(~_GNU_SOURCE+1) && ((!defined(_POSIX_C_SOURCE) && !defined(_XOPEN_SOURCE)) || (_POSIX_C_SOURCE >= 200112L || _XOPEN_SOURCE >= 600)))
err = strerror_r(err, soap->msgbuf, sizeof(soap->msgbuf)); /* XSI-compliant */
if (err != 0)
soap_strcpy(soap->msgbuf, sizeof(soap->msgbuf), "unknown error");
-# else
- return strerror_r(err, soap->msgbuf, sizeof(soap->msgbuf)); /* GNU-specific */
-# endif
# else
return strerror(err);
# endif