[gsoap/el6] Update the IPv6 patch Add manpages from Debian

Mattias Ellert ellert at fedoraproject.org
Sun Aug 28 12:55:11 UTC 2011


commit 6644d908041469a0617924d648c7ad437e96b79f
Author: Mattias Ellert <mattias.ellert at fysast.uu.se>
Date:   Sun Aug 28 13:56:07 2011 +0200

    Update the IPv6 patch
    Add manpages from Debian

 gsoap-2.7-openssl.patch  |   17 -----
 gsoap-iostream.patch     |   28 ++++++++
 gsoap-ipv6.patch         |  153 +++++++++++++++++++++++++++++++++++++++++++---
 gsoap-libtool.patch      |  112 +++++++++++++++++++++++++++++++++
 gsoap-openssl.patch      |   60 ++++++++++++++++++
 gsoap.spec               |   88 +++++++++++---------------
 soapcpp2.1               |  104 +++++++++++++++++++++++++++++++
 use_libtool-2.7.16.patch |   64 -------------------
 wsdl2h.1                 |  129 ++++++++++++++++++++++++++++++++++++++
 9 files changed, 615 insertions(+), 140 deletions(-)
---
diff --git a/gsoap-iostream.patch b/gsoap-iostream.patch
new file mode 100644
index 0000000..1f94f8d
--- /dev/null
+++ b/gsoap-iostream.patch
@@ -0,0 +1,28 @@
+diff -up gsoap-2.7/gsoap/samples/factorytest/factorytest.cpp.iostream gsoap-2.7/gsoap/samples/factorytest/factorytest.cpp
+--- gsoap-2.7/gsoap/samples/factorytest/factorytest.cpp.iostream	2010-07-26 18:31:00.000000000 +0600
++++ gsoap-2.7/gsoap/samples/factorytest/factorytest.cpp	2010-07-26 18:31:22.000000000 +0600
+@@ -49,7 +49,9 @@ A commercial use license is available fr
+ #include "soapH.h"
+ #include "factorytest.nsmap"
+ 
+-#include <iostream.h>
++#include <iostream>
++
++using namespace std;
+ 
+ // default factory service endpoint:
+ const char *factory = "http://localhost:18085";
+diff -up gsoap-2.7/gsoap/samples/lu/luclient.cpp.iostream gsoap-2.7/gsoap/samples/lu/luclient.cpp
+--- gsoap-2.7/gsoap/samples/lu/luclient.cpp.iostream	2010-07-26 18:29:34.000000000 +0600
++++ gsoap-2.7/gsoap/samples/lu/luclient.cpp	2010-07-26 18:29:58.000000000 +0600
+@@ -32,7 +32,9 @@ A commercial use license is available fr
+ */
+ 
+ #include "soapH.h"
+-#include <iostream.h>
++#include <iostream>
++
++using namespace std;
+ 
+ const char luserver[] = "http://websrv.cs.fsu.edu/~engelen/luserver.cgi";
+ 
diff --git a/gsoap-ipv6.patch b/gsoap-ipv6.patch
index d9e214c..50ce838 100644
--- a/gsoap-ipv6.patch
+++ b/gsoap-ipv6.patch
@@ -1,9 +1,78 @@
+diff -ur gsoap-2.7.orig/gsoap/samples/calc_vs2005/calc_vs2005/stdsoap2.cpp gsoap-2.7/gsoap/samples/calc_vs2005/calc_vs2005/stdsoap2.cpp
+--- gsoap-2.7.orig/gsoap/samples/calc_vs2005/calc_vs2005/stdsoap2.cpp	2010-04-06 18:22:54.000000000 +0200
++++ gsoap-2.7/gsoap/samples/calc_vs2005/calc_vs2005/stdsoap2.cpp	2011-08-28 10:05:28.091810439 +0200
+@@ -4106,10 +4106,10 @@
+   struct addrinfo hints;
+   struct addrinfo res;
+   int err;
+-#ifdef IPV6_V6ONLY
++#ifdef WITH_NO_IPV6_V6ONLY
+   int unset = 0;
+-#ifdef SOL_IP
+-  int level = SOL_IP;
++#ifdef SOL_IPV6
++  int level = SOL_IPV6;
+ #else
+   int level = IPPROTO_IPV6;
+ #endif
+@@ -4211,7 +4211,14 @@
+ #endif
+ #endif
+ #ifdef WITH_IPV6
+-#ifdef IPV6_V6ONLY
++#ifdef WITH_IPV6_V6ONLY
++  if (setsockopt(soap->master, level, IPV6_V6ONLY, (char*)&set, sizeof(int)))
++  { soap->errnum = soap_socket_errno(soap->master);
++    soap_set_receiver_error(soap, tcp_error(soap), "setsockopt IPV6_V6ONLY failed in soap_bind()", SOAP_TCP_ERROR);
++    return SOAP_INVALID_SOCKET;
++  }
++#endif
++#ifdef WITH_NO_IPV6_V6ONLY
+   if (setsockopt(soap->master, level, IPV6_V6ONLY, (char*)&unset, sizeof(int)))
+   { soap->errnum = soap_socket_errno(soap->master);
+     soap_set_receiver_error(soap, tcp_error(soap), "setsockopt IPV6_V6ONLY failed in soap_bind()", SOAP_TCP_ERROR);
+diff -ur gsoap-2.7.orig/gsoap/samples/wsse/stdsoap2.c gsoap-2.7/gsoap/samples/wsse/stdsoap2.c
+--- gsoap-2.7.orig/gsoap/samples/wsse/stdsoap2.c	2010-04-06 18:23:12.000000000 +0200
++++ gsoap-2.7/gsoap/samples/wsse/stdsoap2.c	2011-08-28 10:05:28.094810400 +0200
+@@ -4106,10 +4106,10 @@
+   struct addrinfo hints;
+   struct addrinfo res;
+   int err;
+-#ifdef IPV6_V6ONLY
++#ifdef WITH_NO_IPV6_V6ONLY
+   int unset = 0;
+-#ifdef SOL_IP
+-  int level = SOL_IP;
++#ifdef SOL_IPV6
++  int level = SOL_IPV6;
+ #else
+   int level = IPPROTO_IPV6;
+ #endif
+@@ -4211,7 +4211,14 @@
+ #endif
+ #endif
+ #ifdef WITH_IPV6
+-#ifdef IPV6_V6ONLY
++#ifdef WITH_IPV6_V6ONLY
++  if (setsockopt(soap->master, level, IPV6_V6ONLY, (char*)&set, sizeof(int)))
++  { soap->errnum = soap_socket_errno(soap->master);
++    soap_set_receiver_error(soap, tcp_error(soap), "setsockopt IPV6_V6ONLY failed in soap_bind()", SOAP_TCP_ERROR);
++    return SOAP_INVALID_SOCKET;
++  }
++#endif
++#ifdef WITH_NO_IPV6_V6ONLY
+   if (setsockopt(soap->master, level, IPV6_V6ONLY, (char*)&unset, sizeof(int)))
+   { soap->errnum = soap_socket_errno(soap->master);
+     soap_set_receiver_error(soap, tcp_error(soap), "setsockopt IPV6_V6ONLY failed in soap_bind()", SOAP_TCP_ERROR);
 diff -ur gsoap-2.7.orig/gsoap/stdsoap2.c gsoap-2.7/gsoap/stdsoap2.c
---- gsoap-2.7.orig/gsoap/stdsoap2.c	2009-03-21 22:24:44.000000000 +0100
-+++ gsoap-2.7/gsoap/stdsoap2.c	2010-12-13 13:43:26.000000000 +0100
-@@ -4268,8 +4268,8 @@
+--- gsoap-2.7.orig/gsoap/stdsoap2.c	2010-04-06 18:23:14.000000000 +0200
++++ gsoap-2.7/gsoap/stdsoap2.c	2011-08-28 10:05:28.103810289 +0200
+@@ -4106,10 +4106,10 @@
+   struct addrinfo hints;
+   struct addrinfo res;
    int err;
- #ifdef IPV6_V6ONLY
+-#ifdef IPV6_V6ONLY
++#ifdef WITH_NO_IPV6_V6ONLY
    int unset = 0;
 -#ifdef SOL_IP
 -  int level = SOL_IP;
@@ -12,12 +81,64 @@ diff -ur gsoap-2.7.orig/gsoap/stdsoap2.c gsoap-2.7/gsoap/stdsoap2.c
  #else
    int level = IPPROTO_IPV6;
  #endif
+@@ -4211,7 +4211,14 @@
+ #endif
+ #endif
+ #ifdef WITH_IPV6
+-#ifdef IPV6_V6ONLY
++#ifdef WITH_IPV6_V6ONLY
++  if (setsockopt(soap->master, level, IPV6_V6ONLY, (char*)&set, sizeof(int)))
++  { soap->errnum = soap_socket_errno(soap->master);
++    soap_set_receiver_error(soap, tcp_error(soap), "setsockopt IPV6_V6ONLY failed in soap_bind()", SOAP_TCP_ERROR);
++    return SOAP_INVALID_SOCKET;
++  }
++#endif
++#ifdef WITH_NO_IPV6_V6ONLY
+   if (setsockopt(soap->master, level, IPV6_V6ONLY, (char*)&unset, sizeof(int)))
+   { soap->errnum = soap_socket_errno(soap->master);
+     soap_set_receiver_error(soap, tcp_error(soap), "setsockopt IPV6_V6ONLY failed in soap_bind()", SOAP_TCP_ERROR);
 diff -ur gsoap-2.7.orig/gsoap/stdsoap2.cpp gsoap-2.7/gsoap/stdsoap2.cpp
---- gsoap-2.7.orig/gsoap/stdsoap2.cpp	2009-03-21 22:24:44.000000000 +0100
-+++ gsoap-2.7/gsoap/stdsoap2.cpp	2010-12-13 14:45:31.000000000 +0100
-@@ -4268,8 +4268,8 @@
+--- gsoap-2.7.orig/gsoap/stdsoap2.cpp	2010-04-06 18:23:14.000000000 +0200
++++ gsoap-2.7/gsoap/stdsoap2.cpp	2011-08-28 10:05:28.108810225 +0200
+@@ -4106,10 +4106,10 @@
+   struct addrinfo hints;
+   struct addrinfo res;
+   int err;
+-#ifdef IPV6_V6ONLY
++#ifdef WITH_NO_IPV6_V6ONLY
+   int unset = 0;
+-#ifdef SOL_IP
+-  int level = SOL_IP;
++#ifdef SOL_IPV6
++  int level = SOL_IPV6;
+ #else
+   int level = IPPROTO_IPV6;
+ #endif
+@@ -4211,7 +4211,14 @@
+ #endif
+ #endif
+ #ifdef WITH_IPV6
+-#ifdef IPV6_V6ONLY
++#ifdef WITH_IPV6_V6ONLY
++  if (setsockopt(soap->master, level, IPV6_V6ONLY, (char*)&set, sizeof(int)))
++  { soap->errnum = soap_socket_errno(soap->master);
++    soap_set_receiver_error(soap, tcp_error(soap), "setsockopt IPV6_V6ONLY failed in soap_bind()", SOAP_TCP_ERROR);
++    return SOAP_INVALID_SOCKET;
++  }
++#endif
++#ifdef WITH_NO_IPV6_V6ONLY
+   if (setsockopt(soap->master, level, IPV6_V6ONLY, (char*)&unset, sizeof(int)))
+   { soap->errnum = soap_socket_errno(soap->master);
+     soap_set_receiver_error(soap, tcp_error(soap), "setsockopt IPV6_V6ONLY failed in soap_bind()", SOAP_TCP_ERROR);
+diff -ur gsoap-2.7.orig/gsoap/VisualStudio2005/wsdl2h/wsdl2h/stdsoap2.cpp gsoap-2.7/gsoap/VisualStudio2005/wsdl2h/wsdl2h/stdsoap2.cpp
+--- gsoap-2.7.orig/gsoap/VisualStudio2005/wsdl2h/wsdl2h/stdsoap2.cpp	2010-04-06 18:23:15.000000000 +0200
++++ gsoap-2.7/gsoap/VisualStudio2005/wsdl2h/wsdl2h/stdsoap2.cpp	2011-08-28 10:05:28.143809786 +0200
+@@ -4106,10 +4106,10 @@
+   struct addrinfo hints;
+   struct addrinfo res;
    int err;
- #ifdef IPV6_V6ONLY
+-#ifdef IPV6_V6ONLY
++#ifdef WITH_NO_IPV6_V6ONLY
    int unset = 0;
 -#ifdef SOL_IP
 -  int level = SOL_IP;
@@ -26,3 +147,19 @@ diff -ur gsoap-2.7.orig/gsoap/stdsoap2.cpp gsoap-2.7/gsoap/stdsoap2.cpp
  #else
    int level = IPPROTO_IPV6;
  #endif
+@@ -4211,7 +4211,14 @@
+ #endif
+ #endif
+ #ifdef WITH_IPV6
+-#ifdef IPV6_V6ONLY
++#ifdef WITH_IPV6_V6ONLY
++  if (setsockopt(soap->master, level, IPV6_V6ONLY, (char*)&set, sizeof(int)))
++  { soap->errnum = soap_socket_errno(soap->master);
++    soap_set_receiver_error(soap, tcp_error(soap), "setsockopt IPV6_V6ONLY failed in soap_bind()", SOAP_TCP_ERROR);
++    return SOAP_INVALID_SOCKET;
++  }
++#endif
++#ifdef WITH_NO_IPV6_V6ONLY
+   if (setsockopt(soap->master, level, IPV6_V6ONLY, (char*)&unset, sizeof(int)))
+   { soap->errnum = soap_socket_errno(soap->master);
+     soap_set_receiver_error(soap, tcp_error(soap), "setsockopt IPV6_V6ONLY failed in soap_bind()", SOAP_TCP_ERROR);
diff --git a/gsoap-libtool.patch b/gsoap-libtool.patch
new file mode 100644
index 0000000..9780dab
--- /dev/null
+++ b/gsoap-libtool.patch
@@ -0,0 +1,112 @@
+diff -ur gsoap-2.7.orig/configure.in gsoap-2.7/configure.in
+--- gsoap-2.7.orig/configure.in	2010-05-09 20:09:24.000000000 +0200
++++ gsoap-2.7/configure.in	2011-08-28 08:09:19.477930098 +0200
+@@ -15,8 +15,7 @@
+ AM_PROG_LEX
+ AC_PROG_YACC
+ AC_PROG_CPP
+-AC_PROG_RANLIB
+-#AC_PROG_LIBTOOL
++AM_PROG_LIBTOOL
+ AC_PROG_LN_S
+ AC_PROG_AWK
+ AC_PROG_INSTALL
+@@ -159,12 +158,12 @@
+   AC_MSG_RESULT(no)
+   WSDL2H_EXTRA_FLAGS="-DWITH_OPENSSL -DWITH_GZIP"
+   WSDL2H_EXTRA_LIBS="-lssl -lcrypto -lz"
+-  WSDL2H_SOAP_CPP_LIB="libgsoapssl++.a"
++  WSDL2H_SOAP_CPP_LIB="libgsoapssl++.la"
+ else
+   AC_MSG_RESULT(yes)
+   WSDL2H_EXTRA_FLAGS=
+   WSDL2H_EXTRA_LIBS=
+-  WSDL2H_SOAP_CPP_LIB="libgsoap++.a"
++  WSDL2H_SOAP_CPP_LIB="libgsoap++.la"
+ fi
+ AC_SUBST(WSDL2H_EXTRA_FLAGS)
+ AC_SUBST(WSDL2H_EXTRA_LIBS)
+diff -ur gsoap-2.7.orig/gsoap/Makefile.am gsoap-2.7/gsoap/Makefile.am
+--- gsoap-2.7.orig/gsoap/Makefile.am	2010-05-09 20:09:33.000000000 +0200
++++ gsoap-2.7/gsoap/Makefile.am	2011-08-28 08:14:24.920111548 +0200
+@@ -31,20 +31,20 @@
+ stdsoap2_ssl_cpp.cpp: stdsoap2.cpp
+ 	$(LN_S) -f $(srcdir)/stdsoap2.cpp stdsoap2_ssl_cpp.cpp
+ 
+-lib_LIBRARIES = libgsoap.a libgsoap++.a libgsoapck.a libgsoapck++.a libgsoapssl.a libgsoapssl++.a
++lib_LTLIBRARIES = libgsoap.la libgsoap++.la libgsoapck.la libgsoapck++.la libgsoapssl.la libgsoapssl++.la
+ 
+-libgsoap_a_SOURCES = stdsoap2.c
+-libgsoap_a_CFLAGS = $(SOAPCPP2_DEBUG) $(SOAPCPP2_NONAMESPACES) -D$(platform)
+-libgsoap___a_SOURCES = stdsoap2_cpp.cpp
+-libgsoap___a_CXXFLAGS = $(SOAPCPP2_DEBUG) $(SOAPCPP2_NONAMESPACES) -D$(platform)
+-libgsoapck_a_SOURCES = stdsoap2_ck.c
+-libgsoapck_a_CFLAGS = $(SOAPCPP2_DEBUG) $(SOAPCPP2_NONAMESPACES) -D$(platform) -DWITH_COOKIES
+-libgsoapck___a_SOURCES = stdsoap2_ck_cpp.cpp
+-libgsoapck___a_CXXFLAGS = $(SOAPCPP2_DEBUG) $(SOAPCPP2_NONAMESPACES) -D$(platform) -DWITH_COOKIES
+-libgsoapssl_a_SOURCES = stdsoap2_ssl.c
+-libgsoapssl_a_CFLAGS = $(SOAPCPP2_DEBUG) $(SOAPCPP2_NONAMESPACES) -D$(platform) -DWITH_OPENSSL -DWITH_DOM -DWITH_GZIP
+-libgsoapssl___a_SOURCES = stdsoap2_ssl_cpp.cpp
+-libgsoapssl___a_CXXFLAGS = $(SOAPCPP2_DEBUG) $(SOAPCPP2_NONAMESPACES) -D$(platform) -DWITH_OPENSSL -DWITH_DOM -DWITH_GZIP
++libgsoap_la_SOURCES = stdsoap2.c
++libgsoap_la_CFLAGS = $(SOAPCPP2_DEBUG) $(SOAPCPP2_NONAMESPACES) -D$(platform)
++libgsoap___la_SOURCES = stdsoap2_cpp.cpp
++libgsoap___la_CXXFLAGS = $(SOAPCPP2_DEBUG) $(SOAPCPP2_NONAMESPACES) -D$(platform)
++libgsoapck_la_SOURCES = stdsoap2_ck.c
++libgsoapck_la_CFLAGS = $(SOAPCPP2_DEBUG) $(SOAPCPP2_NONAMESPACES) -D$(platform) -DWITH_COOKIES
++libgsoapck___la_SOURCES = stdsoap2_ck_cpp.cpp
++libgsoapck___la_CXXFLAGS = $(SOAPCPP2_DEBUG) $(SOAPCPP2_NONAMESPACES) -D$(platform) -DWITH_COOKIES
++libgsoapssl_la_SOURCES = stdsoap2_ssl.c
++libgsoapssl_la_CFLAGS = $(SOAPCPP2_DEBUG) $(SOAPCPP2_NONAMESPACES) -D$(platform) -DWITH_OPENSSL -DWITH_DOM -DWITH_GZIP
++libgsoapssl___la_SOURCES = stdsoap2_ssl_cpp.cpp
++libgsoapssl___la_CXXFLAGS = $(SOAPCPP2_DEBUG) $(SOAPCPP2_NONAMESPACES) -D$(platform) -DWITH_OPENSSL -DWITH_DOM -DWITH_GZIP
+ 
+ BUILT_SOURCES = stdsoap2_cpp.cpp $(lib_LIBRARIES)
+ 
+diff -ur gsoap-2.7.orig/gsoap/samples/autotest/Makefile.am gsoap-2.7/gsoap/samples/autotest/Makefile.am
+--- gsoap-2.7.orig/gsoap/samples/autotest/Makefile.am	2010-05-09 20:09:52.000000000 +0200
++++ gsoap-2.7/gsoap/samples/autotest/Makefile.am	2011-08-28 08:11:01.642652864 +0200
+@@ -14,7 +14,7 @@
+ WSDLINPUT=$(srcdir)/examples.wsdl
+ SOAPHEADER=$(srcdir)/examples.h
+ SOAP_CPP_SRC=soapC.cpp soapServer.cpp
+-SOAP_CPP_LIB=$(top_builddir)/gsoap/libgsoap++.a
++SOAP_CPP_LIB=$(top_builddir)/gsoap/libgsoap++.la
+ 
+ $(SOAP_CPP_SRC) : $(WSDLINPUT)
+ 	$(WSDL) $(WSDL_FLAGS) $(WSDLINPUT)
+diff -ur gsoap-2.7.orig/gsoap/samples/databinding/Makefile.am gsoap-2.7/gsoap/samples/databinding/Makefile.am
+--- gsoap-2.7.orig/gsoap/samples/databinding/Makefile.am	2010-05-09 20:09:58.000000000 +0200
++++ gsoap-2.7/gsoap/samples/databinding/Makefile.am	2011-08-28 08:11:01.642652864 +0200
+@@ -14,7 +14,7 @@
+ WSDLINPUT=$(srcdir)/address.xsd
+ SOAPHEADER=$(srcdir)/address.h
+ SOAP_CPP_SRC=addressC.cpp
+-SOAP_CPP_LIB=$(top_builddir)/gsoap/libgsoap++.a
++SOAP_CPP_LIB=$(top_builddir)/gsoap/libgsoap++.la
+ 
+ $(SOAP_CPP_SRC) : $(WSDLINPUT)
+ 	$(WSDL) $(WSDL_FLAGS) $(WSDLINPUT)
+diff -ur gsoap-2.7.orig/gsoap/samples/Makefile.defines gsoap-2.7/gsoap/samples/Makefile.defines
+--- gsoap-2.7.orig/gsoap/samples/Makefile.defines	2010-05-09 20:10:04.000000000 +0200
++++ gsoap-2.7/gsoap/samples/Makefile.defines	2011-08-28 08:12:59.014185520 +0200
+@@ -15,13 +15,13 @@
+ SOAP_C_CORE=soapC.c
+ SOAP_C_CLIENT=soapClient.c $(SOAP_C_CORE)
+ SOAP_C_SERVER=soapServer.c $(SOAP_C_CORE)
+-SOAP_C_LIB=$(top_builddir)/gsoap/libgsoap.a
+-SOAP_C_LIB_CK=$(top_builddir)/gsoap/libgsoapck.a
+-SOAP_C_LIB_SSL=$(top_builddir)/gsoap/libgsoapssl.a
++SOAP_C_LIB=$(top_builddir)/gsoap/libgsoap.la
++SOAP_C_LIB_CK=$(top_builddir)/gsoap/libgsoapck.la
++SOAP_C_LIB_SSL=$(top_builddir)/gsoap/libgsoapssl.la
+ 
+ SOAP_CPP_CORE=soapC.cpp
+ SOAP_CPP_CLIENT=soapClient.cpp $(SOAP_CPP_CORE)
+ SOAP_CPP_SERVER=soapServer.cpp $(SOAP_CPP_CORE)
+-SOAP_CPP_LIB=$(top_builddir)/gsoap/libgsoap++.a
+-SOAP_CPP_LIB_CK=$(top_builddir)/gsoap/libgsoapck++.a
+-SOAP_CPP_LIB_SSL=$(top_builddir)/gsoap/libgsoapssl++.a
++SOAP_CPP_LIB=$(top_builddir)/gsoap/libgsoap++.la
++SOAP_CPP_LIB_CK=$(top_builddir)/gsoap/libgsoapck++.la
++SOAP_CPP_LIB_SSL=$(top_builddir)/gsoap/libgsoapssl++.la
diff --git a/gsoap-openssl.patch b/gsoap-openssl.patch
new file mode 100644
index 0000000..0e3bae1
--- /dev/null
+++ b/gsoap-openssl.patch
@@ -0,0 +1,60 @@
+diff -ur gsoap-2.7.orig/gsoap/samples/calc_vs2005/calc_vs2005/stdsoap2.cpp gsoap-2.7/gsoap/samples/calc_vs2005/calc_vs2005/stdsoap2.cpp
+--- gsoap-2.7.orig/gsoap/samples/calc_vs2005/calc_vs2005/stdsoap2.cpp	2010-04-06 18:22:54.000000000 +0200
++++ gsoap-2.7/gsoap/samples/calc_vs2005/calc_vs2005/stdsoap2.cpp	2011-08-28 11:00:40.860395132 +0200
+@@ -3998,7 +3998,7 @@
+           { X509_EXTENSION *ext = X509_get_ext(peer, i);
+             const char *ext_str = OBJ_nid2sn(OBJ_obj2nid(X509_EXTENSION_get_object(ext)));
+             if (ext_str && !strcmp(ext_str, "subjectAltName"))
+-            { X509V3_EXT_METHOD *meth = X509V3_EXT_get(ext);
++            { X509V3_EXT_METHOD *meth = (X509V3_EXT_METHOD*)X509V3_EXT_get(ext);
+               void *ext_data;
+ #if (OPENSSL_VERSION_NUMBER >= 0x0090800fL)
+               const unsigned char *data;
+diff -ur gsoap-2.7.orig/gsoap/samples/wsse/stdsoap2.c gsoap-2.7/gsoap/samples/wsse/stdsoap2.c
+--- gsoap-2.7.orig/gsoap/samples/wsse/stdsoap2.c	2010-04-06 18:23:12.000000000 +0200
++++ gsoap-2.7/gsoap/samples/wsse/stdsoap2.c	2011-08-28 11:00:40.860395132 +0200
+@@ -3998,7 +3998,7 @@
+           { X509_EXTENSION *ext = X509_get_ext(peer, i);
+             const char *ext_str = OBJ_nid2sn(OBJ_obj2nid(X509_EXTENSION_get_object(ext)));
+             if (ext_str && !strcmp(ext_str, "subjectAltName"))
+-            { X509V3_EXT_METHOD *meth = X509V3_EXT_get(ext);
++            { X509V3_EXT_METHOD *meth = (X509V3_EXT_METHOD*)X509V3_EXT_get(ext);
+               void *ext_data;
+ #if (OPENSSL_VERSION_NUMBER >= 0x0090800fL)
+               const unsigned char *data;
+diff -ur gsoap-2.7.orig/gsoap/stdsoap2.c gsoap-2.7/gsoap/stdsoap2.c
+--- gsoap-2.7.orig/gsoap/stdsoap2.c	2010-04-06 18:23:14.000000000 +0200
++++ gsoap-2.7/gsoap/stdsoap2.c	2011-08-28 11:00:40.860395132 +0200
+@@ -3998,7 +3998,7 @@
+           { X509_EXTENSION *ext = X509_get_ext(peer, i);
+             const char *ext_str = OBJ_nid2sn(OBJ_obj2nid(X509_EXTENSION_get_object(ext)));
+             if (ext_str && !strcmp(ext_str, "subjectAltName"))
+-            { X509V3_EXT_METHOD *meth = X509V3_EXT_get(ext);
++            { X509V3_EXT_METHOD *meth = (X509V3_EXT_METHOD*)X509V3_EXT_get(ext);
+               void *ext_data;
+ #if (OPENSSL_VERSION_NUMBER >= 0x0090800fL)
+               const unsigned char *data;
+diff -ur gsoap-2.7.orig/gsoap/stdsoap2.cpp gsoap-2.7/gsoap/stdsoap2.cpp
+--- gsoap-2.7.orig/gsoap/stdsoap2.cpp	2010-04-06 18:23:14.000000000 +0200
++++ gsoap-2.7/gsoap/stdsoap2.cpp	2011-08-28 11:00:40.860395132 +0200
+@@ -3998,7 +3998,7 @@
+           { X509_EXTENSION *ext = X509_get_ext(peer, i);
+             const char *ext_str = OBJ_nid2sn(OBJ_obj2nid(X509_EXTENSION_get_object(ext)));
+             if (ext_str && !strcmp(ext_str, "subjectAltName"))
+-            { X509V3_EXT_METHOD *meth = X509V3_EXT_get(ext);
++            { X509V3_EXT_METHOD *meth = (X509V3_EXT_METHOD*)X509V3_EXT_get(ext);
+               void *ext_data;
+ #if (OPENSSL_VERSION_NUMBER >= 0x0090800fL)
+               const unsigned char *data;
+diff -ur gsoap-2.7.orig/gsoap/VisualStudio2005/wsdl2h/wsdl2h/stdsoap2.cpp gsoap-2.7/gsoap/VisualStudio2005/wsdl2h/wsdl2h/stdsoap2.cpp
+--- gsoap-2.7.orig/gsoap/VisualStudio2005/wsdl2h/wsdl2h/stdsoap2.cpp	2010-04-06 18:23:15.000000000 +0200
++++ gsoap-2.7/gsoap/VisualStudio2005/wsdl2h/wsdl2h/stdsoap2.cpp	2011-08-28 11:00:40.860395132 +0200
+@@ -3998,7 +3998,7 @@
+           { X509_EXTENSION *ext = X509_get_ext(peer, i);
+             const char *ext_str = OBJ_nid2sn(OBJ_obj2nid(X509_EXTENSION_get_object(ext)));
+             if (ext_str && !strcmp(ext_str, "subjectAltName"))
+-            { X509V3_EXT_METHOD *meth = X509V3_EXT_get(ext);
++            { X509V3_EXT_METHOD *meth = (X509V3_EXT_METHOD*)X509V3_EXT_get(ext);
+               void *ext_data;
+ #if (OPENSSL_VERSION_NUMBER >= 0x0090800fL)
+               const unsigned char *data;
diff --git a/gsoap.spec b/gsoap.spec
index 05eb085..7cf36fe 100644
--- a/gsoap.spec
+++ b/gsoap.spec
@@ -1,14 +1,17 @@
 Summary: Generator Tools for Coding SOAP/XML Web Services in C and C++
 Name: gsoap
 Version: 2.7.16
-Release: 2%{?dist}
+Release: 3%{?dist}
 License: GPLv2+
 Group: Development/Tools
 URL: http://gsoap2.sourceforge.net
 Source0: http://downloads.sourceforge.net/gsoap2/gsoap_2.7.16.zip
-Patch0: use_libtool-2.7.16.patch
-Patch2: gsoap-2.7-openssl.patch
-Patch3: gsoap-ipv6.patch
+Source1: soapcpp2.1
+Source2: wsdl2h.1
+Patch0: %{name}-libtool.patch
+Patch1: %{name}-ipv6.patch
+Patch2: %{name}-iostream.patch
+Patch3: %{name}-openssl.patch
 BuildRoot: %(mktemp -ud %{_tmppath}/%{name}-%{version}-%{release}-XXXXXX)
 
 BuildRequires: flex
@@ -22,41 +25,43 @@ BuildRequires: libtool
 
 Requires: openssl
 
-
 %description
 The gSOAP Web services development toolkit offers an XML to C/C++
 language binding to ease the development of SOAP/XML Web services in C
 and C/C++.
 
-
 %package devel
 Summary: Devel libraries and headers for linking with gSOAP generated stubs
 Group: Development/System
 Requires: %name = %version-%release
 Requires: pkgconfig
 
-
 %description devel
 gSOAP libraries, headers and generators for linking with and creating
 gSOAP generated stubs
 
-
 %prep
 %setup -q -n gsoap-2.7
 
 # enable use of libtool in configure.in and a few Makefile.am files
 %patch0 -p1
-
+%patch1 -p1
 %patch2 -p1
-
 %patch3 -p1
 
-# a number of ~ files are distribute, but we do not want them
-find . -name "*~" -exec rm {} \;
+# XML files non-executable
+find . -name "*.xml" -exec chmod a-x {} \;
 
 # we want all txt files to have unix end-of-line encoding
 dos2unix README.txt LICENSE.txt NOTES.txt
 
+# remove .DS_Stores
+rm -rf gsoap/doc/.DS_Store
+rm -rf gsoap/doc/wsse/html/.DS_Store
+
+# remove stuff with gsoap license only - not GPL
+rm -rf gsoap/extras gsoap/mod_gsoap gsoap/Symbian
+sed 's!$(srcdir)/extras/\*!!' -i gsoap/Makefile.am
 
 %build
 # patches change autoconf and automake files, so we must reconfigure
@@ -67,40 +72,26 @@ sed 's/Cflags:/& -DWITH_IPV6/' -i gsoap*.pc.in
 CFLAGS="-DWITH_IPV6 %{optflags}"
 CXXFLAGS="-DWITH_IPV6 %{optflags}"
 
-%configure --disable-static --prefix=/usr
+%configure --disable-static --prefix=/usr --enable-samples
 
 # dependencies are not declared properly
 #make %{?_smp_mflags}
 make
 
-# during the build a number of files that we should not distribute are
-# created in soapcpp2/samples/ (a doc directory), we must remove them
-#find soapcpp2/samples/ -name ".deps" -prune -exec rm -rf {} \;
-
-# we do not want to bother distributing samples for Windows or OS X
-#rm -rf soapcpp2/samples/magic_VC
-#rm -rf soapcpp2/samples/quote_VC
-#rm -rf soapcpp2/samples/quote_MAC_ProjBuild
-
-# samples do not need to be executable by default
-#chmod a-x soapcpp2/samples/ssl/root.sh
-#chmod a-x soapcpp2/samples/ssl/cacerts.pem
-
-
 %install
 rm -rf %{buildroot}
 make install DESTDIR=%{buildroot}
 rm -f %{buildroot}/%_libdir/*.la
 
+mkdir -p %{buildroot}/%_mandir/man1
+install -m 644 -p %{SOURCE1} %{SOURCE2} %{buildroot}/%_mandir/man1
 
 %clean
 rm -rf %{buildroot}
 
-
 %check
 make check
 
-
 %files
 %defattr(-,root,root,-)
 %doc README.txt NOTES.txt LICENSE.txt
@@ -117,12 +108,13 @@ make check
 %_libdir/libgsoapssl.so.0.0.0
 %_libdir/libgsoapssl++.so.0.0.0
 
-
 %files devel
 %defattr(-,root,root,-)
 %doc README.txt NOTES.txt LICENSE.txt
 %_bindir/soapcpp2
 %_bindir/wsdl2h
+%_mandir/man1/soapcpp2.1*
+%_mandir/man1/wsdl2h.1*
 %_libdir/libgsoapck.so
 %_libdir/libgsoapck++.so
 %_libdir/libgsoap.so
@@ -163,8 +155,6 @@ make check
 %_datadir/gsoap/import/xmlmime5.h
 %_datadir/gsoap/import/xmlmime.h
 %_datadir/gsoap/import/xop.h
-%_datadir/gsoap/import/stdstring.h
-%_datadir/gsoap/import/xsd.h
 %dir %_datadir/gsoap/WS
 %_datadir/gsoap/WS/README.txt
 %_datadir/gsoap/WS/WS-Addressing.xsd
@@ -190,17 +180,6 @@ make check
 %_datadir/gsoap/custom/struct_timeval.h
 %_datadir/gsoap/custom/struct_tm.c
 %_datadir/gsoap/custom/struct_tm.h
-%_datadir/gsoap/custom/duration.c
-%_datadir/gsoap/custom/duration.h
-%dir %_datadir/gsoap/extras
-%_datadir/gsoap/extras/README.txt
-%_datadir/gsoap/extras/ckdb.c
-%_datadir/gsoap/extras/ckdb.h
-%_datadir/gsoap/extras/ckdbtest.c
-%_datadir/gsoap/extras/ckdbtest.h
-%_datadir/gsoap/extras/fault.cpp
-%_datadir/gsoap/extras/logging.cpp
-%_datadir/gsoap/extras/soapdefs.h
 %dir %_datadir/gsoap/plugin
 %_datadir/gsoap/plugin/README.txt
 %_datadir/gsoap/plugin/cacerts.c
@@ -237,11 +216,6 @@ make check
 %_datadir/gsoap/plugin/wsse2api.h
 %_datadir/gsoap/plugin/wsseapi.c
 %_datadir/gsoap/plugin/wsseapi.h
-%_datadir/gsoap/plugin/wsseapi.cpp
-%_datadir/gsoap/plugin/httpposttest.c
-%_datadir/gsoap/plugin/httpposttest.h
-%_datadir/gsoap/plugin/wsrmapi.c
-%_datadir/gsoap/plugin/wsrmapi.h
 %_libdir/pkgconfig/gsoapck.pc
 %_libdir/pkgconfig/gsoapck++.pc
 %_libdir/pkgconfig/gsoap.pc
@@ -257,15 +231,27 @@ make check
 %_datadir/gsoap/import/wsrm.h
 %_datadir/gsoap/import/wsrm4.h
 %_datadir/gsoap/import/wsrx.h
-
+# Additions in 2.7.13-1
+%_datadir/gsoap/import/stdstring.h
+%_datadir/gsoap/import/xsd.h
+%_datadir/gsoap/plugin/wsseapi.cpp
+# Additions in 2.7.16-1
+%_datadir/gsoap/custom/duration.c
+%_datadir/gsoap/custom/duration.h
+%_datadir/gsoap/plugin/httpposttest.c
+%_datadir/gsoap/plugin/httpposttest.h
+%_datadir/gsoap/plugin/wsrmapi.c
+%_datadir/gsoap/plugin/wsrmapi.h
 
 %post -p /sbin/ldconfig
 
-
 %postun -p /sbin/ldconfig
 
-
 %changelog
+* Sun Aug 28 2011 Mattias Ellert <mattias.ellert at fysast.uu.se> - 2.7.16-3
+- Update the IPv6 patch
+- Add manpages from Debian
+
 * Mon Dec 13 2010 Mattias Ellert <mattias.ellert at fysast.uu.se> - 2.7.16-2
 - Enable IPv6 support
 
diff --git a/soapcpp2.1 b/soapcpp2.1
new file mode 100644
index 0000000..f324625
--- /dev/null
+++ b/soapcpp2.1
@@ -0,0 +1,104 @@
+.\"                                      Hey, EMACS: -*- nroff -*-
+.\" First parameter, NAME, should be all caps
+.\" Second parameter, SECTION, should be 1-8, maybe w/ subsection
+.\" other parameters are allowed: see man(7), man(1)
+.TH SOAPCPP2 1 "Juni 27, 2003"
+.\" Please adjust this date whenever revising the manpage.
+.\"
+.\" Some roff macros, for reference:
+.\" .nh        disable hyphenation
+.\" .hy        enable hyphenation
+.\" .ad l      left justify
+.\" .ad b      justify to both left and right margins
+.\" .nf        disable filling
+.\" .fi        enable filling
+.\" .br        insert line break
+.\" .sp <n>    insert n+1 empty lines
+.\" for manpage-specific macros, see man(7)
+.SH NAME
+soapcpp2 \- the gSOAP Stub and Skeleton Compiler for C and C++
+.SH SYNOPSIS
+\fBsoapcpp2\fR [\fIOPTIONS\fR] \fIINPUT\fR
+.SH DESCRIPTION
+Please see /usr/share/doc/gsoap/soapdoc2.html for details.
+.PP
+Create stubs and client and server code from input \fIINPUT\fR or
+standard input if \fIINPUT\fR is not specified.
+.SH OPTIONS
+.TP
+\fB\-1\fR
+Generate SOAP 1.1 bindings.
+.TP
+\fB\-2\fR
+Generate SOAP 1.2 bindings.
+.TP
+\fB\-C\fR
+Generate client-side code only.
+.TP
+\fB\-S\fR
+Generate server-side code only.
+.TP
+\fB\-T\fR
+Generate server-side auto-test code.
+.TP
+\fB\-L\fR
+Do not generate \fBsoapClientLib\fR/\fBsoapServerLib\fR.
+.TP
+\fB\-a\fR
+Use \fBSOAPAction\fR HTTP/WSA header to invoke server-side operations.
+.TP
+\fB\-b\fR
+Serialize byte arrays char[N] as string.
+.TP
+\fB\-c\fR
+Generate C source code.
+.TP
+\fB\-d\fIpath\fR
+Use \fIpath\fR to save files.
+.TP
+\fB\-e\fR
+Generate SOAP RPC encoding style bindings.
+.TP
+\fB\-h\fR
+Display help info.
+.TP
+\fB\-i\fR
+Generate service proxies and objects inherited from \fBsoap\fR struct. 
+.TP
+\fB\-I\fIpath\fR
+use \fIpath\fR(s) for \fB#import\fR.
+.TP
+\fB\-l\fR
+Generate linkable modules (experimental).
+.TP
+\fB\-m\fR
+Generate Matlab(tm) code for MEX compiler.
+.TP
+\fB\-n\fR
+Use service name to rename service functions and namespace table. 
+.TP
+\fB\-p\fIname\fR
+Save files with new prefix \fIname\fR instead of \fBsoap\fR.
+.TP
+\fB\-q\fIname\fR
+Use \fIname\fR as the C++ namespace of all declarations.
+.TP
+\fB\-s\fR
+Generate deserialization code with strict XML validation checks.
+.TP
+\fB\-t\fR
+Generate code for fully \fBxsi:type\fR typed SOAP/XML messaging. 
+.TP
+\fB\-v\fR
+Display version info.
+.TP
+\fB\-w\fR
+Do not generate WSDL and schema files.
+.TP
+\fB\-x\fR
+Do not generate sample XML message files.
+.SH SEE ALSO
+.BR wsdl2h (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).
diff --git a/wsdl2h.1 b/wsdl2h.1
new file mode 100644
index 0000000..7c90254
--- /dev/null
+++ b/wsdl2h.1
@@ -0,0 +1,129 @@
+.\"                                      Hey, EMACS: -*- nroff -*-
+.\" First parameter, NAME, should be all caps
+.\" Second parameter, SECTION, should be 1-8, maybe w/ subsection
+.\" other parameters are allowed: see man(7), man(1)
+.TH WSDL2H 1 "December 23, 2004"
+.\" Please adjust this date whenever revising the manpage.
+.\"
+.\" Some roff macros, for reference:
+.\" .nh        disable hyphenation
+.\" .hy        enable hyphenation
+.\" .ad l      left justify
+.\" .ad b      justify to both left and right margins
+.\" .nf        disable filling
+.\" .fi        enable filling
+.\" .br        insert line break
+.\" .sp <n>    insert n+1 empty lines
+.\" for manpage-specific macros, see man(7)
+.SH NAME
+wsdl2h \- the gSOAP WSDL parser for C and C++
+.SH SYNOPSIS
+\fBwsdl2h\fR [\fIOPTIONS\fR] \fISOURCE\fR ...
+.SH DESCRIPTION
+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
+from standard input. 
+.SH OPTIONS
+.TP
+\fB\-a\fR
+Generate indexed struct names for local elements with anonymous
+types. 
+.TP
+\fB\-c\fR
+Generate C source code.
+.TP
+\fB\-d\fR
+Use DOM to populate \fBxs\fR:\fIany\fR, \fBxs\fR:\fIanyType\fR and
+\fBxs\fR:\fIanyAttribute\fR.
+.TP
+\fB\-e\fR
+Don not qualify enum names.
+.TP
+\fB\-f\fR
+Generate flat C++ class hierarchy.
+.TP
+\fB\-g\fR
+Generate global top-level element declarations.
+.TP
+\fB\-h\fR
+Display help info
+.TP
+\fB\-I\fIpath\fR
+Use \fIpath\fR to find files.
+.TP
+\fB\-j\fR
+Don not generate \fBSOAP_ENV__Header\fR and \fBSOAP_ENV__Detail\fR
+definitions.
+.TP
+\fB\-k\fR
+Don not generate \fBSOAP_ENV__Header\fR mustUnderstand qualifiers.
+.TP
+\fB\-l\fR
+Display license information.
+.TP
+\fB\-m\fR
+Use \fBxsd.h\fR module to import primitive types. 
+.TP
+\fB\-n\fIname\fR
+Use \fIname\fR as the base namespace prefix instead of \fBns\fR. 
+.TP
+\fB\-N\fIname\fR
+Use \fIname\fR as the base namespace prefix for service namespaces.
+.TP
+\fB\-o\fIfile\fR
+Output to file \fIfile\fR.
+.TP
+\fB\-p\fR
+Create polymorphic types with C++ inheritance from base
+\fBxsd__anyType\fR. 
+.TP
+\fB\-P\fR
+Do not create polymorphic types with C++ inheritance from \fBxsd__anyType\fR.
+.TP
+\fB\-q\fIname\fR
+Use \fIname\fR for the C++ namespace of all declarations.
+.TP
+\fB\-r\fIhost\fR[:\fIport\fR[:\fIuid\fR:\fIpwd\fR]]
+Connect via proxy \fIhost\fR, \fIport\fR and proxy credentials.
+.TP
+\fB\-s\fR
+Don not generate STL code (no \fBstd::string\fR and no
+\fBstd::vector\fR). 
+.TP
+\fB\-t\fIfile\fR
+Use type map file \fIfile\fR instead of the default file
+\fBtypemap.dat\fR. 
+.TP
+\fB\-u\fR
+Don not generate unions.
+.TP
+\fB\-v\fR
+Verbose output.
+.TP
+\fB\-w\fR
+Always wrap response parameters in a response struct (<=1.1.4
+behaviour). 
+.TP
+\fB\-x\fR
+Do not generate \fB_XML\fR \fIany\fR/\fIanyAttribute\fR extensibility
+elements. 
+.TP
+\fB\-y\fR
+Generate typedef synonyms for structs and enums. 
+.TP
+\fB\-z1\fR
+Compatibility with 2.7.6e: Generate pointer-based arrays.
+.TP
+\fB\-z2\fR
+Compatibility with 2.7.15: Qualify element/attribute referenced members.
+.TP
+\fB\-_\fR
+Do not generate _USCORE (replace with UNICODE _x005f).
+.SH SEE ALSO
+.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