HardenedBSD/src f125cd2share/man/man4 igc.4, share/man/man9 pci.9

Merge remote-tracking branch 'rad/hardened/15-stable/main' into hardened/15-stable/pledge
DeltaFile
+153-54sys/dev/igc/if_igc.c
+21-3share/man/man4/igc.4
+2-18sys/compat/linuxkpi/common/include/linux/pci.h
+20-0sys/dev/igc/igc_mac.c
+18-1share/man/man9/pci.9
+19-0sys/dev/pci/pci.c
+233-767 files not shown
+244-8813 files

HardenedBSD/src 28f8e27share/man/man4 igc.4, share/man/man9 pci.9

Merge branch 'freebsd/15-stable/main' into hardened/15-stable/main
DeltaFile
+153-54sys/dev/igc/if_igc.c
+21-3share/man/man4/igc.4
+2-18sys/compat/linuxkpi/common/include/linux/pci.h
+20-0sys/dev/igc/igc_mac.c
+18-1share/man/man9/pci.9
+19-0sys/dev/pci/pci.c
+233-767 files not shown
+244-8813 files

HardenedBSD/ports 9bbf4a3databases/turso distinfo, deskutils/taskwarrior Makefile.crates distinfo

Merge branch 'freebsd/main' into hardenedbsd/main
DeltaFile
+966-77misc/nanocoder/pkg-plist
+699-5deskutils/taskwarrior/distinfo
+348-0deskutils/taskwarrior/Makefile.crates
+187-133misc/nanocoder/files/package-lock.json
+81-57databases/turso/distinfo
+132-0misc/py-pytorch/files/example.py
+2,413-27277 files not shown
+3,105-60683 files

LLVM/project 051c492clang/test/SemaCXX ms-ctor-closure.cpp

