Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
15 changes: 10 additions & 5 deletions package/bind/Config.in
Original file line number Diff line number Diff line change
@@ -1,10 +1,14 @@
config BR2_PACKAGE_BIND
bool "bind"
depends on BR2_USE_MMU # fork(), libuv
depends on BR2_USE_MMU # fork(), libcap, libuv
depends on BR2_TOOLCHAIN_HAS_SYNC_4 # libuv
depends on BR2_TOOLCHAIN_HAS_THREADS_NPTL # libuv
depends on BR2_TOOLCHAIN_HAS_THREADS # liburcu, libuv
depends on BR2_INSTALL_LIBSTDCPP # liburcu
depends on !BR2_STATIC_LIBS # libuv
depends on BR2_TOOLCHAIN_GCC_AT_LEAST_4_9 # libuv
depends on BR2_PACKAGE_LIBURCU_ARCH_SUPPORTS # liburcu
select BR2_PACKAGE_LIBCAP
select BR2_PACKAGE_LIBURCU
select BR2_PACKAGE_LIBUV
select BR2_PACKAGE_OPENSSL
help
Expand Down Expand Up @@ -44,8 +48,9 @@ config BR2_PACKAGE_BIND_TOOLS

endif

comment "bind needs a toolchain w/ NPTL, dynamic library, gcc >= 4.9"
comment "bind needs a toolchain w/ threads, dynamic library, C++, gcc >= 4.9"
depends on BR2_USE_MMU
depends on BR2_TOOLCHAIN_HAS_SYNC_4
depends on !BR2_TOOLCHAIN_HAS_THREADS_NPTL || BR2_STATIC_LIBS \
|| !BR2_TOOLCHAIN_GCC_AT_LEAST_4_9
depends on !BR2_TOOLCHAIN_HAS_THREADS || BR2_STATIC_LIBS \
|| BR2_INSTALL_LIBSTDCPP || !BR2_TOOLCHAIN_GCC_AT_LEAST_4_9 \
|| BR2_PACKAGE_LIBURCU_ARCH_SUPPORTS
4 changes: 2 additions & 2 deletions package/bind/bind.hash
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
# Verified from https://ftp.isc.org/isc/bind9/9.18.50/bind-9.18.50.tar.xz.asc
# Verified from https://ftp.isc.org/isc/bind9/9.20.24/bind-9.20.24.tar.xz.asc
# with key D99CCEAF879747014F038D63182E23579462EFAA
sha256 a24f93be94712a8c11752294410f2f8a2510ec7fdc931d207fc61cdf30e54f4d bind-9.18.50.tar.xz
sha256 989fef1fc88ea59d04cd86f854dca5a4616a20a9968bcdde3c1a3668ab36be08 bind-9.20.24.tar.xz
sha256 9734825d67a3ac967b2c2f7c9a83c9e5db1c2474dbe9599157c3a4188749ebd4 COPYRIGHT
4 changes: 2 additions & 2 deletions package/bind/bind.mk
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,7 @@
#
################################################################################

BIND_VERSION = 9.18.50
BIND_VERSION = 9.20.24
BIND_SOURCE= bind-$(BIND_VERSION).tar.xz
BIND_SITE = https://ftp.isc.org/isc/bind9/$(BIND_VERSION)
BIND_INSTALL_STAGING = YES
Expand Down Expand Up @@ -32,7 +32,7 @@ BIND_CONF_OPTS = \
--disable-static \
--with-openssl=$(STAGING_DIR)/usr

BIND_DEPENDENCIES = host-pkgconf libuv openssl
BIND_DEPENDENCIES = host-pkgconf libcap liburcu libuv openssl

BIND_CFLAGS = $(TARGET_CFLAGS)

Expand Down
4 changes: 2 additions & 2 deletions package/ghostscript/ghostscript.hash
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
# From https://github.com/ArtifexSoftware/ghostpdl-downloads/releases/download/gs10070/SHA512SUMS
sha512 1c2a14951223c975a53bd9767c28bd3a6e420c385a5e0d7a60a5ff5b091bc027929c815bf57cddf97611e8d265ece1c219321737f2cabb5646685c6e8cdb85c9 ghostscript-10.07.0.tar.xz
# From https://github.com/ArtifexSoftware/ghostpdl-downloads/releases/download/gs10071/SHA512SUMS
sha512 7b38ca10fa7ab648924f7db3e2e4933c3d18e04c8db1346fca4d4f7b85dfbd7888d5fc46f413613b46429fb47b675a593994c25e50e9de4dcdbee3bdd8a5e449 ghostscript-10.07.1.tar.xz

# Hash for license file:
sha256 8ce064f423b7c24a011b6ebf9431b8bf9861a5255e47c84bfb23fc526d030a8b LICENSE
2 changes: 1 addition & 1 deletion package/ghostscript/ghostscript.mk
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,7 @@
#
################################################################################

