[gsoap/f19: 2/2] Pad non-ipv6 struct gsoap to match ipv6 version

Mattias Ellert ellert at fedoraproject.org
Thu Oct 17 03:53:58 UTC 2013


commit 5269e5aed9e96c7eb5885cbb67fd142570ea6299
Author: Mattias Ellert <mattias.ellert at fysast.uu.se>
Date:   Thu Oct 17 05:07:57 2013 +0200

    Pad non-ipv6 struct gsoap to match ipv6 version

 gsoap-pad.patch |   33 +++++++++++++++++++++++++++++++++
 gsoap.spec      |   16 +++++++++++-----
 wsdl2h.1        |   10 +++++-----
 3 files changed, 49 insertions(+), 10 deletions(-)
---
diff --git a/gsoap-pad.patch b/gsoap-pad.patch
new file mode 100644
index 0000000..114800f
--- /dev/null
+++ b/gsoap-pad.patch
@@ -0,0 +1,33 @@
+diff -ur gsoap-2.8.orig/gsoap/samples/calc_vs2005/calc_vs2005/stdsoap2.h gsoap-2.8/gsoap/samples/calc_vs2005/calc_vs2005/stdsoap2.h
+--- gsoap-2.8.orig/gsoap/samples/calc_vs2005/calc_vs2005/stdsoap2.h	2013-08-26 01:10:06.000000000 +0200
++++ gsoap-2.8/gsoap/samples/calc_vs2005/calc_vs2005/stdsoap2.h	2013-10-16 09:29:02.181454071 +0200
+@@ -2130,6 +2130,7 @@
+   struct sockaddr_storage peer;	/* IPv6: set by soap_accept and by UDP recv */
+ #else
+   struct sockaddr_in peer;	/* IPv4: set by soap_connect/soap_accept and by UDP recv */
++  unsigned char pad[sizeof(struct sockaddr_storage) - sizeof(struct sockaddr_in)];
+ #endif
+ #endif
+   size_t peerlen;
+diff -ur gsoap-2.8.orig/gsoap/stdsoap2.h gsoap-2.8/gsoap/stdsoap2.h
+--- gsoap-2.8.orig/gsoap/stdsoap2.h	2013-08-26 01:10:07.000000000 +0200
++++ gsoap-2.8/gsoap/stdsoap2.h	2013-10-16 09:29:02.181454071 +0200
+@@ -2130,6 +2130,7 @@
+   struct sockaddr_storage peer;	/* IPv6: set by soap_accept and by UDP recv */
+ #else
+   struct sockaddr_in peer;	/* IPv4: set by soap_connect/soap_accept and by UDP recv */
++  unsigned char pad[sizeof(struct sockaddr_storage) - sizeof(struct sockaddr_in)];
+ #endif
+ #endif
+   size_t peerlen;
+diff -ur gsoap-2.8.orig/gsoap/VisualStudio2005/wsdl2h/wsdl2h/stdsoap2.h gsoap-2.8/gsoap/VisualStudio2005/wsdl2h/wsdl2h/stdsoap2.h
+--- gsoap-2.8.orig/gsoap/VisualStudio2005/wsdl2h/wsdl2h/stdsoap2.h	2013-08-26 01:10:07.000000000 +0200
++++ gsoap-2.8/gsoap/VisualStudio2005/wsdl2h/wsdl2h/stdsoap2.h	2013-10-16 09:29:02.181454071 +0200
+@@ -2130,6 +2130,7 @@
+   struct sockaddr_storage peer;	/* IPv6: set by soap_accept and by UDP recv */
+ #else
+   struct sockaddr_in peer;	/* IPv4: set by soap_connect/soap_accept and by UDP recv */
++  unsigned char pad[sizeof(struct sockaddr_storage) - sizeof(struct sockaddr_in)];
+ #endif
+ #endif
+   size_t peerlen;
diff --git a/gsoap.spec b/gsoap.spec
index cd780d4..b73e649 100644
--- a/gsoap.spec
+++ b/gsoap.spec
@@ -1,7 +1,7 @@
 Summary: Generator Tools for Coding SOAP/XML Web Services in C and C++
 Name: gsoap
 Version: 2.8.12
-Release: 3%{?dist}
+Release: 4%{?dist}
 # Bump the soversion when the new version is not backward compatiple
 %global soversion 3
 
