diff mbox series

[meta-oe,v2,1/2] gsoap: upgrade 2.8.137 -> 2.8.142

Message ID 20260607003852.5315-1-schonm@gmail.com
State New
Headers show
Series [meta-oe,v2,1/2] gsoap: upgrade 2.8.137 -> 2.8.142 | expand

Commit Message

Jason Schonberg June 7, 2026, 12:38 a.m. UTC
From the changelog.md file:

Version 2.8.142 (04/25/2026)
---
- Update heap memory management to free all auxiliary hash table data upon calling `soap_end()`, i.e. in addition to `soap_done()`, unless compiled in DEBUG mode that verifies memory consistency keeping auxiliary data until `soap_done()` is called.  This change aligns the behavior with pre-2.8.140 releases, while still benefiting from fast `soap_unlink()`.

Version 2.8.141 (04/08/2026)
---
- New HTTP-STREAMS plugin for persistent http(s) connections ("streams") to accelerate client threads.
- Minor update to support OpenSSL 4.

Version 2.8.140 (01/25/2026)
---
- Improved heap memory management (for deserialization storage) with a much faster `soap_unlink()` implementation by using pointer hash tables.
- Faster JSON parsers `json.c` (via `xml-rpc.c`) and `json.cpp` (via `xml-rpc.cpp`) with faster `soap_unlink()`.
- Changed `soap_link()` (an internal API function) to another fail-safe combination `soap_new_link()` and `soap_set_link()`.
- Fixed wsdl2h issue with a missing namespace URI (not found but needed to form a valid QName) when a schema A imports a schema B and schema B includes a chameleon schema C that defines an attributeGroup that is referenced by an attributeGroup reference in schema A.

Version 2.8.139 (07/14/2025)
---
- Add `WITH_POSIX_STRERROR_R` to force XSI-compliant POSIX `strerror_r` usage when compiling `stdsoap2.c` or `stdsoap2.cpp` from source; e.g. when compiling on Musl Linux the compile-time detection of the XSI-compliant `strerror_r` may fail, which leads to a compiler error.  To avoid this run `./configure CFLAGS=-DWITH_POSIX_STRERROR_R CXXFLAGS=-DWITH_POSIX_STRERROR_R`.
- Minor improvement of the `SOAP_XML_IGNORENS` (ignore XML namespaces) logic when performing non-strict XML validation (`SOAP_XML_STRICT` is not enabled) when ignoring extra XML extensibility elements in an inbound SOAP/XML message; no longer produces validation errors for non-serializable XML to "safely" ignore, unless strict XML validation is enabled with `SOAP_XML_STRICT`, as expected.

Version 2.8.138 (03/24/2025)
---
- The wsdl2h tool with SSL/TLS enabled for https no longer supports legacy SSLv3, only TLS 1.0 to 1.3, this avoids potential TLS/SSL handshake errors.
- Corrected a logic bug in wsdl2h for attribute/elemenet reference qualification for C++ class and C struct members in the generated header interface file for soapcpp2; the issue occurs in certain schema use cases when attributes/elements are referenced in the same schema target namespace, but depends on the schema attribute/element default form qualifications; the problem was inadvertently introduced in 2.8.95 despite our extensive test suite that includes the official W3C XML Data Bindings in gsoap/samples/autotest: this old problem was actually visible in the AttributeReferenceUnqualified log.  Because this is a specific case, the problem does not affect ONVIF and many other WSDLs and schemas.

Signed-off-by: Jason Schonberg <schonm@gmail.com>
---
 ...d_l-signature-on-non-glibc-linux-musl-s.patch | 16 ++++++++--------
 .../gsoap/{gsoap_2.8.137.bb => gsoap_2.8.142.bb} |  2 +-
 2 files changed, 9 insertions(+), 9 deletions(-)
 rename meta-oe/recipes-support/gsoap/{gsoap_2.8.137.bb => gsoap_2.8.142.bb} (93%)
diff mbox series

Patch

diff --git a/meta-oe/recipes-support/gsoap/gsoap/0001-Provide-strtod_l-signature-on-non-glibc-linux-musl-s.patch b/meta-oe/recipes-support/gsoap/gsoap/0001-Provide-strtod_l-signature-on-non-glibc-linux-musl-s.patch
index df27a59ee7..51ffde158e 100644
--- a/meta-oe/recipes-support/gsoap/gsoap/0001-Provide-strtod_l-signature-on-non-glibc-linux-musl-s.patch
+++ b/meta-oe/recipes-support/gsoap/gsoap/0001-Provide-strtod_l-signature-on-non-glibc-linux-musl-s.patch
@@ -24,7 +24,7 @@  Signed-off-by: Khem Raj <raj.khem@gmail.com>
  #if GSOAP_VERSION != GSOAP_LIB_VERSION
  # error "GSOAP VERSION MISMATCH IN LIBRARY: PLEASE REINSTALL PACKAGE"
  #endif
