archivers/rpm4: update to version 4.18.0

Major changes:
    * Add a new Sequoia-based OpenPGP backend
    * Documentation updates
    * Fix intermediate symlinks not verified (CVE-2021-35939)
    * Fix subkey binding signatures not checked on PGP public keys (CVE-2021-3521)
    * Refactor file and directory operations to use fd-based APIs throughout (CVE-2021-35938)
    * Unbreak lua 2 for extensions

Full release note: https://rpm.org/wiki/Releases/4.18.0.html

Also remove version requirement for Lua dependency in port, we just use lua.

PR:			267291
Reported by:	Brian Zou <zoujiaqing@gmail.com>
Security:	CVE-2021-35939
Security:	CVE-2021-3521
Security:	CVE-2021-35938
This commit is contained in:
Rodrigo Osorio 2022-11-23 17:09:28 +01:00
parent 3cc3656a60
commit 22f3de494a
7 changed files with 50 additions and 33 deletions

View File

@ -1,8 +1,7 @@
PORTNAME= rpm
PORTVERSION= 4.17.0
PORTREVISION= 2
PORTVERSION= 4.18.0
CATEGORIES= archivers
MASTER_SITES= http://ftp.rpm.org/releases/rpm-4.17.x/
MASTER_SITES= http://ftp.rpm.org/releases/rpm-${PORTVERSION:R}.x/
PKGNAMESUFFIX= 4
MAINTAINER= rodrigo@FreeBSD.org
@ -21,15 +20,16 @@ RUN_DEPENDS= bash:shells/bash \
gxargs:misc/findutils
USES= alias bdb sqlite cpe gmake iconv libarchive libtool \
lua:53+ pathfix pkgconfig shebangfix tar:bzip2
lua pathfix pkgconfig shebangfix tar:bzip2
USE_LDCONFIG= yes
GNU_CONFIGURE= yes
BINARY_ALIAS= sed=${LOCALBASE}/bin/gsed
SHEBANG_FILES= scripts/check-prereqs \
scripts/check-rpaths-worker scripts/pkgconfigdeps.sh \
scripts/fontconfig.prov scripts/perl.prov scripts/perl.req \
scripts/find-lang.sh scripts/ocamldeps.sh
scripts/fontconfig.prov scripts/perl.prov scripts/perl.req \
scripts/find-lang.sh scripts/ocamldeps.sh \
scripts/rpm_macros_provides.sh
CONFIGURE_ARGS= --enable-sqlite=yes\
--with-popt-prefix="${LOCALBASE}" \
--sysconfdir=${PREFIX}/etc \

View File

@ -1,3 +1,3 @@
TIMESTAMP = 1635434706
SHA256 (rpm-4.17.0.tar.bz2) = 2e0d220b24749b17810ed181ac1ed005a56bbb6bc8ac429c21f314068dc65e6a
SIZE (rpm-4.17.0.tar.bz2) = 4514138
TIMESTAMP = 1663679594
SHA256 (rpm-4.18.0.tar.bz2) = 2a17152d7187ab30edf2c2fb586463bdf6388de7b5837480955659e5e9054554
SIZE (rpm-4.18.0.tar.bz2) = 6600013

View File

@ -1,11 +0,0 @@
--- luaext/lrexlib.c.orig 2020-10-25 13:43:26 UTC
+++ luaext/lrexlib.c
@@ -32,7 +32,7 @@ static int rex_comp(lua_State *L)
regex_t *pr = (regex_t *)lua_newuserdata(L, sizeof(regex_t));
pattern = luaL_checklstring(L, 1, &l);
#ifdef REG_BASIC
- pr->re_endp = pattern + lua_strlen(L, 1);
+ pr->re_endp = pattern + lua_rawlen(L, (1));
res = regcomp(pr, pattern, REG_EXTENDED | REG_PEND);
#else
res = regcomp(pr, pattern, REG_EXTENDED);

View File

