OPNSense/src 5c2ebd3sys/netinet igmp.c

igmp: apply net.inet.igmp.default_version to existing interfaces

IGMP requires hosts to use the lowest version they have seen on the network.
When net.inet.igmp.default_version is changed, we do not change IGMP
version used by interface even if the interface use an higher version than
V_igmp_default_version. So we could send IGMPv3 even if the user has requested
IGMPv2 or IGMPv1 via the sysctl.

Change IGMP version for each interface when V_igmp_default_version is smaller
than the version used by the interface.

Pull Request:   https://github.com/freebsd/freebsd-src/pull/1615
Differential Revision:  https://reviews.freebsd.org/D50071
DeltaFile
+23-12sys/netinet/igmp.c
+23-121 files

OPNSense/src ca941d7sys/netinet igmp.c

igmp: do not upgrade IGMP version beyond net.inet.igmp.default_version

IGMP requires hosts to use the lowest version they've seen on the
network. When the IGMP timers expire we take the opportunity to upgrade again.
However, we did not take the net.inet.igmp.default_version sysctl
setting into account, so we could end up switching to IGMPv3 even if the
user had requested IGMPv2 or IGMPv1 via the sysctl.

Check V_igmp_default_version before we upgrade the IGMP version.

Reviewed by:    adrian
Sponsored by:   Rubicon Communications, LLC ("Netgate")
Differential Revision:  https://reviews.freebsd.org/D41628
DeltaFile
+8-4sys/netinet/igmp.c
+8-41 files

OPNSense/src 0c619fesys/dev/e1000 if_em.c e1000_phy.c

Revert "e1000: Try auto-negotiation for fixed 100 or 10 configuration"

We've gotten a report of this breaking a fixed no autoneg setup.

Since no link is worse than what this intends to fix (negotiating full
duplex at forced speed), revert for the undeway 15.0 release cycle
until this can be further reviewed.

PR:             288827
Differential Revision:  https://reviews.freebsd.org/D47336

This reverts commit 645c45e297c0fcbbb9d2d24cdeeb124234825019.

(cherry picked from commit 3ff0231c87f360afa4521e635b46f6c711dc4ee3)
DeltaFile
+6-38sys/dev/e1000/if_em.c
+2-3sys/dev/e1000/e1000_phy.c
+8-412 files

OPNSense/src 36085a5sys/ufs/ufs ufs_vnops.c

ufs: change e96d270bd to be a straightfoward addition to existing code

The installer on UFS was not working on 26.1 anymore but it is fine
on 25.7.11.  This commit changes UFS, but it does no appear to do it
in the right way.  Make the change less intrusive fixing the installer.
DeltaFile
+4-2sys/ufs/ufs/ufs_vnops.c
+4-21 files

OPNSense/src c961e15. UPDATING, sys/conf newvers.sh

Add UPDATING entries and bump patch version

Approved by:    so
DeltaFile
+14-0UPDATING
+1-1sys/conf/newvers.sh
+15-12 files

OPNSense/src 401deeccrypto/openssl/crypto/asn1 evp_asn1.c a_strex.c, crypto/openssl/crypto/bio bf_lbuf.c

openssl: Fix multiple vulnerabilities

This is a rollup commit from upstream to fix:
  Stack buffer overflow in CMS AuthEnvelopedData parsing (CVE-2025-15467)
  Heap out-of-bounds write in BIO_f_linebuffer on short writes (CVE-2025-68160)
  Unauthenticated/unencrypted trailing bytes with low-level OCB function calls (CVE-2025-69418)
  Out of bounds write in PKCS12_get_friendlyname() UTF-8 conversion (CVE-2025-69419)
  Missing ASN1_TYPE validation in TS_RESP_verify_response() function (CVE-2025-69420)
  NULL Pointer Dereference in PKCS12_item_decrypt_d2i_ex function (CVE-2025-69421)
  Missing ASN1_TYPE validation in PKCS#12 parsing (CVE-2026-22795)
  ASN1_TYPE Type Confusion in the PKCS7_digest_from_attributes() function (CVE-2026-22796)

See https://openssl-library.org/news/secadv/ for additional details.

Approved by:    so
Obtained from:  OpenSSL
Security:       FreeBSD-SA-26:01.openssl
Security:       CVE-2025-15467
Security:       CVE-2025-68160

    [6 lines not shown]
