Script 'mail_helper' called by obssrc Hello community, here is the log from the commit of package libupnp for openSUSE:Factory checked in at 2023-08-23 14:56:40 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Comparing /work/SRC/openSUSE:Factory/libupnp (Old) and /work/SRC/openSUSE:Factory/.libupnp.new.1766 (New) ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "libupnp" Wed Aug 23 14:56:40 2023 rev:35 rq:1105208 version:1.14.18 Changes: -------- --- /work/SRC/openSUSE:Factory/libupnp/libupnp.changes 2023-05-02 16:18:33.449643690 +0200 +++ /work/SRC/openSUSE:Factory/.libupnp.new.1766/libupnp.changes 2023-08-23 14:56:47.693902264 +0200 @@ -1,0 +2,6 @@ +Tue Aug 22 08:54:29 UTC 2023 - Jan Engelhardt <jeng...@inai.de> + +- Update to release 1.14.18 + * miniserver: fix busy loop on socket error + +------------------------------------------------------------------- Old: ---- libupnp-1.14.17.tar.bz2 New: ---- libupnp-1.14.18.tar.bz2 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Other differences: ------------------ ++++++ libupnp.spec ++++++ --- /var/tmp/diff_new_pack.5Qzrn4/_old 2023-08-23 14:56:48.701904067 +0200 +++ /var/tmp/diff_new_pack.5Qzrn4/_new 2023-08-23 14:56:48.713904088 +0200 @@ -20,7 +20,7 @@ %define pnpver 17 %define ixmlver 11 Name: libupnp -Version: 1.14.17 +Version: 1.14.18 Release: 0 Summary: An implementation of Universal Plug and Play (UPnP) License: BSD-3-Clause ++++++ libupnp-1.14.17.tar.bz2 -> libupnp-1.14.18.tar.bz2 ++++++ diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/libupnp-1.14.17/ChangeLog new/libupnp-1.14.18/ChangeLog --- old/libupnp-1.14.17/ChangeLog 2023-03-30 15:00:55.000000000 +0200 +++ new/libupnp-1.14.18/ChangeLog 2023-08-21 23:24:45.000000000 +0200 @@ -9,9 +9,26 @@ Aborted. ******************************************************************************* +Version 1.14.18 +******************************************************************************* + +2023-06-29 Thomas Guillem <thomas(at)gllm.fr> + + miniserver: fix busy loop on socket error + + In case of a socket error, the socket was not removed from the select + pool, causing future select() calls to return immediately, and + readFromSSDPSocket() to be called just after on the failing socket. This + was causing a high CPU load. + +******************************************************************************* Version 1.14.17 ******************************************************************************* +2023-04-30 Marcelo Roberto Jimenez <mroberto(at)users.sourceforge.net> + + Include fuzzer and gtest in the tarball. + ******************************************************************************* Version 1.14.16 ******************************************************************************* diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/libupnp-1.14.17/Makefile.in new/libupnp-1.14.18/Makefile.in --- old/libupnp-1.14.17/Makefile.in 2023-05-01 00:26:48.000000000 +0200 +++ new/libupnp-1.14.18/Makefile.in 2023-08-21 22:46:06.000000000 +0200 @@ -210,7 +210,7 @@ $(top_srcdir)/upnp/inc/upnpconfig.h.in \ $(top_srcdir)/upnp/sample/common/config_sample.h.in COPYING \ ChangeLog README.md THANKS build-aux/ar-lib build-aux/compile \ - build-aux/config.guess build-aux/config.sub build-aux/depcomp \ + build-aux/config.guess build-aux/config.sub \ build-aux/install-sh build-aux/ltmain.sh build-aux/missing DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST) distdir = $(PACKAGE)-$(VERSION) diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/libupnp-1.14.17/README.md new/libupnp-1.14.18/README.md --- old/libupnp-1.14.17/README.md 2023-03-30 14:55:23.000000000 +0200 +++ new/libupnp-1.14.18/README.md 2023-08-21 23:29:26.000000000 +0200 @@ -102,7 +102,9 @@ | -------------- | ---------- | ---------------------------------------- | | 1.18.0 | TBA ? | [Portable UPnP SDK][Portable UPnP SDK] | | 1.16.0 | aborted | [Portable UPnP SDK][Portable UPnP SDK] | -| 1.14.17 | TBA | [Portable UPnP SDK][Portable UPnP SDK] | +| 1.14.19 | TBA | [Portable UPnP SDK][Portable UPnP SDK] | +| 1.14.18 | 2023-08-21 | [Portable UPnP SDK][Portable UPnP SDK] | +| 1.14.17 | 2023-04-30 | [Portable UPnP SDK][Portable UPnP SDK] | | 1.14.16 | 2023-03-30 | [Portable UPnP SDK][Portable UPnP SDK] | | 1.14.15 | 2022-11-18 | [Portable UPnP SDK][Portable UPnP SDK] | | 1.14.14 | 2022-10-05 | [Portable UPnP SDK][Portable UPnP SDK] | diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/libupnp-1.14.17/THANKS new/libupnp-1.14.18/THANKS --- old/libupnp-1.14.17/THANKS 2023-03-30 14:55:23.000000000 +0200 +++ new/libupnp-1.14.18/THANKS 2023-08-21 23:27:09.000000000 +0200 @@ -93,6 +93,7 @@ - Stephen Bash (scbash at Github) - Steve Bresson - Thijs Schreijer +- Thomas Guillem (tguillem at Github) - Thomas Mitterfellner (lineinthesand at Github) - Thoren Paulson (Thoren dot Paulson at gmail dot com, thoren-d at github) - Timothy Redaelli diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/libupnp-1.14.17/configure new/libupnp-1.14.18/configure --- old/libupnp-1.14.17/configure 2023-05-01 00:26:48.000000000 +0200 +++ new/libupnp-1.14.18/configure 2023-08-21 22:46:05.000000000 +0200 @@ -1,6 +1,6 @@ #! /bin/sh # Guess values for system-dependent variables and create Makefiles. -# Generated by GNU Autoconf 2.71 for libupnp 1.14.17. +# Generated by GNU Autoconf 2.71 for libupnp 1.14.18. # # Report bugs to <mrobe...@users.sourceforge.net>. # @@ -621,8 +621,8 @@ # Identity of this package. PACKAGE_NAME='libupnp' PACKAGE_TARNAME='libupnp' -PACKAGE_VERSION='1.14.17' -PACKAGE_STRING='libupnp 1.14.17' +PACKAGE_VERSION='1.14.18' +PACKAGE_STRING='libupnp 1.14.18' PACKAGE_BUGREPORT='mrobe...@users.sourceforge.net' PACKAGE_URL='' @@ -1434,7 +1434,7 @@ # Omit some internal or obsolete options to make the list less imposing. # This message is too long to be a string in the A/UX 3.1 sh. cat <<_ACEOF -\`configure' configures libupnp 1.14.17 to adapt to many kinds of systems. +\`configure' configures libupnp 1.14.18 to adapt to many kinds of systems. Usage: $0 [OPTION]... [VAR=VALUE]... @@ -1505,7 +1505,7 @@ if test -n "$ac_init_help"; then case $ac_init_help in - short | recursive ) echo "Configuration of libupnp 1.14.17:";; + short | recursive ) echo "Configuration of libupnp 1.14.18:";; esac cat <<\_ACEOF @@ -1652,7 +1652,7 @@ test -n "$ac_init_help" && exit $ac_status if $ac_init_version; then cat <<\_ACEOF -libupnp configure 1.14.17 +libupnp configure 1.14.18 generated by GNU Autoconf 2.71 Copyright (C) 2021 Free Software Foundation, Inc. @@ -2008,7 +2008,7 @@ This file contains any messages produced by compilers while running configure, to aid debugging if configure makes a mistake. -It was created by libupnp $as_me 1.14.17, which was +It was created by libupnp $as_me 1.14.18, which was generated by GNU Autoconf 2.71. Invocation command line was $ $0$ac_configure_args_raw @@ -2766,7 +2766,7 @@ LT_VERSION_IXML=12:2:1 -LT_VERSION_UPNP=18:8:1 +LT_VERSION_UPNP=18:9:1 @@ -3288,7 +3288,7 @@ # Define the identity of the package. PACKAGE='libupnp' - VERSION='1.14.17' + VERSION='1.14.18' printf "%s\n" "#define PACKAGE \"$PACKAGE\"" >>confdefs.h @@ -17722,7 +17722,7 @@ # report actual input values of CONFIG_FILES etc. instead of their # values after options handling. ac_log=" -This file was extended by libupnp $as_me 1.14.17, which was +This file was extended by libupnp $as_me 1.14.18, which was generated by GNU Autoconf 2.71. Invocation command line was CONFIG_FILES = $CONFIG_FILES @@ -17790,7 +17790,7 @@ cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1 ac_cs_config='$ac_cs_config_escaped' ac_cs_version="\\ -libupnp config.status 1.14.17 +libupnp config.status 1.14.18 configured by $0, generated by GNU Autoconf 2.71, with options \\"\$ac_cs_config\\" diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/libupnp-1.14.17/configure.ac new/libupnp-1.14.18/configure.ac --- old/libupnp-1.14.17/configure.ac 2023-03-30 15:02:26.000000000 +0200 +++ new/libupnp-1.14.18/configure.ac 2023-05-01 00:36:51.000000000 +0200 @@ -9,7 +9,7 @@ AC_PREREQ(2.60) -AC_INIT([libupnp], [1.14.17], [mrobe...@users.sourceforge.net]) +AC_INIT([libupnp], [1.14.18], [mrobe...@users.sourceforge.net]) dnl ############################################################################ dnl # *Independently* of the above libupnp package version, the libtool version dnl # of the 3 libraries need to be updated whenever there is a change released: @@ -229,8 +229,18 @@ dnl #AC_SUBST([LT_VERSION_UPNP], [18:8:1]) dnl # dnl ############################################################################ +dnl # Release 1.14.18 +dnl # "current:revision:age" +dnl # +dnl # - Code has changed in upnp +dnl # revision: 8 -> 9 +dnl # +dnl #AC_SUBST([LT_VERSION_IXML], [12:2:1]) +dnl #AC_SUBST([LT_VERSION_UPNP], [18:9:1]) +dnl # +dnl ############################################################################ AC_SUBST([LT_VERSION_IXML], [12:2:1]) -AC_SUBST([LT_VERSION_UPNP], [18:8:1]) +AC_SUBST([LT_VERSION_UPNP], [18:9:1]) dnl ############################################################################ dnl # Repeating the algorithm to place it closer to the modificatin place: dnl # - library code modified: revision++ diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/libupnp-1.14.17/docs/Doxyfile new/libupnp-1.14.18/docs/Doxyfile --- old/libupnp-1.14.17/docs/Doxyfile 2023-03-30 15:03:01.000000000 +0200 +++ new/libupnp-1.14.18/docs/Doxyfile 2023-05-01 00:37:21.000000000 +0200 @@ -38,7 +38,7 @@ # could be handy for archiving the generated documentation or if some version # control system is used. -PROJECT_NUMBER = 1.14.17 +PROJECT_NUMBER = 1.14.18 # Using the PROJECT_BRIEF tag one can provide an optional one line description # for a project that appears at the top of each page and should give viewer a diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/libupnp-1.14.17/libupnp.spec new/libupnp-1.14.18/libupnp.spec --- old/libupnp-1.14.17/libupnp.spec 2023-03-30 15:00:35.000000000 +0200 +++ new/libupnp-1.14.18/libupnp.spec 2023-05-01 00:37:48.000000000 +0200 @@ -1,4 +1,4 @@ -Version: 1.14.17 +Version: 1.14.18 Summary: Universal Plug and Play (UPnP) SDK Name: libupnp-1.14 Release: 1%{?dist} diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/libupnp-1.14.17/upnp/src/genlib/miniserver/miniserver.c new/libupnp-1.14.18/upnp/src/genlib/miniserver/miniserver.c --- old/libupnp-1.14.17/upnp/src/genlib/miniserver/miniserver.c 2022-10-05 19:49:53.000000000 +0200 +++ new/libupnp-1.14.18/upnp/src/genlib/miniserver/miniserver.c 2023-08-21 23:34:37.000000000 +0200 @@ -537,10 +537,21 @@ #endif /* INTERNAL_WEB_SERVER */ } -static void ssdp_read(SOCKET rsock, fd_set *set) +static void ssdp_read(SOCKET *rsock, fd_set *set) { - if (rsock != INVALID_SOCKET && FD_ISSET(rsock, set)) { - readFromSSDPSocket(rsock); + if (*rsock != INVALID_SOCKET && FD_ISSET(*rsock, set)) { + int ret = readFromSSDPSocket(*rsock); + if (ret != 0) { + UpnpPrintf(UPNP_INFO, + MSERV, + __FILE__, + __LINE__, + "miniserver: Error in readFromSSDPSocket(%d): " + "closing socket\n", + *rsock); + sock_close(*rsock); + *rsock = INVALID_SOCKET; + } } } @@ -583,6 +594,13 @@ if (NULL != strstr(requestBuf, "ShutDown")) { return 1; } + } else { + UpnpPrintf(UPNP_INFO, + MSERV, + __FILE__, + __LINE__, + "miniserver: stopSock Error, aborting...\n"); + return 1; } } @@ -658,12 +676,12 @@ web_server_accept( miniSock->miniServerSock6UlaGua, &rdSet); #ifdef INCLUDE_CLIENT_APIS - ssdp_read(miniSock->ssdpReqSock4, &rdSet); - ssdp_read(miniSock->ssdpReqSock6, &rdSet); + ssdp_read(&miniSock->ssdpReqSock4, &rdSet); + ssdp_read(&miniSock->ssdpReqSock6, &rdSet); #endif /* INCLUDE_CLIENT_APIS */ - ssdp_read(miniSock->ssdpSock4, &rdSet); - ssdp_read(miniSock->ssdpSock6, &rdSet); - ssdp_read(miniSock->ssdpSock6UlaGua, &rdSet); + ssdp_read(&miniSock->ssdpSock4, &rdSet); + ssdp_read(&miniSock->ssdpSock6, &rdSet); + ssdp_read(&miniSock->ssdpSock6UlaGua, &rdSet); stopSock = receive_from_stopSock( miniSock->miniServerStopSock, &rdSet); } diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/libupnp-1.14.17/upnp/src/inc/ssdplib.h new/libupnp-1.14.18/upnp/src/inc/ssdplib.h --- old/libupnp-1.14.17/upnp/src/inc/ssdplib.h 2022-08-03 16:14:24.000000000 +0200 +++ new/libupnp-1.14.18/upnp/src/inc/ssdplib.h 2023-08-21 22:37:45.000000000 +0200 @@ -239,8 +239,10 @@ /*! * \brief This function reads the data from the ssdp socket. + * + * \return 0 on success; -1 on error. */ -void readFromSSDPSocket( +int readFromSSDPSocket( /* [in] SSDP socket. */ SOCKET socket); diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/libupnp-1.14.17/upnp/src/ssdp/ssdp_server.c new/libupnp-1.14.18/upnp/src/ssdp/ssdp_server.c --- old/libupnp-1.14.17/upnp/src/ssdp/ssdp_server.c 2022-08-03 16:14:24.000000000 +0200 +++ new/libupnp-1.14.18/upnp/src/ssdp/ssdp_server.c 2023-08-21 23:34:37.000000000 +0200 @@ -805,7 +805,7 @@ free_ssdp_event_handler_data(data); } -void readFromSSDPSocket(SOCKET socket) +int readFromSSDPSocket(SOCKET socket) { char *requestBuf = NULL; char staticBuf[BUFSIZE]; @@ -896,8 +896,11 @@ if (ThreadPoolAdd(&gRecvThreadPool, &job, NULL) != 0) free_ssdp_event_handler_data(data); } - } else + return 0; + } else { free_ssdp_event_handler_data(data); + return -1; + } } /*!