Script 'mail_helper' called by obssrc
Hello community,

here is the log from the commit of package libzypp for openSUSE:Factory checked 
in at 2026-05-31 18:28:24
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/libzypp (Old)
 and      /work/SRC/openSUSE:Factory/.libzypp.new.1937 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Package is "libzypp"

Sun May 31 18:28:24 2026 rev:533 rq:1355935 version:17.38.11

Changes:
--------
--- /work/SRC/openSUSE:Factory/libzypp/libzypp.changes  2026-05-29 
18:05:33.450512533 +0200
+++ /work/SRC/openSUSE:Factory/.libzypp.new.1937/libzypp.changes        
2026-05-31 18:28:35.284842711 +0200
@@ -1,0 +2,7 @@
+Fri May 29 18:07:39 CEST 2026 - [email protected]
+
+- Fix potential crash on malformed or malicious repository
+  metadata (fixes #740)
+- version 17.38.11 (35)
+
+-------------------------------------------------------------------

Old:
----
  libzypp-17.38.10.tar.bz2

New:
----
  libzypp-17.38.11.tar.bz2

++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Other differences:
------------------
++++++ libzypp.spec ++++++
--- /var/tmp/diff_new_pack.bVwSvR/_old  2026-05-31 18:28:37.448931408 +0200
+++ /var/tmp/diff_new_pack.bVwSvR/_new  2026-05-31 18:28:37.448931408 +0200
@@ -98,7 +98,7 @@
 %endif
 
 Name:           libzypp
-Version:        17.38.10
+Version:        17.38.11
 Release:        0
 License:        GPL-2.0-or-later
 URL:            https://github.com/openSUSE/libzypp

++++++ libzypp-17.38.10.tar.bz2 -> libzypp-17.38.11.tar.bz2 ++++++
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/libzypp-17.38.10/po/da.po 
new/libzypp-17.38.11/po/da.po
--- old/libzypp-17.38.10/po/da.po       2026-05-12 16:28:08.000000000 +0200
+++ new/libzypp-17.38.11/po/da.po       2026-05-28 19:20:09.000000000 +0200
@@ -7,16 +7,16 @@
 "Project-Id-Version: libzypp\n"
 "Report-Msgid-Bugs-To: \n"
 "POT-Creation-Date: 2026-05-12 15:45+0200\n"
-"PO-Revision-Date: 2026-04-08 13:04+0000\n"
+"PO-Revision-Date: 2026-05-28 17:12+0000\n"
 "Last-Translator: Peter Andreasen <[email protected]>\n"
-"Language-Team: Danish <https://l10n.opensuse.org/projects/libzypp/master/da/";
-">\n"
+"Language-Team: Danish <https://l10n.opensuse.org/projects/libzypp/master/da/>"
+"\n"
 "Language: da\n"
 "MIME-Version: 1.0\n"
 "Content-Type: text/plain; charset=UTF-8\n"
 "Content-Transfer-Encoding: 8bit\n"
 "Plural-Forms: nplurals=2; plural=n != 1;\n"
-"X-Generator: Weblate 5.16.2\n"
+"X-Generator: Weblate 2026.5\n"
 
 #. translators: an annotation to a gpg keys expiry date
 #: zypp-logic/zypp-common/PublicKey.cc:65
@@ -4241,7 +4241,7 @@
 #. translator: Shown as result tag in a progress bar: .......[attention]
 #: zypp/zypp-tui/output/Out.cc:143
 msgid "attention"
-msgstr ""
+msgstr "se her"
 
 #. translator: Shown as result tag in a progress bar: ...........[error]
 #. Translator: download progress bar result: "............[error]"
@@ -4378,6 +4378,7 @@
 "The package was discontinued and has been superseded by a new package with a "
 "different name."
 msgstr ""
+"Pakken er udgået og er blevet erstattet med en ny pakke med et andet navn."
 
 #: zypp/zypp/VendorSupportOptions.cc:60
 msgid "Unknown support option. Description not available"
@@ -4402,12 +4403,12 @@
 #. just report (NO_ERROR); no interactive request to the user
 #: zypp/zypp/media/MediaCurl.cc:822
 msgid "Will try again..."
-msgstr ""
+msgstr "Prøver igen..."
 
 #: zypp/zypp/media/MediaCurl.cc:825
 #, boost-format
 msgid "Giving up after %1% attempts."
-msgstr ""
+msgstr "Giver op efter %1% forsøg."
 
 #: zypp/zypp/media/MediaHandler.cc:339
 msgid ""
@@ -4432,6 +4433,8 @@
 "Downloading signature key via mirrors, consider explicitly setting gpgKeyUrl "
 "via the repository configuration instead."
 msgstr ""
+"Henter signatur-fil via spejle, overvej specifikt at sætte gpgKeyUrl via "
+"repo-konfigurationen i stedet."
 
 #. TranslatorExplanation '%s' is an URL
 #: zypp/zypp/ng/repo/workflows/repomanagerwf.cc:96
@@ -4449,11 +4452,11 @@
 
 #: zypp/zypp/ng/repo/workflows/repomanagerwf.cc:452
 msgid "Failed to retrieve new repository metadata."
-msgstr ""
+msgstr "Kunne ikke hente nye repo-metadata."
 
 #: zypp/zypp/ng/repo/workflows/repomanagerwf.cc:546
 msgid "Failed to cache repo ( unable to start repo2solv )."
-msgstr ""
+msgstr "Kunne ikke mellemlagre repo ( kan ikke starte repo2solv )."
 
 #: zypp/zypp/ng/repo/workflows/repomanagerwf.cc:563
 #: zypp/zypp/ng/repo/workflows/repomanagerwf.cc:602
@@ -4474,7 +4477,7 @@
 #: zypp/zypp/ng/repo/workflows/repomanagerwf.cc:775
 #, boost-format
 msgid "Failed to cache repo %1%"
-msgstr ""
+msgstr "Kunne ikke mellemlagre repo %1%"
 
 #: zypp/zypp/ng/repo/workflows/repomanagerwf.cc:792
 msgid "Unhandled repository type"
@@ -4526,28 +4529,28 @@
 
 #: zypp/zypp/ng/repomanager.cc:381
 msgid "Cleaning metadata"
-msgstr ""
+msgstr "Renser metadata"
 
 #: zypp/zypp/ng/repomanager.cc:399
 msgid "Cleaning packages"
-msgstr ""
+msgstr "Renser pakker"
 
 #: zypp/zypp/ng/repomanager.cc:451
 msgid "Cleaning up cache dirs"
-msgstr ""
+msgstr "Renser mapper med mellemlager"
 
 #: zypp/zypp/ng/repomanager.cc:471
 #, boost-format
 msgid "Cleaning up directory: %1%"
-msgstr ""
+msgstr "Renser mappen: %1%"
 
 #: zypp/zypp/ng/repomanager.cc:501
 msgid "Cleaning cache"
-msgstr ""
+msgstr "Renser mellemlager"
 
 #: zypp/zypp/ng/repomanager.cc:522
 msgid "Loading from cache"
-msgstr ""
+msgstr "Henter fra mellemlager"
 
 #: zypp/zypp/ng/repomanager.cc:613
 #, c-format, boost-format
@@ -4566,11 +4569,11 @@
 
 #: zypp/zypp/ng/repomanager.cc:703
 msgid "Modifying repository"
-msgstr ""
+msgstr "Ændrer repo"
 
 #: zypp/zypp/ng/repomanager.cc:896
 msgid "Refreshing Repository: "
-msgstr ""
+msgstr "Genopfrisker Repo: "
 
 #: zypp/zypp/ng/repomanager.cc:1081 zypp/zypp/ng/repomanager.cc:1153
 msgid "Can't figure out where the service is stored."
@@ -4596,38 +4599,39 @@
 #: zypp/zypp/ng/reporthelper.cc:26
 #, c-format, boost-format
 msgid "No digest for file %s."
-msgstr ""
+msgstr "Ingen sammendrag for filen %s."
 
 #: zypp/zypp/ng/reporthelper.cc:38
 #, c-format, boost-format
 msgid "Unknown digest %s for file %s."
-msgstr ""
+msgstr "Ukendt sammendrag %s for filen %s."
 
 #: zypp/zypp/ng/reporthelper.cc:51
 #, c-format, boost-format
 msgid "Digest verification failed for file '%s'"
-msgstr ""
+msgstr "Sammendrag kunne ikke verificeres for filen '%s'"
 
 #. TranslatorExplanation: speaking of a file
 #: zypp/zypp/ng/reporthelper.cc:68
 #, c-format, boost-format
 msgid "File '%s' is unsigned, continue?"
-msgstr ""
+msgstr "Filen '%s' er ikke signeret, fortsæt?"
 
 #. TranslatorExplanation: speaking of a file
 #: zypp/zypp/ng/reporthelper.cc:72
 #, c-format, boost-format
 msgid "File '%s' from repository '%s' is unsigned, continue?"
-msgstr ""
+msgstr "Filen '%s' fra repo '%s' er ikke signeret, fortsæt?"
 
 #: zypp/zypp/ng/reporthelper.cc:89
 msgid "Do you want to reject the key, trust temporarily, or trust always?"
 msgstr ""
+"Vil du afvise nøglen, acceptere den midlertidigt, eller altid stole på den?"
 
 #: zypp/zypp/ng/reporthelper.cc:115
 #, boost-format
 msgid "Key Name: %1%"
-msgstr ""
+msgstr "Nøgle-navn: %1%"
 
 #: zypp/zypp/ng/reporthelper.cc:127
 #, boost-format
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/libzypp-17.38.10/zypp/VERSION.cmake 
new/libzypp-17.38.11/zypp/VERSION.cmake
--- old/libzypp-17.38.10/zypp/VERSION.cmake     2026-05-27 17:50:40.000000000 
+0200
+++ new/libzypp-17.38.11/zypp/VERSION.cmake     2026-05-29 18:08:11.000000000 
+0200
@@ -61,8 +61,8 @@
 SET(LIBZYPP_MAJOR "17")
 SET(LIBZYPP_COMPATMINOR "35")
 SET(LIBZYPP_MINOR "38")
-SET(LIBZYPP_PATCH "10")
+SET(LIBZYPP_PATCH "11")
 #
-# LAST RELEASED: 17.38.10 (35)
+# LAST RELEASED: 17.38.11 (35)
 # (The number in parenthesis is LIBZYPP_COMPATMINOR)
 #=======
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/libzypp-17.38.10/zypp/package/libzypp.changes 
new/libzypp-17.38.11/zypp/package/libzypp.changes
--- old/libzypp-17.38.10/zypp/package/libzypp.changes   2026-05-27 
17:50:41.000000000 +0200
+++ new/libzypp-17.38.11/zypp/package/libzypp.changes   2026-05-29 
18:08:11.000000000 +0200
@@ -1,4 +1,11 @@
 -------------------------------------------------------------------
+Fri May 29 18:07:39 CEST 2026 - [email protected]
+
+- Fix potential crash on malformed or malicious repository
+  metadata (fixes #740)
+- version 17.38.11 (35)
+
+-------------------------------------------------------------------
 Wed May 27 17:09:30 CEST 2026 - [email protected]
 
 - Repo metadata: discard entries referring to a location outside
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/libzypp-17.38.10/zypp/zypp/parser/susetags/ContentFileReader.cc 
new/libzypp-17.38.11/zypp/zypp/parser/susetags/ContentFileReader.cc
--- old/libzypp-17.38.10/zypp/zypp/parser/susetags/ContentFileReader.cc 
2026-05-27 17:50:41.000000000 +0200
+++ new/libzypp-17.38.11/zypp/zypp/parser/susetags/ContentFileReader.cc 
2026-05-29 18:08:11.000000000 +0200
@@ -52,8 +52,6 @@
 
         std::string sanitizeEntry( Pathname path_r )
         {
-          if ( path_r.empty() )
-            return {};
           // HASH SHA1 d423ad41e93a51195a6264961e4a074c6d89359d  
boot/../x86_64/bind    => x86_64/bind
           // HASH SHA1 d423ad41e93a51195a6264961e4a074c6d89359d  
boot/../../x86_64/bind => ../* discarded
           // Turning it into a Pathname normalizes the representation.
@@ -63,7 +61,15 @@
             pWAR( "Hostile location:", path_r, "=>", "discard data entry" );
             return {};
           }
-          return path_r.asString().substr( path_r.absolute() ? 1 : 2 ); // 
skip leading "/" or  "./"
+          // Skip leading "/" or  "./" trying to retain the original string 
format
+          std::string ret = path_r.asString();
+          if ( ret.size() <= 1 )
+            return ret;                   // is "", "." or "/"
+          if ( ret[0] == '/' )
+            ret = ret.substr( 1 );        // skip leading "/"
+          else
+            ret = ret.substr( 2 );        // skip leading "./"
+          return ret;
         }
       }
 

Reply via email to