git: a369afe27859 - main - security/qgpgme: Update to 2.2.0
Jason E. Hale <[email protected]>
| Newsgroups | gmane.os.freebsd.devel.cvs.ports |
|---|---|
| Message-ID | <[email protected]> |
The branch main has been updated by jhale: URL: https://cgit.FreeBSD.org/ports/commit/?id=a369afe27859bbd4751cd1d3c36c1daccd83eae2 commit a369afe27859bbd4751cd1d3c36c1daccd83eae2 Author: Jason E. Hale <[email protected]> AuthorDate: 2026-08-08 02:40:22 +0000 Commit: Jason E. Hale <[email protected]> CommitDate: 2026-08-08 02:40:22 +0000 security/qgpgme: Update to 2.2.0 --- security/qgpgme/Makefile | 2 +- security/qgpgme/distinfo | 6 +++--- security/qgpgme/files/patch-src_util.h | 19 +++++++++++++++++++ security/qgpgme/pkg-plist | 6 +++++- 4 files changed, 28 insertions(+), 5 deletions(-) diff --git a/security/qgpgme/Makefile b/security/qgpgme/Makefile index d48336f5acd0..1abb48a39aee 100644 --- a/security/qgpgme/Makefile +++ b/security/qgpgme/Makefile @@ -1,5 +1,5 @@ PORTNAME= qgpgme -PORTVERSION= 2.1.0 +PORTVERSION= 2.2.0 CATEGORIES= security MASTER_SITES= GNUPG PKGNAMESUFFIX= -${FLAVOR} diff --git a/security/qgpgme/distinfo b/security/qgpgme/distinfo index 410a1fad35f6..ba7c58ed450d 100644 --- a/security/qgpgme/distinfo +++ b/security/qgpgme/distinfo @@ -1,3 +1,3 @@ -TIMESTAMP = 1779694062 -SHA256 (qgpgme-2.1.0.tar.xz) = 5b32feb3eee4a7f9402d22b7206480908dc43bb4df382917c075c512116f8f08 -SIZE (qgpgme-2.1.0.tar.xz) = 190968 +TIMESTAMP = 1785816659 +SHA256 (qgpgme-2.2.0.tar.xz) = 3c6290ff5bfeab981bb48b2951703761f1dbea640cb637beb3560d5fefb0e0b3 +SIZE (qgpgme-2.2.0.tar.xz) = 194068 diff --git a/security/qgpgme/files/patch-src_util.h b/security/qgpgme/files/patch-src_util.h new file mode 100644 index 000000000000..ace255301da2 --- /dev/null +++ b/security/qgpgme/files/patch-src_util.h @@ -0,0 +1,19 @@ +Fix out-of-bounds access on empty std::string_view in _qgpgme::split. + +When testing an empty string, the loop attempts to evaluate s[start] +(where start = 0) before passing it to std::addressof. With libc++ +assertions enabled, accessing index 0 of a size 0 std::string_view +triggers a fatal bounds violation (SIGILL). Replacing the pointer +arithmetic with substr() safely bypasses the undefined behavior. + +--- src/util.h.orig 2026-07-20 13:07:38 UTC ++++ src/util.h +@@ -76,7 +76,7 @@ static inline std::vector<std::string_view> split(cons + if (end == s.npos) { + end = s.size(); + } +- result.emplace_back(std::addressof(s[start]), end - start); ++ result.emplace_back(s.substr(start, end - start)); + start = end + 1; + } while (end != s.size()); + return result; diff --git a/security/qgpgme/pkg-plist b/security/qgpgme/pkg-plist index 19e6f4757371..1df8e6117f64 100644 --- a/security/qgpgme/pkg-plist +++ b/security/qgpgme/pkg-plist @@ -1,3 +1,5 @@ +include/qgpgme-%%QGPGME_INCLUDE_SUFFIX%%/QGpgME/ADQueryJob +include/qgpgme-%%QGPGME_INCLUDE_SUFFIX%%/QGpgME/ADQueryResult include/qgpgme-%%QGPGME_INCLUDE_SUFFIX%%/QGpgME/AbstractImportJob include/qgpgme-%%QGPGME_INCLUDE_SUFFIX%%/QGpgME/AddExistingSubkeyJob include/qgpgme-%%QGPGME_INCLUDE_SUFFIX%%/QGpgME/AddUserIDJob @@ -50,6 +52,8 @@ include/qgpgme-%%QGPGME_INCLUDE_SUFFIX%%/QGpgME/WKSPublishJob include/qgpgme-%%QGPGME_INCLUDE_SUFFIX%%/qgpgme/abstractimportjob.h include/qgpgme-%%QGPGME_INCLUDE_SUFFIX%%/qgpgme/addexistingsubkeyjob.h include/qgpgme-%%QGPGME_INCLUDE_SUFFIX%%/qgpgme/adduseridjob.h +include/qgpgme-%%QGPGME_INCLUDE_SUFFIX%%/qgpgme/adqueryjob.h +include/qgpgme-%%QGPGME_INCLUDE_SUFFIX%%/qgpgme/adqueryresult.h include/qgpgme-%%QGPGME_INCLUDE_SUFFIX%%/qgpgme/changeexpiryjob.h include/qgpgme-%%QGPGME_INCLUDE_SUFFIX%%/qgpgme/changeownertrustjob.h include/qgpgme-%%QGPGME_INCLUDE_SUFFIX%%/qgpgme/changepasswdjob.h @@ -106,4 +110,4 @@ lib/cmake/QGpgme%%QGPGME_CMAKE_SUFFIX%%/QGpgme%%QGPGME_CMAKE_SUFFIX%%Targets-%%C lib/cmake/QGpgme%%QGPGME_CMAKE_SUFFIX%%/QGpgme%%QGPGME_CMAKE_SUFFIX%%Targets.cmake lib/libqgpgme%%QGPGME_LIB_SUFFIX%%.so lib/libqgpgme%%QGPGME_LIB_SUFFIX%%.so.15 -lib/libqgpgme%%QGPGME_LIB_SUFFIX%%.so.15.8.0 +lib/libqgpgme%%QGPGME_LIB_SUFFIX%%.so.15.9.0