rmp: add optional support for bz2 data. +50 bytes of code

This commit is contained in:
Denis Vlasenko
2007-06-08 13:05:39 +00:00
parent def8260219
commit c14d39e83a
12 changed files with 42 additions and 24 deletions

View File

@@ -700,7 +700,7 @@ void dealloc_bunzip(bunzip_data *bd)
/* Decompress src_fd to dst_fd. Stops at end of bzip data, not end of file. */
USE_DESKTOP(long long) int
uncompressStream(int src_fd, int dst_fd)
unpack_bz2_stream(int src_fd, int dst_fd)
{
USE_DESKTOP(long long total_written = 0;)
char *outbuf;
@@ -751,7 +751,7 @@ static char *const bunzip_errors[] = {
/* Dumb little test thing, decompress stdin to stdout */
int main(int argc, char **argv)
{
int i = uncompressStream(0, 1);
int i = unpack_bz2_stream(0, 1);
char c;
if (i < 0)

View File

@@ -228,7 +228,7 @@ enum {
USE_DESKTOP(long long) int
unlzma(int src_fd, int dst_fd)
unpack_lzma_stream(int src_fd, int dst_fd)
{
USE_DESKTOP(long long total_written = 0;)
lzma_header_t header;

View File

@@ -981,7 +981,7 @@ static int inflate_get_next_window(STATE_PARAM_ONLY)
}
/* Called from inflate_gunzip() and inflate_unzip() */
/* Called from unpack_gz_stream() and inflate_unzip() */
/* NB: bytebuffer is allocated here but freeing it is left to the caller! */
static USE_DESKTOP(long long) int
inflate_unzip_internal(STATE_PARAM int in, int out)
@@ -1056,7 +1056,7 @@ inflate_unzip(inflate_unzip_result *res, unsigned bufsize, int in, int out)
USE_DESKTOP(long long) int
inflate_gunzip(int in, int out)
unpack_gz_stream(int in, int out)
{
uint32_t stored_crc = 0;
unsigned count;

View File

@@ -11,7 +11,7 @@ char get_header_tar_bz2(archive_handle_t *archive_handle)
/* Can't lseek over pipes */
archive_handle->seek = seek_by_read;
archive_handle->src_fd = open_transformer(archive_handle->src_fd, uncompressStream);
archive_handle->src_fd = open_transformer(archive_handle->src_fd, unpack_bz2_stream);
archive_handle->offset = 0;
while (get_header_tar(archive_handle) == EXIT_SUCCESS) /**/;

View File

@@ -20,7 +20,7 @@ char get_header_tar_gz(archive_handle_t *archive_handle)
check_header_gzip_or_die(archive_handle->src_fd);
archive_handle->src_fd = open_transformer(archive_handle->src_fd, inflate_gunzip);
archive_handle->src_fd = open_transformer(archive_handle->src_fd, unpack_gz_stream);
archive_handle->offset = 0;
while (get_header_tar(archive_handle) == EXIT_SUCCESS) /**/;

View File

@@ -14,7 +14,7 @@ char get_header_tar_lzma(archive_handle_t * archive_handle)
/* Can't lseek over pipes */
archive_handle->seek = seek_by_read;
archive_handle->src_fd = open_transformer(archive_handle->src_fd, unlzma);
archive_handle->src_fd = open_transformer(archive_handle->src_fd, unpack_lzma_stream);
archive_handle->offset = 0;
while (get_header_tar(archive_handle) == EXIT_SUCCESS) /**/;