37 #if defined (HAVE_ENCODER_LZMA1) || defined(HAVE_DECODER_LZMA1)
46 #if defined(HAVE_ENCODER_LZMA2) || defined(HAVE_DECODER_LZMA2)
55 #if defined(HAVE_ENCODER_X86) || defined(HAVE_DECODER_X86)
64 #if defined(HAVE_ENCODER_POWERPC) || defined(HAVE_DECODER_POWERPC)
73 #if defined(HAVE_ENCODER_IA64) || defined(HAVE_DECODER_IA64)
82 #if defined(HAVE_ENCODER_ARM) || defined(HAVE_DECODER_ARM)
91 #if defined(HAVE_ENCODER_ARMTHUMB) || defined(HAVE_DECODER_ARMTHUMB)
100 #if defined(HAVE_ENCODER_SPARC) || defined(HAVE_DECODER_SPARC)
109 #if defined(HAVE_ENCODER_DELTA) || defined(HAVE_DECODER_DELTA)
202 size_t changes_size_count = 0;
226 changes_size_count +=
features[j].changes_size;
253 for (
size_t i = 0;
i <
count; ++
i) {
257 const size_t j =
count -
i - 1;
269 for (
size_t i = 0;
i <
count; ++
i) {
#define LZMA_FILTER_SPARC
#define LZMA_FILTER_ARMTHUMB
#define LZMA_FILTER_POWERPC
const lzma_allocator * allocator
void usage(const char *message)
const lzma_filter * filters
static static sync static getppid static getegid const char static filename char static len const char char static bufsiz static mask static vfork const void static prot static getpgrp const char static swapflags static arg static fd static protocol static who struct sockaddr static addrlen static backlog struct timeval struct timezone static tz const struct iovec static count static mode const void const struct sockaddr static tolen const char static pathname void count
#define LZMA_FILTER_DELTA
Filter ID.
#define LZMA_FILTERS_MAX
Maximum number of filters in a chain.
uint64_t lzma_raw_coder_memusage(lzma_filter_find coder_find, const lzma_filter *filters)
static lzma_ret validate_chain(const lzma_filter *filters, size_t *count)
static const struct @646 features[]
size_t options_size
Size of the filter-specific options structure.
lzma_ret lzma_raw_coder_init(lzma_next_coder *next, const lzma_allocator *allocator, const lzma_filter *options, lzma_filter_find coder_find, bool is_encoder)
Filter-specific stuff common for both encoder and decoder.
const lzma_filter_coder *(* lzma_filter_find)(lzma_vli id)
memcpy(mem, inblock.get(), min(CONTAINING_RECORD(inblock.get(), MEMBLOCK, data) ->size, size))
static const char struct stat static buf struct stat static buf static vhangup int options
#define LZMA_FILTER_LZMA2
LZMA2 Filter ID.
#define LZMA_FILTER_LZMA1
LZMA1 Filter ID.
assert(limit<=UINT32_MAX/2)
Custom functions for memory handling.
Both lzma_filter_encoder and lzma_filter_decoder begin with these members.
uint64_t(* memusage)(const void *options)
void * options
Pointer to filter-specific options structure.
Hold data and function pointers of the next filter in the chain.
Options for the Delta filter.
Options specific to the LZMA1 and LZMA2 filters.
#define LZMA_MEMUSAGE_BASE
#define return_if_error(expr)
Return if expression doesn't evaluate to LZMA_OK.
void * lzma_alloc(size_t size, const lzma_allocator *allocator) lzma_attribute((__malloc__)) lzma_attr_alloc_size(1)
Allocates memory.
void error(const char *msg)
uint64_t lzma_vli
Variable-length integer type.
#define LZMA_VLI_UNKNOWN
VLI value to denote that the value is unknown.
lzma_ret
Return values used by several functions in liblzma.
@ LZMA_PROG_ERROR
Programming error.
@ LZMA_MEM_ERROR
Cannot allocate memory.
@ LZMA_OPTIONS_ERROR
Invalid or unsupported options.
@ LZMA_OK
Operation completed successfully.
lzma_ret lzma_next_filter_init(lzma_next_coder *next, const lzma_allocator *allocator, const lzma_filter_info *filters)
void lzma_free(void *ptr, const lzma_allocator *allocator)
Frees memory.
void lzma_next_end(lzma_next_coder *next, const lzma_allocator *allocator)