svn commit: r43044 - in head/share: security/advisories security/patches/EN-13:04 xml
Xin LI
delphij at FreeBSD.org
Sat Oct 26 20:21:28 UTC 2013
Author: delphij
Date: Sat Oct 26 20:21:27 2013
New Revision: 43044
URL: http://svnweb.freebsd.org/changeset/doc/43044
Log:
Add latest errata notice:
Fix multiple freebsd-update bugs that break upgrading to
FreeBSD 10.0. [EN-13:04]
Added:
head/share/security/advisories/FreeBSD-EN-13:04.freebsd-update.asc (contents, props changed)
head/share/security/patches/EN-13:04/
head/share/security/patches/EN-13:04/freebsd-update.patch (contents, props changed)
head/share/security/patches/EN-13:04/freebsd-update.patch.asc (contents, props changed)
Modified:
head/share/xml/notices.xml
Added: head/share/security/advisories/FreeBSD-EN-13:04.freebsd-update.asc
==============================================================================
--- /dev/null 00:00:00 1970 (empty, because file is newly added)
+++ head/share/security/advisories/FreeBSD-EN-13:04.freebsd-update.asc Sat Oct 26 20:21:27 2013 (r43044)
@@ -0,0 +1,157 @@
+-----BEGIN PGP SIGNED MESSAGE-----
+Hash: SHA512
+
+=============================================================================
+FreeBSD-EN-13:04.freebsd-update Errata Notice
+ The FreeBSD Project
+
+Topic: Multiple freebsd-update bugs break upgrading to FreeBSD 10.0
+
+Category: base
+Module: freebsd-update
+Announced: 2013-10-24
+Credits: Colin Percival
+Affects: All supported FreeBSD releases
+Corrected: 2013-10-26 08:34:35 UTC (stable/10, 10.0-STABLE)
+ 2013-10-26 08:34:35 UTC (stable/10, 10.0-BETA1-p1)
+ 2013-10-26 19:54:28 UTC (stable/9, 9.2-STABLE)
+ 2013-10-26 20:01:00 UTC (releng/9.2, 9.2-RELEASE-p1)
+ 2013-10-26 20:01:00 UTC (releng/9.2, 9.2-RC4-p1)
+ 2013-10-26 20:01:00 UTC (releng/9.2, 9.2-RC3-p2)
+ 2013-10-26 20:01:00 UTC (releng/9.1, 9.1-RELEASE-p8)
+ 2013-10-26 19:54:28 UTC (stable/8, 8.4-STABLE)
+ 2013-10-26 20:01:00 UTC (releng/8.4, 8.4-RELEASE-p5)
+ 2013-10-26 20:01:00 UTC (releng/8.3, 8.3-RELEASE-p12)
+
+For general information regarding FreeBSD Errata Notices and Security
+Advisories, including descriptions of the fields above, security
+branches, and the following sections, please visit
+<URL:http://security.freebsd.org/>.
+
+I. Background
+
+The freebsd-update(8) utility is used to download and apply binary diffs
+for security and errata patches on systems installed from official FreeBSD
+release CDs and DVDs. It can also be used to upgrade such systems to new
+FreeBSD releases.
+
+II. Problem Description
+
+The freebsd-update(8) utility always updates shared libraries first, so
+new or updated libraries will be avaialble when binaries that use them are
+installed or updated. If shared libraries appear in a directory which
+does not already exist on the target system, freebsd-update(8) will
+attempt to install them before creating the directory.
+
+At the end of the updating process, freebsd-update(8) removes old shared
+libraries which should no longer exist. An error in filtering the list
+of filesystem objects results in symlinks to shared libraries being
+incorrectly included in the lists of shared libraries.
+
+Additionally, freebsd-update(8) rejects updates which include files with
+the tilde character ('~') in their names. Such files sometimes occur in
+third-party software and may be included in the src distribution.
+
+III. Impact
+
+It is not possible to use freebsd-update(8) to upgrade an existing
+installation to FreeBSD 10.0-BETA1, because 10.0 introduces two new shared
+library directories, the /usr/lib/libc.so symlink is replaced by a regular
+file, and the source distribution includes a file with a tilde in its name.
+
+It is not possible to use freebsd-update(8) to update 10.0-BETA1, as its
+source distribution includes a file with a tilde in its name.
+
+IV. Workaround
+
+No workaround is available.
+
+V. Solution
+
+Perform one of the following:
+
+1) Upgrade your system to a supported FreeBSD stable or release / security
+branch (releng) dated after the correction date.
+
+2) To update your present 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 http://security.FreeBSD.org/patches/EN-13:04/freebsd-update.patch
+# fetch http://security.FreeBSD.org/patches/EN-13:04/freebsd-update.patch.asc
+# gpg --verify freebsd-update.patch.asc
+
+b) Apply the patch.
+
+# cd /usr/src
+# patch < /path/to/patch
+
+c) Reinstall freebsd-update.
+
+# cd /usr/src/usr.sbin/freebsd-update
+# make install -DWITHOUT_MAN
+
+3) To update your system via a binary patch:
+
+Systems running a RELEASE version of FreeBSD on the i386 or amd64
+platforms can be updated via the freebsd-update(8) utility:
+
+# freebsd-update fetch
+# freebsd-update install
+
+On systems running 10.0-BETA1 (and ONLY systems running 10.0-BETA1), run
+the following command before using freebsd-update in order to fix it
+enough that it can update itself:
+
+# sed -i '' -e 's/%@/%~@/' /usr/sbin/freebsd-update
+
+VI. Correction details
+
+The following list contains the revision numbers of each file that was
+corrected in FreeBSD.
+
+Branch/path Revision
+- -------------------------------------------------------------------------
+stable/8/ r257192
+releng/8.3/ r257194
+releng/8.4/ r257194
+stable/9/ r257192
+releng/9.1/ r257194
+releng/9.2/ r257194
+stable/10/ r257153
+- -------------------------------------------------------------------------
+
+To see which files were modified by a particular revision, run the
+following command, replacing NNNNNN with the revision number, on a
+machine with Subversion installed:
+
+# svn diff -cNNNNNN --summarize svn://svn.freebsd.org/base
+
+Or visit the following URL, replacing NNNNNN with the revision number:
+
+<URL:http://svnweb.freebsd.org/base?view=revision&revision=NNNNNN>
+
+VII. References
+
+The latest revision of this Errata Notice is available at
+http://security.FreeBSD.org/advisories/FreeBSD-EN-13:04.freebsd-update.asc
+-----BEGIN PGP SIGNATURE-----
+
+iQIcBAEBCgAGBQJSbCKSAAoJEO1n7NZdz2rnes0P/ifRGR4Iak0mCzk9oMEzUBGE
+wrjcICt0azsnTHVuRR4ZOzxcRGliY32T36xPvc67nzJYI0KCcnKHurxALg8fmBdM
++OJCkcm8r1jFiaj7i4zxlKFfHtrrFnQe6OP4fVndB8nDjLqWzXcjLjZBZaXPM7Pp
+kWkmyyJN+Hk1ih3lXyPJ9y9YTcvoPmbrIezsHqurBPKPV8dizfp2jR8OmW25koqH
+26Dkt3d2KVXcrPJdTn8LE02as/zSK7s52IMJ0dgPv1/MkxxJBKDddz3x0o1rZUyM
+FdMyISp04zguFg8zZITIuUKDp+N+HrY5cIiBEOHXSWXTM1uXFXrq+P+/kjYxHHZK
+MJG0hi6F5RRooHPHTelZ7kKGVqPMnyT/Wo4bitfHzq5kqa6eys9rbsn5WUQkM7YL
+R4HYE90fwdphIVpEy38/kOAEEjJg/8vwVItS51AqhAtVMCamR65zV2RCNobUDKWJ
+oCjR+OgML5a75VwIhyy/kLaZlPB2nxb8KK3s2iVPDvFj0C368pEkRWz1kLmrc99P
+YkyLAZlEGL3WV6hEh/qlM81fTJHLjahNyQAOZeK8qIORhl8zABAq+Ce7XsWFJI9T
+FGjKvCSjiF3t3G2jRk9pjclXhliJrYJd1Cj9HqtvYdxEN3fEM23pfnsZqR8n0Vlr
+jX7rZ0kgqqZY8/O6AeSH
+=1thb
+-----END PGP SIGNATURE-----
Added: head/share/security/patches/EN-13:04/freebsd-update.patch
==============================================================================
--- /dev/null 00:00:00 1970 (empty, because file is newly added)
+++ head/share/security/patches/EN-13:04/freebsd-update.patch Sat Oct 26 20:21:27 2013 (r43044)
@@ -0,0 +1,78 @@
+Index: usr.sbin/freebsd-update/freebsd-update.sh
+===================================================================
+--- usr.sbin/freebsd-update/freebsd-update.sh
++++ usr.sbin/freebsd-update/freebsd-update.sh
+@@ -1200,7 +1200,7 @@
+ # Some aliases to save space later: ${P} is a character which can
+ # appear in a path; ${M} is the four numeric metadata fields; and
+ # ${H} is a sha256 hash.
+- P="[-+./:=%@_[[:alnum:]]"
++ P="[-+./:=%@_[~[:alnum:]]"
+ M="[0-9]+\|[0-9]+\|[0-9]+\|[0-9]+"
+ H="[0-9a-f]{64}"
+
+@@ -2814,16 +2814,24 @@
+
+ # If we haven't already dealt with the world, deal with it.
+ if ! [ -f $1/worlddone ]; then
++ # Create any necessary directories first
++ grep -vE '^/boot/' $1/INDEX-NEW |
++ grep -E '^[^|]+\|d\|' > INDEX-NEW
++ install_from_index INDEX-NEW || return 1
++
+ # Install new shared libraries next
+ grep -vE '^/boot/' $1/INDEX-NEW |
+- grep -E '/lib/.*\.so\.[0-9]+\|' > INDEX-NEW
++ grep -vE '^[^|]+\|d\|' |
++ grep -E '^[^|]*/lib/[^|]*\.so\.[0-9]+\|' > INDEX-NEW
+ install_from_index INDEX-NEW || return 1
+
+ # Deal with everything else
+ grep -vE '^/boot/' $1/INDEX-OLD |
+- grep -vE '/lib/.*\.so\.[0-9]+\|' > INDEX-OLD
++ grep -vE '^[^|]+\|d\|' |
++ grep -vE '^[^|]*/lib/[^|]*\.so\.[0-9]+\|' > INDEX-OLD
+ grep -vE '^/boot/' $1/INDEX-NEW |
+- grep -vE '/lib/.*\.so\.[0-9]+\|' > INDEX-NEW
++ grep -vE '^[^|]+\|d\|' |
++ grep -vE '^[^|]*/lib/[^|]*\.so\.[0-9]+\|' > INDEX-NEW
+ install_from_index INDEX-NEW || return 1
+ install_delete INDEX-OLD INDEX-NEW || return 1
+
+@@ -2844,11 +2852,11 @@
+
+ # Do we need to ask the user to portupgrade now?
+ grep -vE '^/boot/' $1/INDEX-NEW |
+- grep -E '/lib/.*\.so\.[0-9]+\|' |
++ grep -E '^[^|]*/lib/[^|]*\.so\.[0-9]+\|' |
+ cut -f 1 -d '|' |
+ sort > newfiles
+ if grep -vE '^/boot/' $1/INDEX-OLD |
+- grep -E '/lib/.*\.so\.[0-9]+\|' |
++ grep -E '^[^|]*/lib/[^|]*\.so\.[0-9]+\|' |
+ cut -f 1 -d '|' |
+ sort |
+ join -v 1 - newfiles |
+@@ -2868,11 +2876,20 @@
+
+ # Remove old shared libraries
+ grep -vE '^/boot/' $1/INDEX-NEW |
+- grep -E '/lib/.*\.so\.[0-9]+\|' > INDEX-NEW
++ grep -vE '^[^|]+\|d\|' |
++ grep -E '^[^|]*/lib/[^|]*\.so\.[0-9]+\|' > INDEX-NEW
+ grep -vE '^/boot/' $1/INDEX-OLD |
+- grep -E '/lib/.*\.so\.[0-9]+\|' > INDEX-OLD
++ grep -vE '^[^|]+\|d\|' |
++ grep -E '^[^|]*/lib/[^|]*\.so\.[0-9]+\|' > INDEX-OLD
+ install_delete INDEX-OLD INDEX-NEW || return 1
+
++ # Remove old directories
++ grep -vE '^/boot/' $1/INDEX-OLD |
++ grep -E '^[^|]+\|d\|' > INDEX-OLD
++ grep -vE '^/boot/' $1/INDEX-OLD |
++ grep -E '^[^|]+\|d\|' > INDEX-OLD
++ install_delete INDEX-OLD INDEX-NEW || return 1
++
+ # Remove temporary files
+ rm INDEX-OLD INDEX-NEW
+ }
Added: head/share/security/patches/EN-13:04/freebsd-update.patch.asc
==============================================================================
--- /dev/null 00:00:00 1970 (empty, because file is newly added)
+++ head/share/security/patches/EN-13:04/freebsd-update.patch.asc Sat Oct 26 20:21:27 2013 (r43044)
@@ -0,0 +1,16 @@
+-----BEGIN PGP SIGNATURE-----
+
+iQIcBAABCgAGBQJSbCKVAAoJEO1n7NZdz2rnETwQAOMV7xt2OlnEdtppHyG7F5vj
+Kyii95jtZzgdvxh33EpVjqxc/Wo8pLgmciA2tP3K6M9qwbz8B6Hc2HxMyouV1LF2
+WUoJlmZTIZCdXF1RAPndBjvze+15kD7dGPPPfA7pJWN+07p7CZEUTHBoZ94q6u3y
+JlEEAjlXtYvWVJCrd2olIN0xwqNDL1AfywMOBKbfTN+NQiYr4hhPnnA33Fb+gyjK
+JpEZuCJ1p5caQWLRGn7L2Ro+y32MPSujOW8P0It5xTvGNjtSVYU09ZQPKFgdvD0L
+yNSJdSXLKfdpF9fLeUR2Ahwvdnao8BSMfPi2LP3g9sfapw40wP8/s8B7gCXp6wk7
+vl3ZhyqMC53O+kgHxMnbrTB1EK9q6vQ3tEhqUu3caGaCy5zqGxv49WMzNYSYxGcf
+8Kqvmab65YRrB7UY8wo6Sqc3tWqfP4VwWv+eljMeDgvbwcPZ3L7oAMfSZfyPfiYK
+OfR2JNWgutt6rqre5QixN3c+QsIPlpb9UUgOaoS22iveA0h8FmbOeWGyZ7Rwm6Bd
+6VKO+aHiSbumr9/LPVGBxYI63dWkcRj4NZEG/B6eV3wqUJufCEzrRecbJflIEXOJ
+jPg61eMA0ua+y+17D9RVkUqL9rrnhF18YfOh1JAkSzMP2J8NCEtW2ol02QAnlLDc
+Vv5c44zu0PyqRqtvK5sJ
+=QsbS
+-----END PGP SIGNATURE-----
Modified: head/share/xml/notices.xml
==============================================================================
--- head/share/xml/notices.xml Sat Oct 26 18:07:50 2013 (r43043)
+++ head/share/xml/notices.xml Sat Oct 26 20:21:27 2013 (r43044)
@@ -8,6 +8,18 @@
<name>2013</name>
<month>
+ <name>10</name>
+
+ <day>
+ <name>26</name>
+
+ <notice>
+ <name>FreeBSD-EN-13:04.freebsd-update</name>
+ </notice>
+ </day>
+ </month>
+
+ <month>
<name>8</name>
<day>
More information about the svn-doc-head
mailing list