mirror of
https://git.FreeBSD.org/src.git
synced 2024-12-29 12:03:03 +00:00
Strip trailing / characters from paths in "not present" index entries, not
just "directory" entries. Prior to this commit, if / was added as part of a security update (how? In the most recent case, because lib32 was accidentally omitted and was then re-added, and every installer distribution set gets its own paths) then the code which was supposed to filter out updates to deleted parts of the base system (if someone decides to delete / then we shouldn't re-create it for them) would instead get confused and decided that while / should exist, // should not exist and needs to be removed. This fixes the bug which caused freebsd-update to want to delete / (which is harmless, since `rm /` fails, but scary nonetheless). A workaround is being applied to the update bits in order to avoid triggering the bug on unpatched systems. PR: 196055, 196091, 196147
This commit is contained in:
parent
1b055b0eca
commit
7e654612dc
Notes:
svn2git
2020-12-20 02:59:44 +00:00
svn path=/head/; revision=276086
@ -1395,6 +1395,7 @@ fetch_filter_metadata () {
|
||||
# matter, since we add a leading "/" when we use paths later.
|
||||
cut -f 3- -d '|' $1 |
|
||||
sed -e 's,/|d|,|d|,' |
|
||||
sed -e 's,/|-|,|-|,' |
|
||||
sort -u > $1.tmp
|
||||
|
||||
# Figure out which lines to ignore and remove them.
|
||||
|
Loading…
Reference in New Issue
Block a user