@ -1,11 +1,11 @@
--- misc/fts.c.orig 2020-10-25 13:22:41 UTC
--- misc/fts.c.orig 2022-04-07 11:13:19 UTC
+++ misc/fts.c
@@ -32,12 +32,14 @@ static char sccsid[] = "@(#)fts.c 8.6 (Berkeley) 8/14/
#endif /* LIBC_SCCS and not lint */
@@ -37,12 +37,14 @@ static char sccsid[] = "@(#)fts.c 8.6 (Berkeley) 8/14/
#endif
/* Conditional to set up proper fstat64 implementation */
-#if defined(hpux) || defined(sun)
+#if defined(hpux) || defined(sun) || defined(__FreeBSD__)
-#if defined(hpux) || defined(sun) || (defined(__APPLE__) && defined(_DARWIN_FEATURE_ONLY_64_BIT_INODE))
+#if defined(hpux) || defined(sun) || defined(__FreeBSD__) || (defined(__APPLE__) && defined(_DARWIN_FEATURE_ONLY_64_BIT_INODE))
# define FTS_FSTAT64(_fd, _sbp) fstat((_fd), (_sbp))
#else
# define FTS_FSTAT64(_fd, _sbp) fstat64((_fd), (_sbp))
@ -16,7 +16,7 @@
#if defined(_LIBC)
#include <sys/param.h>
#include <include/sys/stat.h>
@@ -51,7 +53,7 @@ static char sccsid[] = "@(#)fts.c 8.6 (Berkeley) 8/14/
@@ -56,7 +58,7 @@ static char sccsid[] = "@(#)fts.c 8.6 (Berkeley) 8/14/
#else
/* Conditionals for working around non-GNU environments */
@ -25,8 +25,8 @@
# define _INCLUDE_POSIX_SOURCE
# define __errno_location() (&errno)
# define dirfd(dirp) -1
@@ -65,13 +67,11 @@ static char sccsid[] = "@(#)fts.c 8.6 (Berkeley) 8/14/
# define __errno_location() (__error())
@@ -73,13 +75,11 @@ static char sccsid[] = "@(#)fts.c 8.6 (Berkeley) 8/14/
#endif
#endif
-#include "system.h"

View File

@ -0,0 +1,9 @@
--- tools/rpmuncompress.c.orig 2022-08-30 11:42:23 UTC
+++ tools/rpmuncompress.c
@@ -1,5 +1,6 @@
#include "system.h"
+#include <sys/wait.h>
#include <popt.h>
#include <errno.h>
#include <stdio.h>

View File