@@ -26,6 +26,7 @@ Source1: soapcpp2.1
 Source2: wsdl2h.1
 Patch0: %{name}-libtool.patch
 Patch1: %{name}-pow.patch
+Patch2: %{name}-pad.patch
 BuildRoot: %(mktemp -ud %{_tmppath}/%{name}-%{version}-%{release}-XXXXXX)
 
 BuildRequires: flex
@@ -67,12 +68,15 @@ gSOAP documentation in html
 %prep
 %setup -q -n gsoap-2.8
 
-# enable use of libtool in configure.in and a few Makefile.am files
+# Enable use of libtool in configure.in and a few Makefile.am files
 %patch0 -p1
 
 # Missing -lm for pow function
 %patch1 -p1
 
+# Pad non-ipv6 struct gsoap to match ipv6 version
+%patch2 -p1
+
 # XML files non-executable
 find . -name "*.xml" -exec chmod a-x {} \;
 
@@ -283,14 +287,16 @@ make check
 
 %files doc
 %defattr(-,root,root,-)
-%doc gsoap/doc/*
-%doc README.txt NOTES.txt LICENSE.txt
+%doc README.txt NOTES.txt LICENSE.txt gsoap/doc/*
 
 %post -p /sbin/ldconfig
 
 %postun -p /sbin/ldconfig
 
 %changelog
+* Wed Oct 16 2013 Mattias Ellert <mattias.ellert at fysast.uu.se> - 2.8.12-4
+- Pad non-ipv6 struct gsoap to match ipv6 version
+
 * Sat Aug 03 2013 Fedora Release Engineering <rel-eng at lists.fedoraproject.org> - 2.8.12-3
 - Rebuilt for https://fedoraproject.org/wiki/Fedora_20_Mass_Rebuild
 
@@ -341,7 +347,7 @@ make check
 * Wed Feb 09 2011 Fedora Release Engineering <rel-eng at lists.fedoraproject.org> - 2.7.17-2
 - Rebuilt for https://fedoraproject.org/wiki/Fedora_15_Mass_Rebuild
 
-* Tue Jul 28 2010 Ivan Romanov <drizt at land.ru> - 2.7.17-1
+* Wed Jul 28 2010 Ivan Romanov <drizt at land.ru> - 2.7.17-1
 - Update to gsoap 2.7.17
 - Removed openssl patch, it fixed by upstream
 - Added gsoap-2.7-iostream.patch to fix using iostream oldstyle in examples
diff --git a/wsdl2h.1 b/wsdl2h.1
index 8fecaf3..6936eb0 100644
--- a/wsdl2h.1
+++ b/wsdl2h.1
@@ -24,7 +24,7 @@ Please see /usr/share/doc/gsoap/soapdoc2.html for details.
 .PP
 Converts a \fBWSDL\fR or \fBXSD\fR input file, or from an HTTP address,
 \fISOURCE\fR to a declaration file that can be parsed by
-\fBsoapcpp2\fR(1).  If no \fISOURCE\fR argument is specified, read
+\fBsoapcpp2\fR(1). If no \fISOURCE\fR argument is specified, read
 from standard input.
 .SH OPTIONS
 .TP
@@ -126,18 +126,18 @@ Generate typedef synonyms for structs and enums.
 Compatibility with 2.7.6e: Generate pointer-based arrays.
 .TP
 \fB\-z2\fR
-Compatibility with 2.7.7 to 2.7.15: qualify element/attribute references.
+Compatibility with 2.7.7 to 2.7.15: Qualify element/attribute references.
 .TP
 \fB\-z3\fR
-Compatibility with 2.7.16 to 2.8.7: qualify element/attribute references.
+Compatibility with 2.7.16 to 2.8.7: Qualify element/attribute references.
 .TP
 \fB\-z4\fR
-Compatibility up to 2.8.11: do not generate union structs in std::vector.
+Compatibility up to 2.8.11: Do not generate union structs in \fBstd::vector\fR.
 .TP
 \fB\-_\fR
 Do not generate _USCORE (replace with UNICODE _x005f).
 .SH SEE ALSO
-.BR soapcpp2 (1),
+.BR soapcpp2 (1).
 .SH AUTHOR
 This manual page was written by Thomas Wana <greuff at debian.org>,
 for the Debian project (but may be used by others).


More information about the scm-commits mailing list