[clang][test] Remove an uninitialized read in a test case (#223120)

This test case was added in
https://github.com/llvm/llvm-project/pull/222212. Its purpose is to
check that explicit constructor calls work at compile time.

However, the test case left var.a uninitialized and the copy constructor
reads an unitialized value. MSVC diagnoses this, but clang currently
fails to do so.

Change the test case to remove the unrelated problem of an uninitialized
read.
DeltaFile
+4-3clang/test/SemaCXX/ms-ctor-closure.cpp
+4-31 files

OpenBSD/src r2AlaC2usr.sbin/fw_update fw_update.sh

   fw_update: Make tar skip files outside expected locations

   tar(1) strips ".." path components, but this happens after globbing is
   applied to the file parameter. This meant tar's -s replacements and the
   file parameter examined different strings, meaning a specially
   constructed archive could write outside the expected locations. Use
   tar's documented order of -s expressions to skip everything else.
VersionDeltaFile
1.71+2-1usr.sbin/fw_update/fw_update.sh
+2-11 files

NetBSD/pkgsrc NqC8w1uwww/py-jupyterlab Makefile

   py-jupyterlab: fix tools
VersionDeltaFile
1.29+2-2www/py-jupyterlab/Makefile
+2-21 files

NetBSD/othersrc iCPwSeXusr.bin/gooeymux term.c

   make sure we update the scrollbar when resetting on keyboard input
VersionDeltaFile
1.7+2-3usr.bin/gooeymux/term.c
+2-31 files

FreeNAS/freenas 56424ffsrc/middlewared/middlewared/api/base/handler full_admin.py, src/middlewared/middlewared/pytest/unit/api test_api_structure.py

NAS-142160 / 27.0.0-BETA.1 / Restrict mutation of pass-through config fields to FULL_ADMIN (#19553)

Several public API fields pass caller-supplied text straight through to
a root command line or to a privileged daemon's configuration file,
handing the caller a capability the role guarding the endpoint was never
meant to grant. `rsynctask.extra` becomes rsync flags, where `-e` names
the program rsync spawns; `ssh.options` is interpolated verbatim into
`sshd_config`; `ups.shutdowncmd` is what upsmon runs as root. Two
shipped roles reach one of these with no custom privilege configured:
`REPLICATION_ADMIN` reaches `rsynctask.extra`, and `SHARING_ADMIN`
reaches `ftp.options`.

A new `FullAdmin[...]` marker on the API model restricts mutation of
such a field to callers holding `FULL_ADMIN`. Enforcement lives in
`CRUDService.create`, `CRUDService.update` and `ConfigService.update`,
which already receive `app`, so marking the field is all a plugin has to
do. `cloudsync.list_directory` and `cloudsync.sync_onetime` do not route
through those wrappers and call the helper themselves; a unit test fails
the build if a marked field is ever left with no enforcement path.

    [132 lines not shown]
DeltaFile
+336-0src/middlewared/middlewared/pytest/unit/api/base/test_full_admin.py
+163-0src/middlewared/middlewared/api/base/handler/full_admin.py
+115-0src/middlewared/middlewared/pytest/unit/api/test_api_structure.py
+112-0src/middlewared/middlewared/utils/privilege.py
+82-11tests/api2/test_account_privilege_role_forbidden_fields.py
+86-0src/middlewared/middlewared/pytest/unit/api/base/types/test_single_line_string.py
+894-1135 files not shown
+1,471-12141 files

LLVM/project 7a7cea9lld/ELF SymbolTable.h SymbolTable.cpp

[ELF] Version script: simplify wildcard matching. NFC (#223202)

Replace a loop over non-"*" wildcard patterns and another loop over "*"
with a single loop that calls the inlined
`SymbolTable::assignWildcardVersion`.
DeltaFile
+52-50lld/ELF/SymbolTable.cpp
+0-1lld/ELF/SymbolTable.h
+52-512 files

FreeBSD/ports 8ef1469www/ilias Makefile distinfo

www/ilias: Update to 11.4
DeltaFile
+3-3www/ilias/distinfo
+1-1www/ilias/Makefile
+4-42 files

HardenedBSD/ports 8ef1469www/ilias Makefile distinfo

www/ilias: Update to 11.4
DeltaFile
+3-3www/ilias/distinfo
+1-1www/ilias/Makefile
+4-42 files

FreeBSD/ports aa688b1databases/turso Makefile Makefile.crates

databases/turso: Update to 0.7.2
DeltaFile
+81-57databases/turso/distinfo
+39-27databases/turso/Makefile.crates
+3-2databases/turso/Makefile
+123-863 files

HardenedBSD/ports aa688b1databases/turso Makefile Makefile.crates

databases/turso: Update to 0.7.2
DeltaFile
+81-57databases/turso/distinfo
+39-27databases/turso/Makefile.crates
+3-2databases/turso/Makefile
+123-863 files

FreeBSD/ports 03e134bsecurity/vuxml/vuln 2026.xml

security/vuxml: document Gitlab vulnerabilities
DeltaFile
+63-0security/vuxml/vuln/2026.xml
+63-01 files

HardenedBSD/ports 03e134bsecurity/vuxml/vuln 2026.xml

security/vuxml: document Gitlab vulnerabilities
DeltaFile
+63-0security/vuxml/vuln/2026.xml
+63-01 files

LLVM/project 745ff71llvm/lib/Target/RISCV RISCVInstrInfo.cpp RISCVISelLowering.cpp, llvm/lib/Target/RISCV/GISel RISCVInstructionSelector.cpp

[RISCV] Consistently use RISCVSubtarget::is64Bit() instead of isRV32/isRV64. (#223038)

99% of code uses RISCVSubtarget::is64Bit().

Maybe we should consider removing is64Bit(), and using isRV64() instead
but right now I think we should be consistent.
DeltaFile
+3-3llvm/lib/Target/RISCV/GISel/RISCVInstructionSelector.cpp
+1-2llvm/lib/Target/RISCV/RISCVTargetTransformInfo.cpp
+1-1llvm/lib/Target/RISCV/RISCVInstrInfo.cpp
+1-1llvm/lib/Target/RISCV/RISCVISelLowering.cpp
+6-74 files

HardenedBSD/ports ce0437dgraphics/shaderc Makefile distinfo

graphics/shaderc: Update to 2026.4

Changelog: https://github.com/google/shaderc/blob/v2026.4/CHANGES

Reported by:    portscout
DeltaFile
+5-5graphics/shaderc/distinfo
+2-2graphics/shaderc/Makefile
+7-72 files

FreeBSD/ports ce0437dgraphics/shaderc Makefile distinfo

graphics/shaderc: Update to 2026.4

Changelog: https://github.com/google/shaderc/blob/v2026.4/CHANGES

Reported by:    portscout
DeltaFile
+5-5graphics/shaderc/distinfo
+2-2graphics/shaderc/Makefile
+7-72 files

HardenedBSD/ports d07d9c0devel Makefile, devel/rust-cxxbridge pkg-descr Makefile.crates

devel/rust-cxxbridge: New port

cxxbridge generates the C++ side of the cxx bridge and is required
at build time by projects that use corrosion's
corrosion_add_cxxbridge() without network access.
DeltaFile
+45-0devel/rust-cxxbridge/distinfo
+29-0devel/rust-cxxbridge/Makefile
+22-0devel/rust-cxxbridge/Makefile.crates
+3-0devel/rust-cxxbridge/pkg-descr
+1-0devel/Makefile
+100-05 files

FreeBSD/ports ac8fe94deskutils/taskwarrior Makefile Makefile.crates, deskutils/taskwarrior/files patch-CMakeLists.txt patch-test_bash__tap__tw.sh

deskutils/taskwarrior: Update to 3.5.0
DeltaFile
+699-5deskutils/taskwarrior/distinfo
+348-0deskutils/taskwarrior/Makefile.crates
+35-11deskutils/taskwarrior/Makefile
+37-0deskutils/taskwarrior/files/patch-src_Task.cpp
+28-0deskutils/taskwarrior/files/patch-test_bash__tap__tw.sh
+0-21deskutils/taskwarrior/files/patch-CMakeLists.txt
+1,147-374 files not shown
+1,181-4410 files

FreeBSD/ports d07d9c0devel Makefile, devel/rust-cxxbridge pkg-descr Makefile.crates

devel/rust-cxxbridge: New port

cxxbridge generates the C++ side of the cxx bridge and is required
at build time by projects that use corrosion's
corrosion_add_cxxbridge() without network access.
DeltaFile
+45-0devel/rust-cxxbridge/distinfo
+29-0devel/rust-cxxbridge/Makefile
+22-0devel/rust-cxxbridge/Makefile.crates
+3-0devel/rust-cxxbridge/pkg-descr
+1-0devel/Makefile
+100-05 files

HardenedBSD/ports ac8fe94deskutils/taskwarrior Makefile Makefile.crates, deskutils/taskwarrior/files patch-CMakeLists.txt patch-test_bash__tap__tw.sh

deskutils/taskwarrior: Update to 3.5.0
DeltaFile
+699-5deskutils/taskwarrior/distinfo
+348-0deskutils/taskwarrior/Makefile.crates
+35-11deskutils/taskwarrior/Makefile
+37-0deskutils/taskwarrior/files/patch-src_Task.cpp
+28-0deskutils/taskwarrior/files/patch-test_bash__tap__tw.sh
+0-21deskutils/taskwarrior/files/patch-CMakeLists.txt
+1,147-374 files not shown
+1,181-4410 files

OpenBSD/src UdiKPHVsys/net pf_osfp.c

   gnezdo@ found another case of using ioctl string fields (in debug code),
   before validating that the strings are NUL terminated.  do those checks first.
VersionDeltaFile
1.50+11-11sys/net/pf_osfp.c
+11-111 files

FreeBSD/src 5fe1964tools/test/stress2/misc unionfs23.sh unionfs22.sh

stress2: add two new unionfs test scenarios

These exercise lookup traversal from tmpfs into unionfs, which is
useful because, unlike UFS, tmpfs does not allow recursion on its vnode
locks by default.

unionfs22.sh exercises these lookups with a normal unionfs mount, while
unionfs23.sh uses '-o below' for the unionfs mount and reproduces the
panic described in PR 298201.

Reviewed by:    kib, markj, pho
Tested by:      pho
Differential Revision:  https://reviews.freebsd.org/D59494
DeltaFile
+77-0tools/test/stress2/misc/unionfs23.sh
+77-0tools/test/stress2/misc/unionfs22.sh
+154-02 files

HardenedBSD/src 5fe1964tools/test/stress2/misc unionfs23.sh unionfs22.sh

stress2: add two new unionfs test scenarios

These exercise lookup traversal from tmpfs into unionfs, which is
useful because, unlike UFS, tmpfs does not allow recursion on its vnode
locks by default.

unionfs22.sh exercises these lookups with a normal unionfs mount, while
unionfs23.sh uses '-o below' for the unionfs mount and reproduces the
panic described in PR 298201.

Reviewed by:    kib, markj, pho
Tested by:      pho
Differential Revision:  https://reviews.freebsd.org/D59494
DeltaFile
+77-0tools/test/stress2/misc/unionfs23.sh
+77-0tools/test/stress2/misc/unionfs22.sh
+154-02 files

FreeBSD/src f57ce26sys/kern vfs_lookup.c

vfs_lookup_cross_mount(): fix missing LK_CANRECURSE

This was a rather dumb miss on my part in commit 42442d7a6e.
LK_CANRECURSE is clearly needed in any case in which the covered vnode
is held exclusive across the call to VFS_ROOT(), regardless of whether
it was initially held exclusive or upgraded.  The commit message for
that change also noted that unionfs lookup only worked without
LK_CANRECURSE due to a coincidence of the then-current unionfs
implementation.  As it happens, said coincidence was recently removed
in commit b952606b4f ("unionfs_lock(): eliminate LK_CANRECURSE special-
case").

PR:             298201
Reported by:    olivier
Fixes:          42442d7a6e "Generalize the VV_CROSSLOCK logic in
vfs_lookup"
Reviewed by:    kib, markj, pho
Tested by:      pho
MFC after:      1 week
Differential Revision:  https://reviews.freebsd.org/D59494
DeltaFile
+8-4sys/kern/vfs_lookup.c
+8-41 files

HardenedBSD/src f57ce26sys/kern vfs_lookup.c

vfs_lookup_cross_mount(): fix missing LK_CANRECURSE

This was a rather dumb miss on my part in commit 42442d7a6e.
LK_CANRECURSE is clearly needed in any case in which the covered vnode
is held exclusive across the call to VFS_ROOT(), regardless of whether
it was initially held exclusive or upgraded.  The commit message for
that change also noted that unionfs lookup only worked without
LK_CANRECURSE due to a coincidence of the then-current unionfs
implementation.  As it happens, said coincidence was recently removed
in commit b952606b4f ("unionfs_lock(): eliminate LK_CANRECURSE special-
case").

PR:             298201
Reported by:    olivier
Fixes:          42442d7a6e "Generalize the VV_CROSSLOCK logic in
vfs_lookup"
Reviewed by:    kib, markj, pho
Tested by:      pho
MFC after:      1 week
Differential Revision:  https://reviews.freebsd.org/D59494
DeltaFile
+8-4sys/kern/vfs_lookup.c
+8-41 files

FreeBSD/ports 1fda1d9audio/py-soxr/files patch-pyproject.toml

audio/py-soxr: Fix build broken by nanobind upgrade to 3.x
DeltaFile
+11-2audio/py-soxr/files/patch-pyproject.toml
+11-21 files

FreeBSD/ports 91c91f0misc/py-mmsegmentation/files patch-setup.py

misc/py-mmsegmentation: remove tests directory that was installed
DeltaFile
+11-0misc/py-mmsegmentation/files/patch-setup.py
+11-01 files

FreeBSD/ports dd2ae0dmisc/nanocoder Makefile distinfo, misc/nanocoder/files package-lock.json

misc/nanocoder: update 1.29.0 → 1.30.0
DeltaFile
+966-77misc/nanocoder/pkg-plist
+187-133misc/nanocoder/files/package-lock.json
+3-3misc/nanocoder/distinfo
+1-1misc/nanocoder/Makefile
+1,157-2144 files