DeltaFile
+26-6crypto/openssl/crypto/bio/bf_lbuf.c
+20-0crypto/openssl/crypto/asn1/evp_asn1.c
+8-2crypto/openssl/crypto/modes/ocb128.c
+8-2crypto/openssl/crypto/pkcs12/p12_kiss.c
+4-2crypto/openssl/crypto/asn1/a_strex.c
+2-3crypto/openssl/crypto/evp/evp_lib.c
+68-155 files not shown
+84-1811 files

OPNSense/src 163ae89tests/sys/kern jail_lookup_root.c Makefile

tests: Add a regression test for commit 7587f6d4840f8

Approved by:    so
Reviewed by:    kib
MFC after:      2 weeks
Differential Revision:  https://reviews.freebsd.org/D50533

(cherry picked from commit a5dac34f6e98c47bd7cb1946e39cc45432e167a8)
(cherry picked from commit f56b66f1260a33e49c65bbc05213ec8267978a93)
DeltaFile
+171-0tests/sys/kern/jail_lookup_root.c
+2-0tests/sys/kern/Makefile
+173-02 files

OPNSense/src 6f7cf6bsys/sys namei.h

namei: clear internal flags in NDREINIT()

same as it is done for NDRESTART()

Approved by:    so
Fixes:  e05e33041c252
Reported and tested by: pho
Reviewed by:    markj
Sponsored by:   The FreeBSD Foundation

(cherry picked from commit 58b2bd33aff71c0268d99d63e9c83f6544d3beb3)
(cherry picked from commit 53963866f7088dd96f6d56169e6b4fb899277306)
DeltaFile
+1-0sys/sys/namei.h
+1-01 files

OPNSense/src 81eacb8sys/kern vfs_vnops.c

vfs: Don't clobber namei flags in vn_open_cred()

Otherwise NAMEILOOKUP is cleared.  More generally it seems quite
surprising that the flags set by vn_open_cred() callers are not
automatically preserved.  Modify open2nameif() such that it takes
already-set namei flags into account.

Approved by:    so
Reviewed by:    olce, kib
Fixes:          7587f6d4840f ("namei: Make stackable filesystems check harder for jail roots")
Differential Revision:  https://reviews.freebsd.org/D50531

(cherry picked from commit e05e33041c252dc236939683c01ca4b7b083562c)
(cherry picked from commit a66767844690dfd82e14df2d22bd9bc40e46546b)
DeltaFile
+14-8sys/kern/vfs_vnops.c
+14-81 files

OPNSense/src 0b5aa71sys/kern vfs_cache.c

vfs cache: Add NAMEILOOKUP to the whitelist of fastpath lookup flags

Otherwise the lockless name lookup path is inadvertently disabled since
NAMEILOOKUP isn't recognized.

Approved by:    so
Reviewed by:    olce, kib
Fixes:          7587f6d4840f ("namei: Make stackable filesystems check harder for jail roots")
Differential Revision:  https://reviews.freebsd.org/D50532

(cherry picked from commit f4158953007f557061d91f99d2374d48d8376cc6)
(cherry picked from commit 031cd548775c26314e6ae9cad35b01c5ab1aea6c)
DeltaFile
+1-1sys/kern/vfs_cache.c
+1-11 files

OPNSense/src ec57109sys/kern vfs_cache.c

namei: Remove a now-unused variable

Approved by:    so
Reported by:    bapt
Fixes:          7587f6d4840f ("namei: Make stackable filesystems check harder for jail roots")

(cherry picked from commit 14ec281a09d7818def2083ef0c3e28f8101f4268)
(cherry picked from commit 3f4efe392b7039686057838d723a2d43ae144be5)
DeltaFile
+1-3sys/kern/vfs_cache.c
+1-31 files

OPNSense/src 3d1e822sys/fs/nullfs null_vnops.c, sys/fs/unionfs union_vnops.c

namei: Make stackable filesystems check harder for jail roots

Suppose a process has its cwd pointing to a nullfs directory, where the
lower directory is also visible in the jail's filesystem namespace.
Suppose that the lower directory vnode is moved out from under the
nullfs mount.  The nullfs vnode still shadows the lower vnode, and
dotdot lookups relative to that directory will instantiate new nullfs
vnodes outside of the nullfs mountpoint, effectively shadowing the lower
filesystem.

