Function report

Linux Kernel

v5.5.9

Brick Technologies Co., Ltd

Source Code:lib\xz\xz_dec_stream.c Create Date:2022-07-28 07:08:20
Last Modify:2020-03-12 14:18:49 Copyright©Brick
home page Tree
Annotation kernel can get tool activityDownload SCCTChinese

Name:Decode a variable-length integer (little-endian base-128 encoding)

Proto:static enum xz_ret dec_vli(struct xz_dec *s, const uint8_t *in, size_t *in_pos, size_t in_size)

Type:enum xz_ret

Parameter:

TypeParameterName
struct xz_dec *s
const uint8_t *in
size_t *in_pos
size_tin_size
180  If Position in variable-length integers and Check fields == 0 Then Variable-length integer decoded by dec_vli() = 0
183  When in_pos < in_size cycle
184  byte = in[ * in_pos]
185  ++in_pos
187  Variable-length integer decoded by dec_vli() |= (byte & 0x7F) << Position in variable-length integers and Check fields
189  If (byte & 0x80) == 0 Then
195  Return XZ_STREAM_END
198  Position in variable-length integers and Check fields += 7
199  If Position in variable-length integers and Check fields == 7 * Maximum encoded size of a VLI Then Return XZ_DATA_ERROR
203  Return XZ_OK
Caller
NameDescribe
dec_indexDecode the Number of Records, Unpadded Size, and Uncompressed Size* fields from the Index field. That is, Index Padding and CRC32 are not* decoded by this function.* This can return XZ_OK (more input needed), XZ_STREAM_END (everything
dec_block_headerDecode the Block Header and initialize the filter chain.