diff options
author | Denys Vlasenko | 2017-07-24 17:20:13 +0200 |
---|---|---|
committer | Denys Vlasenko | 2017-07-24 17:20:13 +0200 |
commit | b920a38dc0a87f5884444d4731a8b887b5e16018 (patch) | |
tree | 5d845976a9471e705183db9afbbe7885e9070b52 /include | |
parent | c810978552bc0133ba723ababaa178c8d53256e1 (diff) | |
download | busybox-b920a38dc0a87f5884444d4731a8b887b5e16018.zip busybox-b920a38dc0a87f5884444d4731a8b887b5e16018.tar.gz |
tar: postpone creation of symlinks with "suspicious" targets. Closes 8411
function old new delta
data_extract_all 968 1038 +70
tar_main 952 986 +34
scan_tree 258 262 +4
------------------------------------------------------------------------------
(add/remove: 0/0 grow/shrink: 3/0 up/down: 108/0) Total: 108 bytes
Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
Diffstat (limited to 'include')
-rw-r--r-- | include/bb_archive.h | 4 |
1 files changed, 4 insertions, 0 deletions
diff --git a/include/bb_archive.h b/include/bb_archive.h index 2b9c5f0..d376241 100644 --- a/include/bb_archive.h +++ b/include/bb_archive.h @@ -64,6 +64,9 @@ typedef struct archive_handle_t { /* Currently processed file's header */ file_header_t *file_header; + /* List of symlink placeholders */ + llist_t *symlink_placeholders; + /* Process the header component, e.g. tar -t */ void FAST_FUNC (*action_header)(const file_header_t *); @@ -188,6 +191,7 @@ char get_header_ar(archive_handle_t *archive_handle) FAST_FUNC; char get_header_cpio(archive_handle_t *archive_handle) FAST_FUNC; char get_header_tar(archive_handle_t *archive_handle) FAST_FUNC; char get_header_tar_gz(archive_handle_t *archive_handle) FAST_FUNC; +char get_header_tar_xz(archive_handle_t *archive_handle) FAST_FUNC; char get_header_tar_bz2(archive_handle_t *archive_handle) FAST_FUNC; char get_header_tar_lzma(archive_handle_t *archive_handle) FAST_FUNC; char get_header_tar_xz(archive_handle_t *archive_handle) FAST_FUNC; |