This phenomenon can be abused to escape a chroot, since the nullfs
vnodes instantiated by these dotdot lookups defeat the root vnode check
in vfs_lookup(), which uses vnode pointer equality to test for the
process root.

Fix this by extending nullfs and unionfs to perform the same check,
exploiting the fact that the passed componentname is embedded in a
nameidata structure to avoid changing the VOP_LOOKUP interface.  That
is, add a flag to indicate that containerof can be used to get the full

    [13 lines not shown]
DeltaFile
+30-11sys/kern/vfs_lookup.c
+18-10sys/fs/nullfs/null_vnops.c
+21-0sys/fs/unionfs/union_vnops.c
+1-10sys/kern/vfs_cache.c
+4-1sys/sys/namei.h
+74-325 files

OPNSense/src 8b81e03sys/fs/nullfs null_vnops.c

nullfs lookup: cn_flags is 64bit

Approved by:    so

(cherry picked from commit 89549c2348170921cc4270ac95bfabfd78d42739)
(cherry picked from commit 2013ad7490f2a80d3b3260d9811422bbd25a915e)
DeltaFile
+3-3sys/fs/nullfs/null_vnops.c
+3-31 files

OPNSense/src bb4385bsys/vm vm_fault.c

vm_fault: only rely on PG_ZERO when the page was newly allocated

Approved by:    so
Security:       FreeBSD-EN-26:03.vm

(cherry picked from commit cff67bc43df14d492ccc08ec92fddceadd069953)
(cherry picked from commit 99f641267d449f26a2e13449964f29d17897c29f)
DeltaFile
+5-1sys/vm/vm_fault.c
+5-11 files

OPNSense/src 60d8992sys/vm vm_object.c

vm_object_page_remove(): clear pager even if there is no resident pages

Approved by:    so
Security:       FreeBSD-EN-26:03.vm

(cherry picked from commit 72a447d0bc768c7fe8a9c972f710c75afebd581b)
(cherry picked from commit feac4c32a5f87434a17a804d8148cea78f81ebea)
DeltaFile
+2-1sys/vm/vm_object.c
+2-11 files

OPNSense/src 7958956sys/arm64/arm64 exec_machdep.c

arm64: Correctly align the SVE signal context

The SVE signal context needs to be correctly aligned. Fix this by
creating a new macro to calculate the needed size to provide this
alignment, and use it when setting and checking the saved SVE signal
context.

Approved by:    so
Security:       FreeBSD-EN-26:02.arm64
Reported by:    cperciva
Reviewed by:    cperciva, markj
Sponsored by:   Arm Ltd
Differential Revision:  https://reviews.freebsd.org/D54396

(cherry picked from commit a9e77eb7016df70723c208fc09fbd01ec23a732d)
(cherry picked from commit bcd6bb8067d13d28d13a309e32818cda9e0d29ff)
DeltaFile
+9-5sys/arm64/arm64/exec_machdep.c
+9-51 files

OPNSense/src fac137b. UPDATING, sys/conf newvers.sh

Add UPDATING entries and bump patch version

Approved by:    so
DeltaFile
+14-0UPDATING
+1-1sys/conf/newvers.sh
+15-12 files

OPNSense/src 7ca64abcrypto/openssl/crypto/asn1 evp_asn1.c a_strex.c, crypto/openssl/crypto/bio bf_lbuf.c

openssl: Fix multiple vulnerabilities

This is a rollup commit from upstream to fix:
  Stack buffer overflow in CMS AuthEnvelopedData parsing (CVE-2025-15467)
  Heap out-of-bounds write in BIO_f_linebuffer on short writes (CVE-2025-68160)
  Unauthenticated/unencrypted trailing bytes with low-level OCB function calls (CVE-2025-69418)
  Out of bounds write in PKCS12_get_friendlyname() UTF-8 conversion (CVE-2025-69419)
  Missing ASN1_TYPE validation in TS_RESP_verify_response() function (CVE-2025-69420)
  NULL Pointer Dereference in PKCS12_item_decrypt_d2i_ex function (CVE-2025-69421)
  Missing ASN1_TYPE validation in PKCS#12 parsing (CVE-2026-22795)
  ASN1_TYPE Type Confusion in the PKCS7_digest_from_attributes() function (CVE-2026-22796)

See https://openssl-library.org/news/secadv/ for additional details.