GHOSTSCRIPT_VERSION = 10.07.0
GHOSTSCRIPT_VERSION = 10.07.1
GHOSTSCRIPT_SOURCE = ghostscript-$(GHOSTSCRIPT_VERSION).tar.xz
GHOSTSCRIPT_SITE = https://github.com/ArtifexSoftware/ghostpdl-downloads/releases/download/gs$(subst .,,$(GHOSTSCRIPT_VERSION))
GHOSTSCRIPT_LICENSE = AGPL-3.0
Expand Down
2 changes: 1 addition & 1 deletion package/mongoose/mongoose.hash
Original file line number Diff line number Diff line change
@@ -1,3 +1,3 @@
# Locally computed:
sha256 d4ddbd12c12f223abefcc0a74417a638ae5c118d7cf10ba546553c6b0e0b5ada mongoose-7.21.tar.gz
sha256 87727cd2c240ff559b16e9710d44b61ba3513dbee50428bd8ee1596d7c58460a mongoose-7.22.tar.gz
sha256 f0d9cfd6f7d92f6ec061a5fb2882f67d2521a151bf09a637c33ca6181834b048 LICENSE
2 changes: 1 addition & 1 deletion package/mongoose/mongoose.mk
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,7 @@
#
################################################################################

MONGOOSE_VERSION = 7.21
MONGOOSE_VERSION = 7.22
MONGOOSE_SITE = $(call github,cesanta,mongoose,$(MONGOOSE_VERSION))
MONGOOSE_LICENSE = GPL-2.0
MONGOOSE_LICENSE_FILES = LICENSE
Expand Down
Original file line number Diff line number Diff line change
@@ -0,0 +1,59 @@
From 2dacaf3eea391e3bbf48e7d3ecce02cafe045b6d Mon Sep 17 00:00:00 2001
From: Karel Zak <kzak@redhat.com>
Date: Wed, 27 May 2026 15:15:22 +0200
Subject: [PATCH] loopdev: use openat2(RESOLVE_NO_SYMLINKS) for backing file

Use ul_open_no_symlinks() instead of open(O_NOFOLLOW) when
LOOPDEV_FL_NOFOLLOW is set. O_NOFOLLOW only rejects symlinks at the
last path component, but TOCTOU attacks swap intermediate components.
openat2(RESOLVE_NO_SYMLINKS) rejects symlinks at any component.

Upstream: https://git.kernel.org/pub/scm/utils/util-linux/util-linux.git/commit/?h=stable/v2.41&id=2dacaf3eea391e3bbf48e7d3ecce02cafe045b6d
CVE: CVE-2026-27456
Signed-off-by: Karel Zak <kzak@redhat.com>
(cherry picked from commit 119d23f1e3f55cf10e3c66dab80fc308c9f26456)
Signed-off-by: Giulio Benetti <giulio.benetti@benettiengineering.com>
[Fiona: add CVE trailer]
Signed-off-by: Fiona Klute <fiona.klute@gmx.de>
---
lib/loopdev.c | 23 ++++++++++++++---------
1 file changed, 14 insertions(+), 9 deletions(-)

