6 |
* Licensed under GPL v2, see file LICENSE in this tarball for details. |
* Licensed under GPL v2, see file LICENSE in this tarball for details. |
7 |
*/ |
*/ |
8 |
|
|
9 |
|
#include "libbb.h" |
10 |
#include "unarchive.h" |
#include "unarchive.h" |
11 |
|
|
12 |
char get_header_tar_lzma(archive_handle_t * archive_handle) |
char FAST_FUNC get_header_tar_lzma(archive_handle_t *archive_handle) |
13 |
{ |
{ |
14 |
/* Can't lseek over pipes */ |
/* Can't lseek over pipes */ |
15 |
archive_handle->seek = seek_by_read; |
archive_handle->seek = seek_by_read; |
16 |
|
|
17 |
archive_handle->src_fd = open_transformer(archive_handle->src_fd, unlzma); |
open_transformer(archive_handle->src_fd, unpack_lzma_stream, "unlzma"); |
18 |
archive_handle->offset = 0; |
archive_handle->offset = 0; |
19 |
while (get_header_tar(archive_handle) == EXIT_SUCCESS) /**/; |
while (get_header_tar(archive_handle) == EXIT_SUCCESS) |
20 |
|
continue; |
21 |
|
|
22 |
/* Can only do one file at a time */ |
/* Can only do one file at a time */ |
23 |
return EXIT_FAILURE; |
return EXIT_FAILURE; |