Single-call .xz Block decoder. More...
#include "block_decoder.h"
Functions | |
lzma_ret | lzma_block_buffer_decode (lzma_block *block, lzma_allocator *allocator, const uint8_t *in, size_t *in_pos, size_t in_size, uint8_t *out, size_t *out_pos, size_t out_size) |
Single-call .xz Block decoder. |
Single-call .xz Block decoder.
lzma_ret lzma_block_buffer_decode | ( | lzma_block * | block, | |
lzma_allocator * | allocator, | |||
const uint8_t * | in, | |||
size_t * | in_pos, | |||
size_t | in_size, | |||
uint8_t * | out, | |||
size_t * | out_pos, | |||
size_t | out_size | |||
) |
Single-call .xz Block decoder.
This is single-call equivalent of lzma_block_decoder(), and requires that the caller has already decoded Block Header and checked its memory usage.
block | Block options just like with lzma_block_decoder(). | |
allocator | lzma_allocator for custom allocator functions. Set to NULL to use malloc() and free(). | |
in | Beginning of the input buffer | |
in_pos | The next byte will be read from in[*in_pos]. *in_pos is updated only if decoding succeeds. | |
in_size | Size of the input buffer; the first byte that won't be read is in[in_size]. | |
out | Beginning of the output buffer | |
out_pos | The next byte will be written to out[*out_pos]. *out_pos is updated only if encoding succeeds. | |
out_size | Size of the out buffer; the first byte into which no data is written to is out[out_size]. |
References lzma_next_coder_s::code, lzma_next_coder_s::coder, LZMA_FINISH, LZMA_OK, and LZMA_STREAM_END.