-@@ -5457,7 +5462,7 @@ tcp_gethostbyname(struct soap *soap, con
+@@ -5460,7 +5465,7 @@ tcp_gethostbyname(struct soap *soap, con
  {
  #if (defined(_AIX43) || defined(TRU64) || defined(HP_UX)) && defined(HAVE_GETHOSTBYNAME_R)
    struct hostent_data ht_data;
@@ -33,7 +33,7 @@  Signed-off-by: Khem Raj <raj.khem@gmail.com>
    int r;
    char *tmpbuf = soap->tmpbuf;
    size_t tmplen = sizeof(soap->tmpbuf);
-@@ -5490,7 +5495,7 @@ tcp_gethostbyname(struct soap *soap, con
+@@ -5493,7 +5498,7 @@ tcp_gethostbyname(struct soap *soap, con
      hostent = NULL;
      soap->errnum = h_errno;
    }
@@ -46,8 +46,8 @@  Signed-off-by: Khem Raj <raj.khem@gmail.com>
    {
  #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 !defined(__GLIBC__) || (!(~_GNU_SOURCE+1) && ((!defined(_POSIX_C_SOURCE) && !defined(_XOPEN_SOURCE)) || (_POSIX_C_SOURCE >= 200112L || _XOPEN_SOURCE >= 600)))
+-#  if !defined(_GNU_SOURCE) || (!(~_GNU_SOURCE+1) && ((!defined(_POSIX_C_SOURCE) && !defined(_XOPEN_SOURCE)) || (_POSIX_C_SOURCE >= 200112L || _XOPEN_SOURCE >= 600))) || defined(WITH_POSIX_STRERROR_R)
++#  if !defined(__GLIBC__) || (!(~_GNU_SOURCE+1) && ((!defined(_POSIX_C_SOURCE) && !defined(_XOPEN_SOURCE)) || (_POSIX_C_SOURCE >= 200112L || _XOPEN_SOURCE >= 600))) || defined(WITH_POSIX_STRERROR_R)
      err = strerror_r(err, soap->msgbuf, sizeof(soap->msgbuf)); /* XSI-compliant */
      if (err != 0)
        soap_strcpy(soap->msgbuf, sizeof(soap->msgbuf), "unknown error");
@@ -65,7 +65,7 @@  Signed-off-by: Khem Raj <raj.khem@gmail.com>
  #if GSOAP_VERSION != GSOAP_LIB_VERSION
  # error "GSOAP VERSION MISMATCH IN LIBRARY: PLEASE REINSTALL PACKAGE"
  #endif
-@@ -5490,7 +5495,7 @@ tcp_gethostbyname(struct soap *soap, con
+@@ -5493,7 +5498,7 @@ tcp_gethostbyname(struct soap *soap, con
      hostent = NULL;
      soap->errnum = h_errno;
    }
@@ -74,12 +74,12 @@  Signed-off-by: Khem Raj <raj.khem@gmail.com>
    while ((r = gethostbyname_r(addr, hostent, tmpbuf, tmplen, &hostent, &soap->errnum)) < 0)
    {
      if (tmpbuf != soap->tmpbuf)
-@@ -23192,7 +23197,7 @@ soap_strerror(struct soap *soap)
+@@ -23263,7 +23268,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 !defined(__GLIBC__) || (!(~_GNU_SOURCE+1) && ((!defined(_POSIX_C_SOURCE) && !defined(_XOPEN_SOURCE)) || (_POSIX_C_SOURCE >= 200112L || _XOPEN_SOURCE >= 600)))
+-#  if !defined(_GNU_SOURCE) || (!(~_GNU_SOURCE+1) && ((!defined(_POSIX_C_SOURCE) && !defined(_XOPEN_SOURCE)) || (_POSIX_C_SOURCE >= 200112L || _XOPEN_SOURCE >= 600))) || defined(WITH_POSIX_STRERROR_R)
++#  if !defined(__GLIBC__) || (!(~_GNU_SOURCE+1) && ((!defined(_POSIX_C_SOURCE) && !defined(_XOPEN_SOURCE)) || (_POSIX_C_SOURCE >= 200112L || _XOPEN_SOURCE >= 600))) || defined(WITH_POSIX_STRERROR_R)
      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/meta-oe/recipes-support/gsoap/gsoap_2.8.137.bb b/meta-oe/recipes-support/gsoap/gsoap_2.8.142.bb
similarity index 93%
rename from meta-oe/recipes-support/gsoap/gsoap_2.8.137.bb
rename to meta-oe/recipes-support/gsoap/gsoap_2.8.142.bb
index b91187c13f..974d99434a 100644
--- a/meta-oe/recipes-support/gsoap/gsoap_2.8.137.bb
+++ b/meta-oe/recipes-support/gsoap/gsoap_2.8.142.bb
@@ -7,7 +7,7 @@  LIC_FILES_CHKSUM = "file://LICENSE.txt;md5=7eaf5d4df67c0db38549ba3c714a37d6 \
 
 SRC_URI = "https://prdownloads.sourceforge.net/${BPN}2/${BPN}_${PV}.zip \
            file://0001-Provide-strtod_l-signature-on-non-glibc-linux-musl-s.patch"
-SRC_URI[sha256sum] = "a6c9fb9088efd60ad0e983fa83d8440fe128514db22297b5b3f2de302106e55c"
+SRC_URI[sha256sum] = "6d7196bd6591ec2977474c681e351b4a33eb5c2d64c9e2e6727b004f330b3752"
 
 inherit autotools