libarchive: cherry-pick bugfix from vendor
Vendor commit message (
ede459d2e):
archive_write_disk_posix: fix writing fflags broken in
8a1bd5c
The fixup list was erroneously assumed to be directories only.
Only in the case of critical file flags modification (e.g.
SF_IMMUTABLE on BSD systems), other file types (e.g. regular files
or symbolic links) may be added to the fixup list. We still need to
verify that we are writing to the correct file type, so compare the
archive entry file type with the file type of the file to be
modified.
Fixes vendor issue #1617:
Immutable flag no longer preserved during tar extraction on FreeBSD
Approved by: re (gjb)
Reported by: markj
Libarchive commit:
ede459d2ebb879f5eedb6f7abea203be0b334230
(cherry picked from commit
201d0ebee321fb1a5501e17a4f150aa211020c5c)
(cherry picked from commit
f2b106ec4e5a8488883c58480cf576d18010d263)