@ -6,6 +6,7 @@ bin/rpmbuild
bin/rpmdb
bin/rpmgraph
bin/rpmkeys
bin/rpmlua
bin/rpmquery
bin/rpmsign
bin/rpmspec
@ -18,6 +19,7 @@ include/rpm/rpmbase64.h
include/rpm/rpmbuild.h
include/rpm/rpmcallback.h
include/rpm/rpmcli.h
include/rpm/rpmcrypto.h
include/rpm/rpmdb.h
include/rpm/rpmds.h
include/rpm/rpmfc.h
@ -49,16 +51,16 @@ include/rpm/rpmutil.h
include/rpm/rpmver.h
lib/librpm.so
lib/librpm.so.9
lib/librpm.so.9.2.0
lib/librpm.so.9.3.0
lib/librpmbuild.so
lib/librpmbuild.so.9
lib/librpmbuild.so.9.2.0
lib/librpmbuild.so.9.3.0
lib/librpmio.so
lib/librpmio.so.9
lib/librpmio.so.9.2.0
lib/librpmio.so.9.3.0
lib/librpmsign.so
lib/librpmsign.so.9
lib/librpmsign.so.9.2.0
lib/librpmsign.so.9.3.0
%%PYTHON%%%%PYTHON_SITELIBDIR%%/rpm/__init__.py
%%PYTHON%%%%PYTHON_SITELIBDIR%%/rpm/_rpm.so
%%PYTHON%%%%PYTHON_SITELIBDIR%%/rpm/transaction.py
@ -66,8 +68,8 @@ lib/librpmsign.so.9.2.0
%%PLUGINS%%lib/rpm-plugins/prioreset.so
%%PLUGINS%%lib/rpm-plugins/syslog.so
%%PLUGINS%%lib/rpm-plugins/systemd_inhibit.so
lib/rpm/brp-elfperms
lib/rpm/brp-compress
lib/rpm/brp-elfperms
lib/rpm/brp-remove-la-files
lib/rpm/brp-strip
lib/rpm/brp-strip-comment-note
@ -86,6 +88,7 @@ lib/rpm/fileattrs/ocaml.attr
lib/rpm/fileattrs/perl.attr
lib/rpm/fileattrs/perllib.attr
lib/rpm/fileattrs/pkgconfig.attr
lib/rpm/fileattrs/rpm_macro.attr
lib/rpm/fileattrs/script.attr
lib/rpm/find-lang.sh
lib/rpm/find-provides
@ -126,6 +129,7 @@ lib/rpm/platform/i586-%%OPSYS%%/macros
lib/rpm/platform/i686-%%OPSYS%%/macros
lib/rpm/platform/ia32e-%%OPSYS%%/macros
lib/rpm/platform/ia64-%%OPSYS%%/macros
lib/rpm/platform/loongarch64-%%OPSYS%%/macros
lib/rpm/platform/m68k-%%OPSYS%%/macros
lib/rpm/platform/mips-%%OPSYS%%/macros
lib/rpm/platform/mips64-%%OPSYS%%/macros
@ -167,11 +171,13 @@ lib/rpm/rpm.daily
lib/rpm/rpm.log
lib/rpm/rpm.supp
lib/rpm/rpm2cpio.sh
lib/rpm/rpm_macros_provides.sh
lib/rpm/rpmdb_dump
lib/rpm/rpmdb_load
lib/rpm/rpmdeps
lib/rpm/rpmpopt-%%VERSION%%
lib/rpm/rpmrc
lib/rpm/rpmuncompress
lib/rpm/script.req
lib/rpm/tgpg
libdata/pkgconfig/rpm.pc
@ -197,6 +203,7 @@ man/man8/rpmdb.8.gz
man/man8/rpmdeps.8.gz
man/man8/rpmgraph.8.gz
man/man8/rpmkeys.8.gz
man/man8/rpmlua.8.gz
man/man8/rpmsign.8.gz
man/man8/rpmspec.8.gz
man/pl/man1/gendiff.1.gz
@ -226,6 +233,7 @@ man/sk/man8/rpm.8.gz
%%NLS%%share/locale/is/LC_MESSAGES/rpm.mo
%%NLS%%share/locale/it/LC_MESSAGES/rpm.mo
%%NLS%%share/locale/ja/LC_MESSAGES/rpm.mo
%%NLS%%share/locale/ka/LC_MESSAGES/rpm.mo
%%NLS%%share/locale/ko/LC_MESSAGES/rpm.mo
%%NLS%%share/locale/ms/LC_MESSAGES/rpm.mo
%%NLS%%share/locale/nb/LC_MESSAGES/rpm.mo

View File

@ -0,0 +1,11 @@
--- Cargo.toml.orig 2021-12-07 15:10:37.000000000 -0500
+++ Cargo.toml 2022-09-29 22:29:56.615602000 -0400
@@ -37,7 +37,7 @@
librespot-audio = { version = "0.2.0", default-features=false, features = ["with-tremor"] }
librespot-playback = { version = "0.2.0", default-features=false }
librespot-core = { version = "0.2.0"}
-librespot-connect = { version = "0.2.0"}
+librespot-connect = { version = "0.2.0", features = ["with-dns-sd"]}
toml = "0.5.8"
color-eyre = "0.5"