-----BEGIN PGP SIGNED MESSAGE----- Hash: SHA512 ============================================================================= FreeBSD-EN-23:12.freebsd-update Errata Notice The FreeBSD Project Topic: freebsd-update to 14.0 fails Category: core Module: freebsd-update Announced: 2023-10-03 Affects: All supported versions of FreeBSD. Corrected: 2023-10-01 16:33:03 UTC (stable/13, 13.2-STABLE) 2023-10-03 21:22:19 UTC (releng/13.2, 13.2-RELEASE-p4) 2023-10-01 16:35:16 UTC (stable/12, 12.4-STABLE) 2023-10-03 22:15:37 UTC (releng/12.4, 12.4-RELEASE-p6) For general information regarding FreeBSD Errata Notices and Security Advisories, including descriptions of the fields above, security branches, and the following sections, please visit . I. Background freebsd-update provides binary updates for supported releases of FreeBSD on amd64, arm64, and i386. II. Problem Description freebsd-update was unable to handle the case where a file in the "old" version changed to a directory in the "new" version. This case occurs with upgrades to FreeBSD 14.0, as /usr/include/c++/v1/__string exists as a file in 12.4 and 13.2, and as a directory in FreeBSD 14.0. III. Impact Using freebsd-update to upgrade to FreeBSD 14.0 emits errors during install and results in a system with broken C++ headers. IV. Workaround No workaround is available. V. Solution Upgrade your system to a supported FreeBSD stable or release / security branch (releng) dated after the correction date. Perform one of the following: 1) To update your system via a binary patch: Systems running a RELEASE version of FreeBSD on the amd64, i386, or (on FreeBSD 13 and later) arm64 platforms can be updated via the freebsd-update(8) utility: # freebsd-update fetch # freebsd-update install 2) To update your system via a source code patch: The following patches have been verified to apply to the applicable FreeBSD release branches. a) Download the relevant patch from the location below, and verify the detached PGP signature using your PGP utility. # fetch https://security.FreeBSD.org/patches/EN-23:12/freebsd-update.patch # fetch https://security.FreeBSD.org/patches/EN-23:12/freebsd-update.patch.asc # gpg --verify freebsd-update.patch.asc b) Apply the patch. Execute the following commands as root: # cd /usr/src # patch < /path/to/patch c) Recompile the operating system using buildworld and installworld as described in . VI. Correction details This issue is corrected by the corresponding Git commit hash or Subversion revision number in the following stable and release branches: Branch/path Hash Revision - ------------------------------------------------------------------------- stable/13/ 774cc6348a50 stable/13-n256442 releng/13.2/ cfb624d7e250 releng/13.2-n254634 stable/12/ r373223 releng/12.4/ r373232 - ------------------------------------------------------------------------- For FreeBSD 13 and later: Run the following command to see which files were modified by a particular commit: # git show --stat Or visit the following URL, replacing NNNNNN with the hash: To determine the commit count in a working tree (for comparison against nNNNNNN in the table above), run: # git rev-list --count --first-parent HEAD For FreeBSD 12 and earlier: Run the following command to see which files were modified by a particular revision, replacing NNNNNN with the revision number: # svn diff -cNNNNNN --summarize svn://svn.freebsd.org/base Or visit the following URL, replacing NNNNNN with the revision number: VII. References The latest revision of this advisory is available at -----BEGIN PGP SIGNATURE----- iQJPBAEBCgA5FiEEthUnfoEIffdcgYM7bljekB8AGu8FAmoZ9nIbFIAAAAAABAAO bWFudTIsMi41KzEuMTIsMCwzAAoJEG5Y3pAfABrva1cP/i/oT6qjYY0t2ZxX2WHK wsjTMyUPExqy2J9RByfw/bUZJ8Mg4N9tbmt/ocoVzormuDPG8/aZa2KMAl2bkSIt 9vra/dqasNWkwUFVWZ7GKY0ryz5jtahJpUTHnRrH279d3jN7aLmmq6lwfKt5ZO1L djJlrvRDmHIVzi3UAcN3mw3MBSLEu19l7Hk/un0rglFSWHmsfcBzruNEfO3ugTUK PN+QqKMboaDX2McxvTTRcZ9ehBDj/gSud1eu3LMO8aBjgBLJidEat2Ixf8CDK9MQ XXBhZQLNzreLSTFNgkRkfgjE0jhr479aNol65I2KuhK5oHXvx5RTiyZL18tZjRVh eLBsfhRiW5SDCm6mrBQ9HazJIlLJ4bDoQ7gV1nhITucUCW37jFP4x0Vjh0utjbIc ktmp5tyMpK2HLQTJJIO28GhAm7iHL4TDT5b29u+baE/UV508dXYTKbf0RJ2C5lbi wCVHTSZ1iOaMwKs+jCMhEt7iTRlAq7KqvAhz5jcpnJ1agtuCubWhR2CBjrZVV+aO 0fLCR89n/sj5OyPdXvQslsPh7L01iyOMIz51o6RwFRLIgtysXweXBBOyE1+oZZfJ 9XLuB56LX0sjrJYkhxsZVEOnbU0nN9wESoMLlFhJ1kEeexV8CdiyzLpfLydGcoNv QAnOZw6sOG26BhVQkM5JsTCQ =Cbjm -----END PGP SIGNATURE-----