dweiller
a74f800dd7
std.compress.zstandard: update for multi-for-loop change
2023-02-20 16:58:48 +11:00
dweiller
2766b704c1
std.compress.zstandard: add DictionaryIdFlagUnsupported ZstandardStream.Error
2023-02-20 09:09:06 +11:00
dweiller
1a862175d5
std.compress.zstandard: fix zstandardStream content size validation
2023-02-20 09:09:06 +11:00
dweiller
12aa478db0
std.compress.zstandard: also check block size when sequence count is 0
2023-02-20 09:09:06 +11:00
dweiller
a53cf299a6
std.compress.zstandard: add error condition to ring buffer decoding
...
Previously `executeSequenceRingBuffer()` would not verify the offset
against the number of bytes already decoded, so it would happily copy
garbage bytes rather than return an error before the window was filled.
To fix this a new `written_count` is added to the decode state that
tracks the total number of bytes decoded.
2023-02-20 09:09:06 +11:00
dweiller
5a31fc2014
std.compress.zstandard: fix erroneous literal stream empty checks
2023-02-20 09:09:06 +11:00
dweiller
8fd41314bd
std.compress.zstandard: remove unneeded branch
2023-02-20 09:09:06 +11:00
dweiller
476d2fe1fa
std.compress.zstandard: fix zstandardStream finishing early
2023-02-20 09:09:06 +11:00
dweiller
373d8ef26e
std.compress.zstandard: check FSE bitstreams are fully consumed
2023-02-20 09:09:06 +11:00
dweiller
1530e73648
std.compress.zstandard: bytes read assert to error in decodeBlockReader
2023-02-20 09:09:06 +11:00
dweiller
ee5af3c74c
std.compress.zstandard: cleanup high-level api docs and error sets
2023-02-20 09:09:06 +11:00
dweiller
31cc4605ab
std.compress.zstandard: fix errors and crashes in ZstandardStream
2023-02-20 09:09:06 +11:00
dweiller
55e6e9409c
std.compress.zstandard: fix content size check
2023-02-20 09:09:06 +11:00
dweiller
6d48b055af
std.compress.zstandard: add decodeFrameHeader
...
Also do some other minor API cleanup
2023-02-20 09:09:06 +11:00
dweiller
3975a9d7ca
std.compress.zstandard: error when FSE bitstream is no fully consumed
2023-02-20 09:09:06 +11:00
dweiller
77ca1f7859
std.compress.zstandard: remove UnusedBitSet error
2023-02-20 09:09:06 +11:00
dweiller
d9a90e1818
std.compress.zstandard: fix decodeAlloc() and remove decodeFrameAlloc()
2023-02-20 09:09:06 +11:00
dweiller
2134769436
std.compress.zstandard: validate skippable frame size
2023-02-20 09:09:06 +11:00
dweiller
98bbd959b0
std.compress.zstandard: improve block size validation
2023-02-20 09:09:06 +11:00
dweiller
ece52e0771
std.compress.zstandard: verify content size and fix crash
2023-02-20 09:09:06 +11:00
dweiller
a9c8376305
std.compress.zstandard: make ZstandardStream decode multiple frames
2023-02-20 09:09:06 +11:00
dweiller
06ab5a2cd2
std.compress.zstandard: add multi-frame decoding functions
2023-02-20 09:09:06 +11:00
dweiller
a625df4636
std.compress.zstandard: fix fse decoding crash
2023-02-20 09:09:06 +11:00
dweiller
1c509f483a
std.compress.zstandard: fix crashes
2023-02-20 09:09:06 +11:00
dweiller
596a97fb55
std.compress.zstandard: fix crashes
2023-02-20 09:09:06 +11:00
dweiller
a651704876
std.compress.zstandard: free allocated result on error
2023-02-20 09:09:06 +11:00
dweiller
3f1c4306ca
std.compress.zstandard: fix capitalisation of Zstandard
2023-02-20 09:09:06 +11:00
dweiller
ddeabc9aa7
std.compress.zstandard: add decodeFrameAlloc()
2023-02-20 09:09:06 +11:00
dweiller
89f9c5cb37
std.compress.zstandard: improve doc comments
2023-02-20 09:09:06 +11:00
dweiller
7e2755646f
std.compress.zstandard: split decompressor into multiple files
2023-02-20 09:09:06 +11:00
dweiller
6e3e72884b
std.compress.zstandard: fix crashes
2023-02-20 09:09:06 +11:00
dweiller
a180fcc93d
std.compress.zstandard: add ZstandardStream
2023-02-20 09:09:06 +11:00
dweiller
5723291444
std.compress.zstandard: add decodeBlockReader
2023-02-20 09:09:06 +11:00
dweiller
947ad3e268
std.compress.zstandard: add FrameContext and add literals into DecodeState
2023-02-20 09:09:06 +11:00
dweiller
2d35c16ee7
std.compress.zstandard: add init/deinit for ring buffer, fix len()
2023-02-20 09:09:06 +11:00
dweiller
e92575d3d4
std.compress.zstandard: verify checksum in decodeFrameAlloc()
2023-02-20 09:09:06 +11:00
dweiller
3bfba36548
std.compress.zstandard: clean up error sets and line lengths
2023-02-20 09:09:06 +11:00
dweiller
3c06e2e7d0
std.compress.zstandard: add doc comments for RingBuffer
2023-02-20 09:09:06 +11:00
dweiller
1e5b8be509
std.compress.zstandard: add window size limit param
2023-02-20 09:09:06 +11:00
dweiller
e2306ef0a0
std.compress.zstandard: add integer casts u64 -> usize
2023-02-20 09:09:06 +11:00
dweiller
7558bf6451
std.compress.zstandard: minor cleanup and add doc comments
2023-02-20 09:09:06 +11:00
dweiller
ab18adf5c3
std.compress.zstandard: remove debug logging
2023-02-20 09:09:06 +11:00
dweiller
d40b135e95
std.compress.zstandard: properly track consumed count in decodeFrameBlocks
2023-02-20 09:09:06 +11:00
dweiller
774e2f5a5c
std.compress.zstandard: add input length safety checks
2023-02-20 09:09:06 +11:00
dweiller
31d1cae8c6
std.compress.zstandard: validate fse table value count
2023-02-20 09:09:06 +11:00
dweiller
95953e1ee6
std.compress.zstandard: fix dictionary field size
2023-02-20 09:09:06 +11:00
dweiller
6b85373875
std.compress.zstandard: validate sequence lengths
2023-02-20 09:09:06 +11:00
dweiller
082acd7f17
std.compress.zstandard: clean up integer casts
2023-02-20 09:09:06 +11:00
dweiller
fc64c279a4
std.compress.zstandard: clean up api
2023-02-20 09:09:06 +11:00
dweiller
cbfaa876d4
std.compress.zstandard: cleanup ReverseBitReader
2023-02-20 09:09:05 +11:00