From b50376810c8c4345409e4cf961be6d7919e840dc Mon Sep 17 00:00:00 2001 From: PulkoMandy Date: Tue, 4 Apr 2023 13:15:45 +0200 Subject: [PATCH] gloox: update to 1.0.26 - Remove SSL certificate patch (merged upstream) - Add patch to allow adding StanzaExtensions to outgoing MUC messages - Add patch to fix loading bookmarks without name --- ...loox-1.0.25.recipe => gloox-1.0.26.recipe} | 2 +- net-libs/gloox/patches/gloox-1.0.25.patchset | 97 ------------ net-libs/gloox/patches/gloox-1.0.26.patchset | 147 ++++++++++++++++++ 3 files changed, 148 insertions(+), 98 deletions(-) rename net-libs/gloox/{gloox-1.0.25.recipe => gloox-1.0.26.recipe} (95%) delete mode 100644 net-libs/gloox/patches/gloox-1.0.25.patchset create mode 100644 net-libs/gloox/patches/gloox-1.0.26.patchset diff --git a/net-libs/gloox/gloox-1.0.25.recipe b/net-libs/gloox/gloox-1.0.26.recipe similarity index 95% rename from net-libs/gloox/gloox-1.0.25.recipe rename to net-libs/gloox/gloox-1.0.26.recipe index 9bad4da59..8f1eff867 100644 --- a/net-libs/gloox/gloox-1.0.25.recipe +++ b/net-libs/gloox/gloox-1.0.26.recipe @@ -5,7 +5,7 @@ COPYRIGHT="2002-2023 Jakob Schröter" LICENSE="GNU GPL v2" REVISION="1" SOURCE_URI="http://camaya.net/download/gloox-$portVersion.tar.bz2" -CHECKSUM_SHA256="cffe1cbd86dbe98be856024215321cd225001d1fa7d39118b99cb9453ba22754" +CHECKSUM_SHA256="6b45b390d3b0346a3cf6cc118d5ccafcdf10d51be57a02b0076edf064033ab6f" PATCHES="gloox-$portVersion.patchset" ARCHITECTURES="all !x86_gcc2" diff --git a/net-libs/gloox/patches/gloox-1.0.25.patchset b/net-libs/gloox/patches/gloox-1.0.25.patchset deleted file mode 100644 index 9bd262b61..000000000 --- a/net-libs/gloox/patches/gloox-1.0.25.patchset +++ /dev/null @@ -1,97 +0,0 @@ -From f42062abf2ef1b328288e68398d587fff6c25bd2 Mon Sep 17 00:00:00 2001 -From: Adrien Destugues -Date: Sat, 28 Mar 2020 10:17:16 +0100 -Subject: Search for network functions in libnetwork - - -diff --git a/configure.ac b/configure.ac -index 69f3abd..5f6f99d 100644 ---- a/configure.ac -+++ b/configure.ac -@@ -318,7 +318,7 @@ AC_ARG_ENABLE( getaddrinfo, - [do not use getaddrinfo for dns lookups [default use getaddrinfo]])], - [getaddrinfo="no"]) - if test "x$getaddrinfo" = "xyes"; then -- AC_CHECK_FUNCS(getaddrinfo,,getaddrinfo="no") -+ AC_SEARCH_LIBS(getaddrinfo,network,,getaddrinfo="no") - fi - AC_MSG_CHECKING([whether to use getaddrinfo]) - AC_MSG_RESULT($getaddrinfo) -@@ -327,6 +327,7 @@ dnl Checks for header files. - AC_HEADER_STDC - AC_CHECK_HEADERS(unistd.h strings.h errno.h arpa/nameser.h) - AC_CHECK_FUNCS(setsockopt,,[AC_CHECK_LIB(socket,setsockopt)]) -+AC_CHECK_FUNCS(setsockopt,,[AC_CHECK_LIB(network,setsockopt)]) - - dnl Checks for typedefs, structures, and compiler characteristics. - AC_C_CONST --- -2.30.2 - - -From cdcdb8fd50b9ca6ded2f0e28ba1e79c55d1a9973 Mon Sep 17 00:00:00 2001 -From: Adrien Destugues -Date: Sat, 28 Mar 2020 13:10:43 +0100 -Subject: Hack for detecting libnetwork internal functions - -These functions are found indirectly through #defines in the headers. -So a normal AC_SEARCH_LIBS does not work. - -diff --git a/configure.ac b/configure.ac -index 5f6f99d..cd617f2 100644 ---- a/configure.ac -+++ b/configure.ac -@@ -220,7 +220,7 @@ else - else - AC_MSG_CHECKING([for res_querydomain in -lresolv (alternate version)]) - save_libs="$LIBS" -- LIBS="-lresolv $LIBS" -+ LIBS="-lnetwork $LIBS" - AC_LINK_IFELSE([AC_LANG_PROGRAM([[#include ]], [[res_querydomain(0,0,0,0,0,0)]])], - [AC_MSG_RESULT(yes) - AC_DEFINE(HAVE_RES_QUERYDOMAIN) -@@ -248,7 +248,7 @@ else - else - AC_MSG_CHECKING([for dn_skipname in -lresolv (alternate version)]) - save_libs="$LIBS" -- LIBS="-lresolv $LIBS" -+ LIBS="-lnetwork $LIBS" - AC_LINK_IFELSE([AC_LANG_PROGRAM([[#include - #include ]], [[dn_skipname(0,0)]])], - [AC_MSG_RESULT(yes) -@@ -277,7 +277,7 @@ else - else - AC_MSG_CHECKING([for res_query in -lresolv (alternate version)]) - save_libs="$LIBS" -- LIBS="-lresolv $LIBS" -+ LIBS="-lnetwork $LIBS" - AC_LINK_IFELSE([AC_LANG_PROGRAM([[#include ]], [[res_query(0,0,0,0,0)]])], - [AC_MSG_RESULT(yes) - AC_DEFINE(HAVE_RES_QUERY) --- -2.30.2 - - -From cb8650f396cdd47331d827ee4600899ac3348c78 Mon Sep 17 00:00:00 2001 -From: Adrien Destugues -Date: Sun, 15 Nov 2020 16:18:42 +0100 -Subject: Load system certificates. - - -diff --git a/src/tlsopensslbase.cpp b/src/tlsopensslbase.cpp -index 682f758..2a1a3b7 100644 ---- a/src/tlsopensslbase.cpp -+++ b/src/tlsopensslbase.cpp -@@ -126,6 +126,9 @@ namespace gloox - { - m_cacerts = cacerts; - -+ if (m_cacerts.empty()) -+ SSL_CTX_set_default_verify_paths( m_ctx ); -+ - StringList::const_iterator it = m_cacerts.begin(); - for( ; it != m_cacerts.end(); ++it ) - SSL_CTX_load_verify_locations( m_ctx, (*it).c_str(), 0 ); --- -2.30.2 - diff --git a/net-libs/gloox/patches/gloox-1.0.26.patchset b/net-libs/gloox/patches/gloox-1.0.26.patchset new file mode 100644 index 000000000..38ac20629 --- /dev/null +++ b/net-libs/gloox/patches/gloox-1.0.26.patchset @@ -0,0 +1,147 @@ +From d18dc2f6032970e03a440208d4effa7b3290892d Mon Sep 17 00:00:00 2001 +From: Adrien Destugues +Date: Sat, 28 Mar 2020 10:17:16 +0100 +Subject: Search for network functions in libnetwork + + +diff --git a/configure.ac b/configure.ac +index 261a78c..2d1c210 100644 +--- a/configure.ac ++++ b/configure.ac +@@ -330,7 +330,7 @@ AC_ARG_ENABLE( getaddrinfo, + [do not use getaddrinfo for dns lookups [default use getaddrinfo]])], + [getaddrinfo="no"]) + if test "x$getaddrinfo" = "xyes"; then +- AC_CHECK_FUNCS(getaddrinfo,,getaddrinfo="no") ++ AC_SEARCH_LIBS(getaddrinfo,network,,getaddrinfo="no") + fi + AC_MSG_CHECKING([whether to use getaddrinfo]) + AC_MSG_RESULT($getaddrinfo) +@@ -339,6 +339,7 @@ dnl Checks for header files. + AC_HEADER_STDC + AC_CHECK_HEADERS(unistd.h strings.h errno.h arpa/nameser.h) + AC_CHECK_FUNCS(setsockopt,,[AC_CHECK_LIB(socket,setsockopt)]) ++AC_CHECK_FUNCS(setsockopt,,[AC_CHECK_LIB(network,setsockopt)]) + + dnl Checks for typedefs, structures, and compiler characteristics. + AC_C_CONST +-- +2.37.3 + + +From 735c2d5e13b7412c2cc93edac11cabada62ac1b1 Mon Sep 17 00:00:00 2001 +From: Adrien Destugues +Date: Sat, 28 Mar 2020 13:10:43 +0100 +Subject: Hack for detecting libnetwork internal functions + +These functions are found indirectly through #defines in the headers. +So a normal AC_SEARCH_LIBS does not work. + +diff --git a/configure.ac b/configure.ac +index 2d1c210..cc03de2 100644 +--- a/configure.ac ++++ b/configure.ac +@@ -220,7 +220,7 @@ else + else + AC_MSG_CHECKING([for res_querydomain in -lresolv (alternate version)]) + save_libs="$LIBS" +- LIBS="-lresolv $LIBS" ++ LIBS="-lnetwork $LIBS" + AC_LINK_IFELSE([AC_LANG_PROGRAM([[#include ]], [[res_querydomain(0,0,0,0,0,0)]])], + [AC_MSG_RESULT(yes) + AC_DEFINE(HAVE_RES_QUERYDOMAIN) +@@ -248,7 +248,7 @@ else + else + AC_MSG_CHECKING([for dn_skipname in -lresolv (alternate version)]) + save_libs="$LIBS" +- LIBS="-lresolv $LIBS" ++ LIBS="-lnetwork $LIBS" + AC_LINK_IFELSE([AC_LANG_PROGRAM([[#include + #include ]], [[dn_skipname(0,0)]])], + [AC_MSG_RESULT(yes) +@@ -277,7 +277,7 @@ else + else + AC_MSG_CHECKING([for res_query in -lresolv (alternate version)]) + save_libs="$LIBS" +- LIBS="-lresolv $LIBS" ++ LIBS="-lnetwork $LIBS" + AC_LINK_IFELSE([AC_LANG_PROGRAM([[#include ]], [[res_query(0,0,0,0,0)]])], + [AC_MSG_RESULT(yes) + AC_DEFINE(HAVE_RES_QUERY) +-- +2.37.3 + + +From caf6cb2ff803b9e4e670ebaf05d6f6803b6f45fb Mon Sep 17 00:00:00 2001 +From: PulkoMandy +Date: Tue, 4 Apr 2023 13:03:27 +0200 +Subject: Add a way to send a message to a MUC Room with stanza extensions + +This is not possible otherwise because the internal mucmessagesession is +not available to the client. + +diff --git a/src/mucroom.cpp b/src/mucroom.cpp +index 2a06485..7b9950d 100644 +--- a/src/mucroom.cpp ++++ b/src/mucroom.cpp +@@ -702,6 +702,12 @@ namespace gloox + m_session->send( message ); + } + ++ void MUCRoom::send( const std::string& message, const std::string& subject, const StanzaExtensionList& sel ) ++ { ++ if( m_session && m_joined ) ++ m_session->send( message, subject, sel ); ++ } ++ + void MUCRoom::setSubject( const std::string& subject ) + { + if( m_session && m_joined ) +diff --git a/src/mucroom.h b/src/mucroom.h +index 73b8c93..4509d94 100644 +--- a/src/mucroom.h ++++ b/src/mucroom.h +@@ -411,6 +411,7 @@ namespace gloox + * @param message The message to send. + */ + void send( const std::string& message ); ++ void send( const std::string& message, const std::string& subject, const StanzaExtensionList& sel = StanzaExtensionList() ); + + /** + * Sets the subject of the room to the given string. +-- +2.37.3 + + +From a2a0fd3431deba7ed8f2ce6c2b36dc3cdfbb3313 Mon Sep 17 00:00:00 2001 +From: PulkoMandy +Date: Tue, 4 Apr 2023 13:42:40 +0200 +Subject: Bookmark storage: allow empty bookmarks + +XEP-0048 says the name is RECOMMENDED. So it's allowed to not have one. + +diff --git a/src/bookmarkstorage.cpp b/src/bookmarkstorage.cpp +index 91ca58e..397443e 100644 +--- a/src/bookmarkstorage.cpp ++++ b/src/bookmarkstorage.cpp +@@ -76,7 +76,7 @@ namespace gloox + const std::string& url = (*it)->findAttribute( "url" ); + const std::string& name = (*it)->findAttribute( "name" ); + +- if( !url.empty() && !name.empty() ) ++ if( !url.empty() ) + { + BookmarkListItem item; + item.url = url; +@@ -89,7 +89,7 @@ namespace gloox + const std::string& jid = (*it)->findAttribute( "jid" ); + const std::string& name = (*it)->findAttribute( "name" ); + +- if( !jid.empty() && !name.empty() ) ++ if( !jid.empty() ) + { + const std::string& join = (*it)->findAttribute( "autojoin" ); + ConferenceListItem item; +-- +2.37.3 +