Script 'mail_helper' called by obssrc Hello community, here is the log from the commit of package wmime for openSUSE:Factory checked in at 2025-07-25 17:05:32 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Comparing /work/SRC/openSUSE:Factory/wmime (Old) and /work/SRC/openSUSE:Factory/.wmime.new.13279 (New) ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "wmime" Fri Jul 25 17:05:32 2025 rev:2 rq:1295638 version:1.1.0 Changes: -------- --- /work/SRC/openSUSE:Factory/wmime/wmime.changes 2025-01-22 16:32:08.555499525 +0100 +++ /work/SRC/openSUSE:Factory/.wmime.new.13279/wmime.changes 2025-07-25 17:06:12.031468935 +0200 @@ -1,0 +2,11 @@ +Thu Jul 24 23:09:06 UTC 2025 - Jan Engelhardt <jeng...@inai.de> + +- Update to release 1.1.0 + * Preserve original MIME boundary when parsing and regenerating + messages + * POSIX platforms: avoid having undefined bytes in + generateRandomBytes result + * Avoid ODR violation resulting from different struct layouts + per translation unit + +------------------------------------------------------------------- Old: ---- wmime-1.0.0.tar.asc wmime-1.0.0.tar.zst New: ---- wmime-1.1.0.tar.asc wmime-1.1.0.tar.zst ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Other differences: ------------------ ++++++ wmime.spec ++++++ --- /var/tmp/diff_new_pack.5w5W9s/_old 2025-07-25 17:06:12.987508545 +0200 +++ /var/tmp/diff_new_pack.5w5W9s/_new 2025-07-25 17:06:12.987508545 +0200 @@ -18,7 +18,7 @@ Name: wmime %define lname libwmime2 -Version: 1.0.0 +Version: 1.1.0 Release: 0 Summary: Library for working with RFC 5322, MIME messages and IMAP/POP/SMTP License: GPL-3.0-or-later ++++++ _scmsync.obsinfo ++++++ --- /var/tmp/diff_new_pack.5w5W9s/_old 2025-07-25 17:06:13.019509871 +0200 +++ /var/tmp/diff_new_pack.5w5W9s/_new 2025-07-25 17:06:13.019509871 +0200 @@ -1,4 +1,4 @@ -mtime: 1737485421 -commit: 0c81b2a26110f82a4079721c5ec7e6ac44ebd9281bd6802a4c7bda1b7565ec88 +mtime: 1753398758 +commit: e9c0221f8d86012426ce089be9bfe5f1ca6882511e242f8bb59a8a118eb47f7f url: https://src.opensuse.org/jengelh/wmime ++++++ wmime-1.0.0.tar.zst -> wmime-1.1.0.tar.zst ++++++ diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/wmime-1.0.0/CMakeLists.txt new/wmime-1.1.0/CMakeLists.txt --- old/wmime-1.0.0/CMakeLists.txt 2025-01-21 19:32:13.000000000 +0100 +++ new/wmime-1.1.0/CMakeLists.txt 2025-07-21 12:30:34.000000000 +0200 @@ -36,7 +36,7 @@ # Package version number SET(VMIME_VERSION_MAJOR 1) -SET(VMIME_VERSION_MINOR 0) +SET(VMIME_VERSION_MINOR 1) SET(VMIME_VERSION_MICRO 0) # API version number (libtool) diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/wmime-1.0.0/src/vmime/body.cpp new/wmime-1.1.0/src/vmime/body.cpp --- old/wmime-1.0.0/src/vmime/body.cpp 2025-01-21 19:32:13.000000000 +0100 +++ new/wmime-1.1.0/src/vmime/body.cpp 2025-07-21 12:30:34.000000000 +0200 @@ -43,7 +43,8 @@ body::body() - : m_contents(make_shared <emptyContentHandler>()) { + : m_contents(make_shared <emptyContentHandler>()), + m_part(nullptr) { } @@ -381,6 +382,10 @@ m_contents = make_shared <streamContentHandler>(contentStream, length, enc); } + if (!boundary.empty()) { + m_boundary = boundary; + } + setParsedBounds(position, end); if (newPosition) { @@ -439,7 +444,7 @@ if (!m_part) { - boundary = generateRandomBoundaryString(); + boundary = m_boundary.empty() ? generateRandomBoundaryString() : m_boundary; } else { @@ -457,13 +462,13 @@ } else { // No boundary string specified - boundary = generateRandomBoundaryString(); + boundary = m_boundary.empty() ? generateRandomBoundaryString() : m_boundary; } } else { // No Content-Type (and no boundary string specified) - boundary = generateRandomBoundaryString(); + boundary = m_boundary.empty() ? generateRandomBoundaryString() : m_boundary; } } diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/wmime-1.0.0/src/vmime/body.hpp new/wmime-1.1.0/src/vmime/body.hpp --- old/wmime-1.0.0/src/vmime/body.hpp 2025-01-21 19:32:13.000000000 +0100 +++ new/wmime-1.1.0/src/vmime/body.hpp 2025-07-21 12:30:34.000000000 +0200 @@ -307,6 +307,7 @@ string m_prologText; string m_epilogText; + string m_boundary; shared_ptr <const contentHandler> m_contents; diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/wmime-1.0.0/src/vmime/platforms/posix/posixHandler.cpp new/wmime-1.1.0/src/vmime/platforms/posix/posixHandler.cpp --- old/wmime-1.0.0/src/vmime/platforms/posix/posixHandler.cpp 2025-01-21 19:32:13.000000000 +0100 +++ new/wmime-1.1.0/src/vmime/platforms/posix/posixHandler.cpp 2025-07-21 12:30:34.000000000 +0200 @@ -275,17 +275,20 @@ void posixHandler::generateRandomBytes(unsigned char* buffer, const unsigned int count) { int fd = open("/dev/urandom", O_RDONLY); + ssize_t have = 0; if (fd != -1) { - read(fd, buffer, count); + have = read(fd, buffer, count); close(fd); + if (have < 0) + have = 0; - } else { // fallback + } - for (unsigned int i = 0 ; i < count ; ++i) { - buffer[i] = static_cast <unsigned char>(rand() % 255); - } + // fallback + for (unsigned int i = have ; i < count ; ++i) { + buffer[i] = static_cast <unsigned char>(rand() % 256); } } diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/wmime-1.0.0/src/vmime/security/sasl/SASLContext.hpp new/wmime-1.1.0/src/vmime/security/sasl/SASLContext.hpp --- old/wmime-1.0.0/src/vmime/security/sasl/SASLContext.hpp 2025-01-21 19:32:13.000000000 +0100 +++ new/wmime-1.1.0/src/vmime/security/sasl/SASLContext.hpp 2025-07-21 12:30:34.000000000 +0200 @@ -30,6 +30,7 @@ #if VMIME_HAVE_MESSAGING_FEATURES && VMIME_HAVE_SASL_SUPPORT +#include <gsasl.h> #include "vmime/types.hpp" @@ -116,13 +117,7 @@ static const string getErrorMessage(const string& fname, const int code); - -#ifdef GSASL_VERSION Gsasl* m_gsaslContext; -#else - void* m_gsaslContext; -#endif // GSASL_VERSION - }; diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/wmime-1.0.0/src/vmime/security/sasl/SASLSession.hpp new/wmime-1.1.0/src/vmime/security/sasl/SASLSession.hpp --- old/wmime-1.0.0/src/vmime/security/sasl/SASLSession.hpp 2025-01-21 19:32:13.000000000 +0100 +++ new/wmime-1.1.0/src/vmime/security/sasl/SASLSession.hpp 2025-07-21 12:30:34.000000000 +0200 @@ -30,6 +30,7 @@ #if VMIME_HAVE_MESSAGING_FEATURES && VMIME_HAVE_SASL_SUPPORT +#include <gsasl.h> #include "vmime/types.hpp" @@ -155,18 +156,10 @@ shared_ptr <authenticator> m_auth; shared_ptr <SASLMechanism> m_mech; -#ifdef GSASL_VERSION Gsasl* m_gsaslContext; Gsasl_session* m_gsaslSession; static int gsaslCallback(Gsasl* ctx, Gsasl_session* sctx, Gsasl_property prop); -#else - void* m_gsaslContext; - void* m_gsaslSession; - - static int gsaslCallback(void* ctx, void* sctx, int prop); -#endif // GSASL_VERSION - };