Approved by:    so
Obtained from:  OpenSSL
Security:       FreeBSD-SA-26:01.openssl
Security:       CVE-2025-15467
Security:       CVE-2025-68160

    [6 lines not shown]
DeltaFile
+26-6crypto/openssl/crypto/bio/bf_lbuf.c
+20-0crypto/openssl/crypto/asn1/evp_asn1.c
+8-2crypto/openssl/crypto/pkcs12/p12_kiss.c
+8-2crypto/openssl/crypto/modes/ocb128.c
+4-2crypto/openssl/crypto/asn1/a_strex.c
+2-3crypto/openssl/crypto/evp/evp_lib.c
+68-155 files not shown
+84-1811 files

OPNSense/src 9f93a51tests/sys/kern jail_lookup_root.c Makefile

tests: Add a regression test for commit 7587f6d4840f8

Approved by:    so
Reviewed by:    kib
MFC after:      2 weeks
Differential Revision:  https://reviews.freebsd.org/D50533

(cherry picked from commit a5dac34f6e98c47bd7cb1946e39cc45432e167a8)
(cherry picked from commit f56b66f1260a33e49c65bbc05213ec8267978a93)
DeltaFile
+171-0tests/sys/kern/jail_lookup_root.c
+2-0tests/sys/kern/Makefile
+173-02 files

OPNSense/src 5b25bf7sys/sys namei.h

namei: clear internal flags in NDREINIT()

same as it is done for NDRESTART()

Approved by:    so
Fixes:  e05e33041c252
Reported and tested by: pho
Reviewed by:    markj
Sponsored by:   The FreeBSD Foundation

(cherry picked from commit 58b2bd33aff71c0268d99d63e9c83f6544d3beb3)
(cherry picked from commit 53963866f7088dd96f6d56169e6b4fb899277306)
DeltaFile
+1-0sys/sys/namei.h
+1-01 files

OPNSense/src 70f8422sys/kern vfs_vnops.c

vfs: Don't clobber namei flags in vn_open_cred()

Otherwise NAMEILOOKUP is cleared.  More generally it seems quite
surprising that the flags set by vn_open_cred() callers are not
automatically preserved.  Modify open2nameif() such that it takes
already-set namei flags into account.

Approved by:    so
Reviewed by:    olce, kib
Fixes:          7587f6d4840f ("namei: Make stackable filesystems check harder for jail roots")
Differential Revision:  https://reviews.freebsd.org/D50531

(cherry picked from commit e05e33041c252dc236939683c01ca4b7b083562c)
(cherry picked from commit a66767844690dfd82e14df2d22bd9bc40e46546b)
DeltaFile
+14-8sys/kern/vfs_vnops.c
+14-81 files

OPNSense/src 0b807c2sys/kern vfs_cache.c

vfs cache: Add NAMEILOOKUP to the whitelist of fastpath lookup flags

Otherwise the lockless name lookup path is inadvertently disabled since
NAMEILOOKUP isn't recognized.

Approved by:    so
Reviewed by:    olce, kib
Fixes:          7587f6d4840f ("namei: Make stackable filesystems check harder for jail roots")
Differential Revision:  https://reviews.freebsd.org/D50532

(cherry picked from commit f4158953007f557061d91f99d2374d48d8376cc6)
(cherry picked from commit 031cd548775c26314e6ae9cad35b01c5ab1aea6c)
DeltaFile
+1-1sys/kern/vfs_cache.c
+1-11 files

OPNSense/src 1e76406sys/kern vfs_cache.c

namei: Remove a now-unused variable

Approved by:    so
Reported by:    bapt
Fixes:          7587f6d4840f ("namei: Make stackable filesystems check harder for jail roots")

(cherry picked from commit 14ec281a09d7818def2083ef0c3e28f8101f4268)
(cherry picked from commit 3f4efe392b7039686057838d723a2d43ae144be5)
DeltaFile
+1-3sys/kern/vfs_cache.c
+1-31 files

OPNSense/src 0299ff6sys/fs/nullfs null_vnops.c, sys/fs/unionfs union_vnops.c

namei: Make stackable filesystems check harder for jail roots