diff --git a/lib/loopdev.c b/lib/loopdev.c
index 76685be70..31377fc9a 100644
--- a/lib/loopdev.c
+++ b/lib/loopdev.c
@@ -1412,16 +1412,21 @@ int loopcxt_setup_device(struct loopdev_cxt *lc)
if (lc->config.info.lo_flags & LO_FLAGS_DIRECT_IO)
flags |= O_DIRECT;
if (lc->flags & LOOPDEV_FL_NOFOLLOW)
- flags |= O_NOFOLLOW;
-
- if ((file_fd = open(lc->filename, mode | flags)) < 0) {
- if (mode != O_RDONLY && (errno == EROFS || errno == EACCES))
- file_fd = open(lc->filename, (mode = O_RDONLY) | flags);
+ file_fd = ul_open_no_symlinks(lc->filename, mode | flags, 0);
+ else
+ file_fd = open(lc->filename, mode | flags);

- if (file_fd < 0) {
- DBG(SETUP, ul_debugobj(lc, "open backing file failed: %m"));
- return -errno;
- }
+ if (file_fd < 0 && mode != O_RDONLY
+ && (errno == EROFS || errno == EACCES)) {
+ mode = O_RDONLY;
+ if (lc->flags & LOOPDEV_FL_NOFOLLOW)
+ file_fd = ul_open_no_symlinks(lc->filename, mode | flags, 0);
+ else
+ file_fd = open(lc->filename, mode | flags);
+ }
+ if (file_fd < 0) {
+ DBG(SETUP, ul_debugobj(lc, "open backing file failed: %m"));
+ return -errno;
}
DBG(SETUP, ul_debugobj(lc, "backing file open: OK"));

--
2.47.3

18 changes: 6 additions & 12 deletions package/util-linux/Config.in
Original file line number Diff line number Diff line change
Expand Up @@ -210,17 +210,15 @@ config BR2_PACKAGE_UTIL_LINUX_LOGIN
depends on BR2_ENABLE_LOCALE # linux-pam
depends on BR2_USE_WCHAR # linux-pam
depends on !BR2_STATIC_LIBS # linux-pam
depends on !BR2_TOOLCHAIN_USES_MUSL # linux-pam
depends on BR2_USE_MMU # fork(), linux-pam
depends on BR2_TOOLCHAIN_GCC_AT_LEAST_4_9 # linux-pam
select BR2_PACKAGE_LINUX_PAM
help
Begin a session on the system

comment "login needs a uClibc or glibc toolchain w/ wchar, locale, dynamic library, gcc >= 4.9"
comment "login needs a toolchain w/ wchar, locale, dynamic library, gcc >= 4.9"
depends on !(BR2_ENABLE_LOCALE && BR2_USE_WCHAR) \
|| BR2_STATIC_LIBS \
|| BR2_TOOLCHAIN_USES_MUSL \
|| !BR2_TOOLCHAIN_GCC_AT_LEAST_4_9

config BR2_PACKAGE_UTIL_LINUX_LOSETUP
Expand All @@ -233,15 +231,15 @@ config BR2_PACKAGE_UTIL_LINUX_LOSETUP
config BR2_PACKAGE_UTIL_LINUX_LSFD
bool "lsfd"
depends on BR2_USE_MMU # libsmartcols
depends on BR2_TOOLCHAIN_HEADERS_AT_LEAST_3_19
depends on BR2_TOOLCHAIN_HEADERS_AT_LEAST_4_15
depends on !BR2_TOOLCHAIN_USES_UCLIBC # process_vm_readv
select BR2_PACKAGE_UTIL_LINUX_LIBSMARTCOLS
help
List file descriptors (modern replacement for lsof)

comment "lsfd needs a musl or glibc toolchain w/ headers >= 3.19"
comment "lsfd needs a musl or glibc toolchain w/ headers >= 4.15"
depends on BR2_USE_MMU
depends on !BR2_TOOLCHAIN_HEADERS_AT_LEAST_3_19 \
depends on !BR2_TOOLCHAIN_HEADERS_AT_LEAST_4_15 \
|| BR2_TOOLCHAIN_USES_UCLIBC

config BR2_PACKAGE_UTIL_LINUX_LSLOGINS
Expand Down Expand Up @@ -366,7 +364,6 @@ config BR2_PACKAGE_UTIL_LINUX_RUNUSER
bool "runuser"
depends on (BR2_ENABLE_LOCALE && BR2_USE_WCHAR) # linux-pam
depends on !BR2_STATIC_LIBS
depends on !BR2_TOOLCHAIN_USES_MUSL # linux-pam
depends on BR2_USE_MMU # fork(), linux-pam
depends on BR2_TOOLCHAIN_GCC_AT_LEAST_4_9 # linux-pam
select BR2_PACKAGE_LINUX_PAM
Expand All @@ -375,10 +372,9 @@ config BR2_PACKAGE_UTIL_LINUX_RUNUSER
to ask for a password, because it may be executed by the root
user only)

comment "runuser needs a uClibc or glibc toolchain w/ wchar, locale, dynamic library, gcc >= 4.9"
comment "runuser needs a toolchain w/ wchar, locale, dynamic library, gcc >= 4.9"
depends on !(BR2_ENABLE_LOCALE && BR2_USE_WCHAR) \
|| BR2_STATIC_LIBS \
|| BR2_TOOLCHAIN_USES_MUSL \
|| !BR2_TOOLCHAIN_GCC_AT_LEAST_4_9

config BR2_PACKAGE_UTIL_LINUX_SCHEDUTILS
Expand Down Expand Up @@ -411,17 +407,15 @@ config BR2_PACKAGE_UTIL_LINUX_SU
bool "su"
depends on (BR2_ENABLE_LOCALE && BR2_USE_WCHAR) # linux-pam
depends on !BR2_STATIC_LIBS
depends on !BR2_TOOLCHAIN_USES_MUSL # linux-pam
depends on BR2_USE_MMU # fork(), linux-pam
depends on BR2_TOOLCHAIN_GCC_AT_LEAST_4_9 # linux-pam
select BR2_PACKAGE_LINUX_PAM
help
Run a command with substitute user and group ID

comment "su needs a uClibc or glibc toolchain w/ wchar, locale, dynamic library, gcc >= 4.9"
comment "su needs a toolchain w/ wchar, locale, dynamic library, gcc >= 4.9"
depends on !(BR2_ENABLE_LOCALE && BR2_USE_WCHAR) \
|| BR2_STATIC_LIBS \
|| BR2_TOOLCHAIN_USES_MUSL \
|| !BR2_TOOLCHAIN_GCC_AT_LEAST_4_9

config BR2_PACKAGE_UTIL_LINUX_SULOGIN
Expand Down