Skip to content

Commit 09b3c85

Browse files
release FAAD2 2.11.0
Fixes #115
1 parent 388a0f6 commit 09b3c85

File tree

2 files changed

+77
-1
lines changed

2 files changed

+77
-1
lines changed

ChangeLog

+76
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,79 @@
1+
2.11.0:
2+
[ Eugène Filin ]
3+
* Fix incorrect variable initialization
4+
5+
[ Eugene Kliuchnikov ]
6+
* CI/CD, build, etc
7+
8+
- setup GitHub workflows; test build under MSVC, OSX, MSYS2, Linux
9+
- add CMake build system
10+
- additionally add Bazel build
11+
- remove automake and MSVC project files
12+
- add fuzzers that cover almost all decoder code
13+
- setup fuzzing for various builds: (no-)FIXED_POINT / (no-)DRM
14+
- remove dead code
15+
- address differes compilers warnings
16+
- move version to distingished place that different build systems can read
17+
18+
* "Safe" bugs
19+
20+
"Safe" means that it is unlikely to be exploited; those affect the decoded
21+
result for (most likely) extreme inputs. Some fixes are useful only for
22+
"FIXED_POINT" build, since it has more restrictions on intermediate values.
23+
24+
- "negative range" in estimate_current_envelope
25+
- integer overflow in channel downmixing
26+
- integer overflow in estimate_envelope
27+
- integer overflows caused by "practical infinite" gain
28+
- integer overflows in HF adjustment code
29+
- several "left shift of negative value"
30+
- priming RNG to avoid using values that does not look random at all
31+
- do not drop the first frame of output; other decoders don't do this
32+
- touching uninitialized values in lt_update_state
33+
- touching uninitialized values in bit-reader buffers
34+
35+
* "Almost Safe" bugs
36+
37+
"Almost safe" means that those are unlinkly to be exploited; if those surface
38+
depends on build options / environment.
39+
40+
- division by zero in HF (noise?) generator and scale factor adjustment
41+
- division by zero gen_rand_vector
42+
43+
* "Unsafe" bugs
44+
45+
"Unsafe" means that those can cause crash, or could somehow else be exploited.
46+
47+
- CLI: accessing unallocated memory in mp4info (corrupted / zero-samples input) (CVE-2023-38857)
48+
- CLI: out-of-bounds when parsing mp4 header
49+
- CLI: crash because of wrong mp4 frame offset calculation (CVE-2023-38857)
50+
- error handling rvlc_decode_scale_factors (CPU bomb?)
51+
- null pointer dereference (in DRM + PS build)
52+
- index-out-of-bounds / stack-buffer-overflow in decode_sce_lfe
53+
(for streams with PCE)
54+
- stack-buffer-overflow in pns_decode
55+
- null pointer derefernce (when channels change their type in the middle
56+
of the stream)
57+
- infinite loop on currupted stream
58+
- add practial limits for scale factors; otherwise calculated NaN/Inf values
59+
could confuse further logic, resulting in access-out-of-bounds
60+
- check sf_index in window_grouping_info to avoid access-out-of-bounds
61+
- clamp bs_pointer values to avoid access-out-of-bounds
62+
- infinite loop in fill_element
63+
- sanitize input values in ps_mix_phase to avoid access-out-of-bounds
64+
- fix internal decoder buffer size calculation to avoid heap-out-of-bounds
65+
- calculate channel length multiplier even if main channel is already allocated
66+
to avoid heap-out-of-bounds
67+
- reserve enough slots for channels in decode_sce_lfe
68+
to avoid heap-out-of-bounds
69+
70+
[ David Korczynski ]
71+
* Fuzzing integration with oss-fuzz
72+
73+
[ Steveice10 ]
74+
* Add define option to disable SBR/PS support
75+
* Fix coefficient table selection in tns_decode_coef
76+
177
2.10.1:
278
[David Korczynski]
379
* Reject buffers of zero size.

properties.json

+1-1
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
11
{
22
"//": "This file contains properties used in build / release process",
3-
"PACKAGE_VERSION": "2.10.1"
3+
"PACKAGE_VERSION": "2.11.0"
44
}

0 commit comments

Comments
 (0)