Rizin
unix-like reverse engineering framework and cli tools
lzma_coder Struct Reference

Public Attributes

lzma_dict dict
 Dictionary (history buffer) More...
 
lzma_lz_decoder lz
 The actual LZ-based decoder e.g. LZMA. More...
 
lzma_next_coder next
 Next coder in the chain. More...
 
bool next_finished
 True if the next filter in the chain has returned LZMA_STREAM_END. More...
 
bool this_finished
 
struct {
   size_t   pos
 
   size_t   size
 
   uint8_t   buffer [LZMA_BUFFER_SIZE]
 
temp
 
lzma_lz_encoder lz
 LZ-based encoder e.g. LZMA. More...
 
lzma_mf mf
 History buffer and match finder. More...
 

Detailed Description

Definition at line 23 of file lz_decoder.c.

Member Data Documentation

◆ buffer

uint8_t lzma_coder::buffer[LZMA_BUFFER_SIZE]

Definition at line 49 of file lz_decoder.c.

Referenced by lz_decode().

◆ dict

lzma_dict lzma_coder::dict

Dictionary (history buffer)

Definition at line 25 of file lz_decoder.c.

Referenced by decode_buffer(), lz_decoder_end(), lz_decoder_reset(), and lzma_lz_decoder_init().

◆ lz [1/2]

lzma_lz_decoder lzma_coder::lz

◆ lz [2/2]

lzma_lz_encoder lzma_coder::lz

LZ-based encoder e.g. LZMA.

Definition at line 28 of file lz_encoder.c.

◆ mf

lzma_mf lzma_coder::mf

History buffer and match finder.

Definition at line 31 of file lz_encoder.c.

Referenced by fill_window(), lz_encode(), lz_encoder_end(), and lzma_lz_encoder_init().

◆ next

lzma_next_coder lzma_coder::next

Next coder in the chain.

Next filter in the chain, if any. Note that LZMA and LZMA2 are only allowed as the last filter, but the long-range filter in future can be in the middle of the chain.

Definition at line 33 of file lz_decoder.c.

Referenced by fill_window(), lz_decode(), lz_decoder_end(), lz_encoder_end(), lz_encoder_update(), lzma_lz_decoder_init(), and lzma_lz_encoder_init().

◆ next_finished

bool lzma_coder::next_finished

True if the next filter in the chain has returned LZMA_STREAM_END.

Definition at line 36 of file lz_decoder.c.

Referenced by lz_decode(), and lzma_lz_decoder_init().

◆ pos

size_t lzma_coder::pos

◆ size

size_t lzma_coder::size

Definition at line 48 of file lz_decoder.c.

Referenced by lz_decode(), and lzma_lz_decoder_init().

◆ 

struct { ... } lzma_coder::temp

Temporary buffer needed when the LZ-based filter is not the last filter in the chain. The output of the next filter is first decoded into buffer[], which is then used as input for the actual LZ-based decoder.

Referenced by lz_decode(), and lzma_lz_decoder_init().

◆ this_finished

bool lzma_coder::this_finished

True if the LZ decoder (e.g. LZMA) has detected end of payload marker. This may become true before next_finished becomes true.

Definition at line 40 of file lz_decoder.c.

Referenced by lz_decode(), and lzma_lz_decoder_init().


The documentation for this struct was generated from the following files: