forked from pool/gsoap
moar patches
OBS-URL: https://build.opensuse.org/package/show/devel:libraries:c_c++/gsoap?expand=0&rev=46
This commit is contained in:
parent
7d26e4a07d
commit
8ace1c856c
@ -1,5 +1,6 @@
|
||||
From: Jan Engelhardt <jengelh@inai.de>
|
||||
Date: 2016-01-28 19:30:10.973606466 +0100
|
||||
References: http://sf.net/p/gsoap2/patches/156/
|
||||
|
||||
Every .c/.cpp file which is updated/created needs to be in
|
||||
BUILT_SOURCES.
|
||||
|
@ -1,4 +1,4 @@
|
||||
References: https://sourceforge.net/p/gsoap2/patches/124/attachment/gsoap-aliasing.patch
|
||||
References: https://sf.net/p/gsoap2/patches/124/
|
||||
|
||||
---
|
||||
gsoap/plugin/wsaapi.c | 2 +-
|
||||
|
@ -1,5 +1,6 @@
|
||||
From: Jan Engelhardt <jengelh@inai.de>
|
||||
Date: 2016-01-28 19:19:57.092815111 +0100
|
||||
References: http://sf.net/p/gsoap2/patches/157/
|
||||
|
||||
In file included from stdsoap2_ssl.c:60:0:
|
||||
stdsoap2_ssl.c: In function ‘soap_getgziphdr’:
|
||||
|
@ -1,3 +1,5 @@
|
||||
References: http://sf.net/p/gsoap2/bugs/1007/
|
||||
|
||||
---
|
||||
gsoap/stdsoap2.cpp | 17 +++++++++++++++--
|
||||
1 file changed, 15 insertions(+), 2 deletions(-)
|
||||
|
@ -1,4 +1,5 @@
|
||||
From: Jan Engelhardt <j.engelhardt@zarafa.com>
|
||||
References: http://sf.net/p/gsoap2/patches/158/
|
||||
|
||||
gsoap has a weird "protection": if content is compressed too well,
|
||||
it is considered evil and dropped.
|
||||
|
29
gsoap-no-tcpfastopen-fail.diff
Normal file
29
gsoap-no-tcpfastopen-fail.diff
Normal file
@ -0,0 +1,29 @@
|
||||
From: Folkert van Heusden <f.vanheusden@zarafa.com> / Jan Engelhardt <j.engelhardt@zarafa.com>
|
||||
References: http://sf.net/p/gsoap2/patches/159/
|
||||
|
||||
setsockopt TCP_FASTOPEN can fail with -ENOPROTOSUPPORT if the kernel
|
||||
can't do it, and then all of gsoap aborts :(
|
||||
Ignore return value, so that the zarafa-server still starts even
|
||||
in the absence of TCP_FASTOPEN.
|
||||
|
||||
---
|
||||
gsoap/stdsoap2.cpp | 6 +-----
|
||||
1 file changed, 1 insertion(+), 5 deletions(-)
|
||||
|
||||
Index: gsoap-2.8.22/gsoap/stdsoap2.cpp
|
||||
===================================================================
|
||||
--- gsoap-2.8.22.orig/gsoap/stdsoap2.cpp
|
||||
+++ gsoap-2.8.22/gsoap/stdsoap2.cpp
|
||||
@@ -5140,11 +5140,7 @@ soap_bind(struct soap *soap, const char
|
||||
}
|
||||
#endif
|
||||
#ifdef TCP_FASTOPEN
|
||||
- if (!(soap->omode & SOAP_IO_UDP) && setsockopt(soap->master, SOL_TCP, TCP_FASTOPEN, (char*)&set, sizeof(int)))
|
||||
- { soap->errnum = soap_socket_errno(soap->master);
|
||||
- soap_set_receiver_error(soap, tcp_error(soap), "setsockopt TCP_FASTOPEN failed in soap_bind()", SOAP_TCP_ERROR);
|
||||
- return SOAP_INVALID_SOCKET;
|
||||
- }
|
||||
+ if (!(soap->omode & SOAP_IO_UDP)) setsockopt(soap->master, SOL_TCP, TCP_FASTOPEN, (char*)&set, sizeof(int));
|
||||
#endif
|
||||
#endif
|
||||
#endif
|
58
gsoap-reset-error-code.diff
Normal file
58
gsoap-reset-error-code.diff
Normal file
@ -0,0 +1,58 @@
|
||||
References: https://sf.net/p/gsoap2/bugs/1025/
|
||||
|
||||
---
|
||||
gsoap/stdsoap2.cpp | 6 ++++++
|
||||
1 file changed, 6 insertions(+)
|
||||
|
||||
Index: gsoap-2.8.22/gsoap/stdsoap2.cpp
|
||||
===================================================================
|
||||
--- gsoap-2.8.22.orig/gsoap/stdsoap2.cpp
|
||||
+++ gsoap-2.8.22/gsoap/stdsoap2.cpp
|
||||
@@ -4074,6 +4074,7 @@ again:
|
||||
#ifdef WITH_IPV6
|
||||
if (res->ai_next)
|
||||
{ res = res->ai_next;
|
||||
+ soap->error = 0;
|
||||
goto again;
|
||||
}
|
||||
#endif
|
||||
@@ -4284,6 +4285,7 @@ again:
|
||||
#ifdef WITH_IPV6
|
||||
if (err == SOAP_ECONNREFUSED && res->ai_next)
|
||||
{ soap->fclosesocket(soap, sk);
|
||||
+ soap->error = 0;
|
||||
res = res->ai_next;
|
||||
goto again;
|
||||
}
|
||||
@@ -4309,6 +4311,7 @@ again:
|
||||
#ifdef WITH_IPV6
|
||||
if (res->ai_next)
|
||||
{ res = res->ai_next;
|
||||
+ soap->error = 0;
|
||||
goto again;
|
||||
}
|
||||
freeaddrinfo(ressave);
|
||||
@@ -4323,6 +4326,7 @@ again:
|
||||
#ifdef WITH_IPV6
|
||||
if (res->ai_next)
|
||||
{ res = res->ai_next;
|
||||
+ soap->error = 0;
|
||||
goto again;
|
||||
}
|
||||
freeaddrinfo(ressave);
|
||||
@@ -4341,6 +4345,7 @@ again:
|
||||
#ifdef WITH_IPV6
|
||||
if (res->ai_next)
|
||||
{ res = res->ai_next;
|
||||
+ soap->error = 0;
|
||||
goto again;
|
||||
}
|
||||
freeaddrinfo(ressave);
|
||||
@@ -4351,6 +4356,7 @@ again:
|
||||
#ifdef WITH_IPV6
|
||||
if (res->ai_next)
|
||||
{ res = res->ai_next;
|
||||
+ soap->error = 0;
|
||||
soap->fclosesocket(soap, sk);
|
||||
goto again;
|
||||
}
|
@ -35,6 +35,8 @@ Patch2: gsoap-02-typepuns.diff
|
||||
Patch3: gsoap-03-seqpoint.diff
|
||||
Patch4: gsoap-mindeflateratio.diff
|
||||
Patch5: gsoap-allocator.diff
|
||||
Patch6: gsoap-no-tcpfastopen-fail.diff
|
||||
Patch7: gsoap-reset-error-code.diff
|
||||
BuildRoot: %{_tmppath}/%{name}-%{version}-build
|
||||
BuildRequires: autoconf
|
||||
BuildRequires: automake
|
||||
@ -95,7 +97,7 @@ symlinks for libgsoap.
|
||||
%prep
|
||||
%setup -q
|
||||
cmp gsoap/stdsoap2.cpp gsoap/stdsoap2.c
|
||||
%patch -P 13 -P 0 -P 1 -P 2 -P 3 -P 4 -P 5 -p1
|
||||
%patch -P 13 -P 0 -P 1 -P 2 -P 3 -P 4 -P 5 -P 6 -P 7 -p1
|
||||
ln -fs stdsoap2.cpp stdsoap2.c
|
||||
|
||||
%build
|
||||
|
Loading…
Reference in New Issue
Block a user