函数逻辑报告

Linux Kernel

v5.5.9

Brick Technologies Co., Ltd

Source Code:lib\zstd\decompress.c Create Date:2022-07-27 08:05:17
Last Modify:2020-03-12 14:18:49 Copyright©Brick
首页 函数Tree
注解内核,赢得工具下载SCCTEnglish

函数名称:! ZSTD_decompressFrame() :*@dctx must be properly initialized

函数原型:static size_t ZSTD_decompressFrame(ZSTD_DCtx *dctx, void *dst, size_t dstCapacity, const void **srcPtr, size_t *srcSizePtr)

返回类型:size_t

参数:

类型参数名称
ZSTD_DCtx *dctx
void *dst
size_tdstCapacity
const void **srcPtr
size_t *srcSizePtr
1568  ip等于srcPtr
1569  ostart等于dst
1570  oend等于ostartdstCapacity
1571  op等于ostart
1572  remainingSize等于srcSizePtr
1575  如果remainingSize小于ZSTD_frameHeaderSize_minZSTD_blockHeaderSize则返回:-***************************************** Error codes handling(srcSize_wrong)
1580  frameHeaderSize等于 : size of the Frame Header
1581  如果ZSTD_isError() - tells if a size_t function result is an error code*@code: The function result to check for error.* Return: Non-zero iff the code is an error.则返回:frameHeaderSize
1583  如果remainingSize小于frameHeaderSizeZSTD_blockHeaderSize则返回:-***************************************** Error codes handling(srcSize_wrong)
1586  ip加等于frameHeaderSize
1587  remainingSize减等于frameHeaderSize
1591  当1循环
1594  cBlockSize等于! ZSTD_getcBlockSize() :* Provides the size of compressed block from block header `src`
1595  如果ZSTD_isError() - tells if a size_t function result is an error code*@code: The function result to check for error.* Return: Non-zero iff the code is an error.则返回:cBlockSize
1598  ip加等于ZSTD_blockHeaderSize
1599  remainingSize减等于ZSTD_blockHeaderSize
1600  如果cBlockSize大于remainingSize则返回:-***************************************** Error codes handling(srcSize_wrong)
1604  :blockType恒等于bt_compressed
1604  退出
1605  :blockType恒等于bt_raw
1605  退出
1606  :blockType恒等于bt_rle
1606  退出
1607  :blockType恒等于bt_reserved
1608  默认
1611  如果ZSTD_isError() - tells if a size_t function result is an error code*@code: The function result to check for error.* Return: Non-zero iff the code is an error.则返回:decodedSize
1613  如果checksumFlagxxh64_update( & xxhState, op, decodedSize)
1615  op加等于decodedSize
1616  ip加等于cBlockSize
1617  remainingSize减等于cBlockSize
1618  如果lastBlock退出
1622  如果checksumFlag
1623  checkCalc等于xxh64_digest( & xxhState)
1625  如果remainingSize小于4则返回:-***************************************** Error codes handling(checksum_wrong)
1627  checkRead等于ZSTD_readLE32(ip)
1628  如果checkRead不等于checkCalc则返回:-***************************************** Error codes handling(checksum_wrong)
1630  ip加等于4
1631  remainingSize减等于4
1635  srcPtr等于ip
1636  srcSizePtr等于remainingSize
1637  返回:opostart
调用者
名称描述
ZSTD_decompressMultiFrame