Suppose a process has its cwd pointing to a nullfs directory, where the
lower directory is also visible in the jail's filesystem namespace.
Suppose that the lower directory vnode is moved out from under the
nullfs mount.  The nullfs vnode still shadows the lower vnode, and
dotdot lookups relative to that directory will instantiate new nullfs
vnodes outside of the nullfs mountpoint, effectively shadowing the lower
filesystem.

This phenomenon can be abused to escape a chroot, since the nullfs
vnodes instantiated by these dotdot lookups defeat the root vnode check
in vfs_lookup(), which uses vnode pointer equality to test for the
process root.

Fix this by extending nullfs and unionfs to perform the same check,
exploiting the fact that the passed componentname is embedded in a
nameidata structure to avoid changing the VOP_LOOKUP interface.  That
is, add a flag to indicate that containerof can be used to get the full

    [13 lines not shown]
DeltaFile
+30-11sys/kern/vfs_lookup.c
+18-10sys/fs/nullfs/null_vnops.c
+21-0sys/fs/unionfs/union_vnops.c
+1-10sys/kern/vfs_cache.c
+4-1sys/sys/namei.h
+74-325 files

OPNSense/src 73f5085sys/fs/nullfs null_vnops.c

nullfs lookup: cn_flags is 64bit

Approved by:    so

(cherry picked from commit 89549c2348170921cc4270ac95bfabfd78d42739)
(cherry picked from commit 2013ad7490f2a80d3b3260d9811422bbd25a915e)
DeltaFile
+3-3sys/fs/nullfs/null_vnops.c
+3-31 files

OPNSense/src 0a4a1c0sys/vm vm_fault.c

vm_fault: only rely on PG_ZERO when the page was newly allocated

Approved by:    so
Security:       FreeBSD-EN-26:03.vm

(cherry picked from commit cff67bc43df14d492ccc08ec92fddceadd069953)
(cherry picked from commit 99f641267d449f26a2e13449964f29d17897c29f)
DeltaFile
+5-1sys/vm/vm_fault.c
+5-11 files

OPNSense/src 8137bf0sys/vm vm_object.c

vm_object_page_remove(): clear pager even if there is no resident pages

Approved by:    so
Security:       FreeBSD-EN-26:03.vm

(cherry picked from commit 72a447d0bc768c7fe8a9c972f710c75afebd581b)
(cherry picked from commit feac4c32a5f87434a17a804d8148cea78f81ebea)
DeltaFile
+2-1sys/vm/vm_object.c
+2-11 files

OPNSense/src 0eb74ffsys/arm64/arm64 exec_machdep.c

arm64: Correctly align the SVE signal context

The SVE signal context needs to be correctly aligned. Fix this by
creating a new macro to calculate the needed size to provide this
alignment, and use it when setting and checking the saved SVE signal
context.

Approved by:    so
Security:       FreeBSD-EN-26:02.arm64
Reported by:    cperciva
Reviewed by:    cperciva, markj
Sponsored by:   Arm Ltd
Differential Revision:  https://reviews.freebsd.org/D54396

(cherry picked from commit a9e77eb7016df70723c208fc09fbd01ec23a732d)
(cherry picked from commit bcd6bb8067d13d28d13a309e32818cda9e0d29ff)
DeltaFile
+9-5sys/arm64/arm64/exec_machdep.c
+9-51 files

OPNSense/src 1bab723sys/netpfil/ipfw ip_fw_table_value.c

netpfil/ipfw: Fix a typo in a source code comment

- s/vaues/values/

(cherry picked from commit 9be9ab2a242080dea6254e187cf211604170de07)
DeltaFile
+1-1sys/netpfil/ipfw/ip_fw_table_value.c
+1-11 files

OPNSense/src b535c31sys/dev/e1000 if_em.c e1000_phy.c

Revert "e1000: Try auto-negotiation for fixed 100 or 10 configuration"

We've gotten a report of this breaking a fixed no autoneg setup.

Since no link is worse than what this intends to fix (negotiating full
duplex at forced speed), revert for the undeway 15.0 release cycle
until this can be further reviewed.

PR:             288827
Differential Revision:  https://reviews.freebsd.org/D47336

This reverts commit 645c45e297c0fcbbb9d2d24cdeeb124234825019.

(cherry picked from commit 3ff0231c87f360afa4521e635b46f6c711dc4ee3)
DeltaFile
+6-38sys/dev/e1000/if_em.c
+2-3sys/dev/e1000/e1000_phy.c
+8-412 files