Commit graph

300 commits

Author SHA1 Message Date
Ray Essick
ff358cfa4e Merge "Fix for oobw in impd_dec_slopes in DRC dynamic payload" into pi-dev am: 622f724911
am: 6c7bac4af8

Change-Id: Ieea4955c915f84e7c150e6427d785bf78f287741
2019-01-02 12:16:53 -08:00
Ramesh Katuri
015d135f65 Fix for stack buffer overflow in ixheaacd_latm_stream_mux_config am: 2e513342a1
am: f4b31cc0cf

Change-Id: I625b419eeca9a88d0e9d7eff4d03450fa6bb8cea
2019-01-02 12:08:35 -08:00
Ray Essick
6c7bac4af8 Merge "Fix for oobw in impd_dec_slopes in DRC dynamic payload" into pi-dev
am: 622f724911

Change-Id: I365d904e3c5f10ba54f03383f6298bec5b4b97fd
2019-01-02 11:53:12 -08:00
Ramesh Katuri
f4b31cc0cf Fix for stack buffer overflow in ixheaacd_latm_stream_mux_config
am: 2e513342a1

Change-Id: I9abc97a15b85bf76cf464f7ba86a81430f13726d
2019-01-02 11:52:59 -08:00
Ray Essick
622f724911 Merge "Fix for oobw in impd_dec_slopes in DRC dynamic payload" into pi-dev 2019-01-02 19:38:40 +00:00
TreeHugger Robot
e6d51f6bf3 Merge "Fix for files with unsupported AOT in the first frame" 2018-12-29 14:44:12 +00:00
TreeHugger Robot
00e3408f15 Merge "Fix for segmentation fault in ixheaacd_dec_execute" 2018-12-29 00:03:41 +00:00
TreeHugger Robot
67f9744ec7 Merge "Fix for oobw in impd_drc_parse_coeff() due to gain_seq_idx" 2018-12-29 00:02:11 +00:00
TreeHugger Robot
c5557262fb Merge "Fix for multiply overflow in coupling channel element decoding" 2018-12-28 23:11:49 +00:00
TreeHugger Robot
c27192a5bb Merge "Fix for use of uninitialized variable in ixheaacd_read_block_data." 2018-12-28 23:11:47 +00:00
TreeHugger Robot
300eb8e9e3 Merge "Fix for Use of uninitialized value in ixheaacd_mps_mapindexdata" 2018-12-28 23:11:00 +00:00
TreeHugger Robot
725e48df07 Merge "Fix for Use of uninitialized value in ixheaacd_fd_channel_stream." 2018-12-28 23:10:28 +00:00
TreeHugger Robot
024727c93e Merge "Fix for Global buffer overflow in ixheaacd_extract_frame_info_ld" 2018-12-28 23:10:11 +00:00
TreeHugger Robot
039a5f8a1a Merge "Fix for Heap buffer overflow in main process function" 2018-12-28 23:08:44 +00:00
Ramesh Katuri
f7144dfe8f Fix for oobr in impd_manage_drc_complexity function
bs_gain_set_idx is a 6 bit field read from bitstream, which is used
to access gain_set_index_for_channel_group[] whose size is GAIN_SET_COUNT_MAX
which is 24.bs_gain_set_idx value greater than 23 is causing oob access.

As fix for this issue bound check is added for bs_gain_set_idx

Bug:119263784
Test: vendor
Change-Id: I26d3668c54a739016c1102158c73db49cb35f1c4
2018-12-28 11:45:54 -08:00
Ramesh Katuri
e32f2f97cd Fix for Use of uninitialized value in ixheaacd_fd_channel_stream.
valgrind has reported usage of un-initialized variable for elements
of structure pstr_core_coder.

As a fix initialized the structure with memset.

Bug:118492594
Test: vendor
Change-Id: If1ce7f04ae03b58f44b9b551cab2461349e48394
2018-12-28 10:22:04 -08:00
Ramesh Katuri
7513c8b52a Fix for Use of uninitialized value in ixheaacd_mps_mapindexdata
valgrind has reported usage of un-initialized variable,interpolate_local
in,ixheaacd_mps_mapindexdata().

As a fix interpolate_local variable is initialized to zero

Bug:118492282
Test: vendor
Change-Id: I741fa634a4f0481b59acbbb88b4cd7a44200bed6
2018-12-28 10:15:50 -08:00
Rajat Kumar
ee90aac01b Fix for Heap buffer overflow in main process function
Initialized num_ch to zero and moved num_ch update outside
if (skip_full_decode == 0) condition to avoid propagation
of uninitialized or wrong num_ch for all cases.

Bug:120590841
Test: vendor, poc
Change-Id: I8aca82be8a20689547a2b85f8f3a06700b9927d2
2018-12-28 09:44:41 -08:00
Rajat Kumar
fa41125141 Fix for Global buffer overflow in ixheaacd_extract_frame_info_ld
adds a bounds check.

Bug:120250878
Test: vendor
Change-Id: I7760f81bd90f2901ae5fa61a850298d216909592
2018-12-22 06:57:22 -08:00
Ramesh Katuri
b17f1b007f Fix for segmentation fault in ixheaacd_dec_execute
ixheaacd_aac_decoder_init() is called inside ixheaacd_dec_execute().
ixheaacd_aac_decoder_init() will return NULL pointer in failure case and
pointer to aac decoder structure in successful case.

After this function NULL pointer check before de-referencing is missing
which is causing segmentation fault.

As a fix NULL pointer check is added

Bug:118615735
Test: vendor
Change-Id: I0e9a22e0f97dc99c238a026bf0fd693c3e93e4e7
2018-12-22 05:58:47 -08:00
Ramesh Katuri
cd952cc64e Fix for multiply overflow in coupling channel element decoding
The numbers stored in the table
common_tables_ptr->cc_gain_scale are multiplied with itself,
((-norm_value) - 1) times and stored in ind_channel_info->cc_gain.
Since the number stored in common_tables_ptr->cc_gain_scale
has a q factor of 29, the result is right shifted by 29 to maintain
the same q factor.

Bug:112705155
Test: vendor
Change-Id: I94199d172e4d3ad511dbae3a49d76f8e440fe724
2018-12-22 05:57:51 -08:00
Tripti Tiwari
34f516c4c8 Fix for use of uninitialized variable in ixheaacd_read_block_data.
Valgrind has reported use of uninitialized variable in
ixheaacd_read_block_data, which is caused due to uninitialized
api object.

As fix, initialized the api object.

Bug:118615735.
Test: vendor
Change-Id: Ib2702eac2c2f659589ce7616a9818913879ff3de
2018-12-22 05:57:18 -08:00
Ramesh Katuri
56a2e1e9c6 Fix for oobw in impd_dec_slopes in DRC dynamic payload
Bug:118143575
Test: vendor
Change-Id: I35940099dc804a96a5790bf8e8b29df049838a17
2018-12-21 10:43:09 -08:00
Ramesh Katuri
2e513342a1 Fix for stack buffer overflow in ixheaacd_latm_stream_mux_config
Bug:118149009
Test: vendor
Change-Id: I16213a2db36e9d678f7105edda9a4a6c17a3f8a6
2018-12-21 10:27:29 -08:00
Ramesh Katuri
a516b49570 Fix for oobw in impd_drc_parse_coeff() due to gain_seq_idx
gain_seq_idx is a 6 bit value read from the bit stream.
it can get any value between 0 to 63. gain_seq_idx is used
to access gain_set_params_index_for_gain_sequence[] array
whose size is SEQUENCE_COUNT_MAX which is 24. if gain_seq_idx
value is greater than or equal to SEQUENCE_COUNT_MAX cause
oob write.

Bound check on gain_seq_idx is added to prevent oob access.

Bug:119117381
Test: vendor
Change-Id: I571e6e705489ae1c46c651f87491f15428719b30
2018-12-21 10:11:38 -08:00
Xin Li
a7c9b93299 [automerger skipped] DO NOT MERGE - Merge pie-platform-release (PPRL.181205.001) into master am: 52167e2df6 -s ours am: 4e3bf0162a -s ours
am: 3221bde340  -s ours

Change-Id: I6398e5fcbf734c9ab8cf2dbbd5442128e88a9cc9
2018-12-13 13:51:49 -08:00
Xin Li
3221bde340 [automerger skipped] DO NOT MERGE - Merge pie-platform-release (PPRL.181205.001) into master am: 52167e2df6 -s ours
am: 4e3bf0162a  -s ours

Change-Id: I12a2c2a72a30f11e02210718c8dff15dd59f908b
2018-12-13 12:14:03 -08:00
Xin Li
4e3bf0162a [automerger skipped] DO NOT MERGE - Merge pie-platform-release (PPRL.181205.001) into master
am: 52167e2df6  -s ours

Change-Id: I8fd4681534c3716f79cfe4f12c27a3a8e807caad
2018-12-13 11:15:33 -08:00
Xin Li
b55e9617c9 [automerger skipped] DO NOT MERGE - Merge pie-platform-release (PPRL.181205.001) into stage-aosp-master am: e72e3e2fe7 -s ours
am: 7e0b5ee895  -s ours

Change-Id: I708a5571e910ed8d67cd57529b6271004c032e82
2018-12-11 15:31:38 -08:00
Xin Li
7e0b5ee895 [automerger skipped] DO NOT MERGE - Merge pie-platform-release (PPRL.181205.001) into stage-aosp-master
am: e72e3e2fe7  -s ours

Change-Id: Iafab3072e6a1a907a071358fe16c2c9cc17aa024
2018-12-11 15:02:23 -08:00
Xin Li
52167e2df6 DO NOT MERGE - Merge pie-platform-release (PPRL.181205.001) into master
Bug: 120502534
Change-Id: Idd535b4712252e6eb618c996f5960c872380bf6c
2018-12-11 13:59:11 -08:00
Xin Li
e72e3e2fe7 DO NOT MERGE - Merge pie-platform-release (PPRL.181205.001) into stage-aosp-master
Bug: 120502534
Change-Id: Ic060fc0959d95a05cef008104c252ebb5b343559
2018-12-11 00:27:47 +00:00
Ivan Lozano
1e4bbe9922 Enable bounds sanitization in libxaac.
Enables bounds sanitization in libxaac.

Bug: 117221610
Test: Device boots
Change-Id: I8fa29ef113907937751e21c46dfc9a7790d9205f
2018-12-05 18:37:51 -08:00
Bill Rassieur
8f3b025cb0 Merge PQ1A.181205.006 from Pi-QPR1-Release into ToT for Pi-Platform release.\n\nBUG: 120448245
Change-Id: If079a61e69db7689935e70a9c80c64f36bbd3bd1
2018-12-04 16:59:24 +00:00
Bill Yi
9cea83ae6e Merge pi-qpr1-release PQ1A.181105.017.A1 to pi-platform-release
Change-Id: Id58c1f1c37e5a7cc5a367e3521f21480787e4f51
2018-11-28 18:34:19 -08:00
Ramesh Katuri
643bbd5b05 Merge "Fix for Segmentation fault in ixheaacd_sbr_dec_from_mps" into pi-dev am: 657393883b
am: fb2c2ab72c

Change-Id: I47aa528e9327cc22eab0f3811d2ecc7852db96f5
2018-11-28 14:01:20 -08:00
Ramesh Katuri
fb2c2ab72c Merge "Fix for Segmentation fault in ixheaacd_sbr_dec_from_mps" into pi-dev
am: 657393883b

Change-Id: I8993daea6889ba906efa72999145ce3756c0a367
2018-11-28 13:53:13 -08:00
TreeHugger Robot
657393883b Merge "Fix for Segmentation fault in ixheaacd_sbr_dec_from_mps" into pi-dev 2018-11-28 21:33:31 +00:00
Ramesh Katuri
06c5d85bfd Fix for oobw-in-impd_parse_drc_instructions_uni_drc am: 4692bee50b
am: 9a26915ed2

Change-Id: I9d01f979d2fb637594719d53789ee4afc0e91f3d
2018-11-27 17:31:41 -08:00
Ramesh Katuri
9a26915ed2 Fix for oobw-in-impd_parse_drc_instructions_uni_drc
am: 4692bee50b

Change-Id: Ica967130fad95730ead7434adbc065457a121731
2018-11-27 17:27:37 -08:00
Ramesh Katuri
f81b8d0dbd Fix for Segmentation fault in ixheaacd_sbr_dec_from_mps
Bug: 110629822
Test: re-run poc
Change-Id: I5495b01d5d0c779185ff04eb8f1c048f353396b2
(cherry picked from commit 70396d6ced)
2018-11-27 23:22:45 +00:00
Ramesh Katuri
4692bee50b Fix for oobw-in-impd_parse_drc_instructions_uni_drc
Bug:117883804
Test: vendor
Change-Id: I9512dbc1d184ea838572218df3db9e91574c1460
2018-11-27 13:58:34 -08:00
TreeHugger Robot
859712dff3 Merge "Fix for crash in ixheaacd_lt_prediction" 2018-11-27 02:05:25 +00:00
TreeHugger Robot
fcbf01186b Merge "Fix for heap buffer overflow in showbits_7 function" 2018-11-27 02:01:37 +00:00
TreeHugger Robot
f20429551c Merge "Fix for un-initialized value in ixheaacd_acelp_alias_cnx" 2018-11-27 01:59:59 +00:00
Ramesh Katuri
ec6c3bb222 Fix for heap buffer overflow in showbits_7 function
only fetch next byte of input if we actually need it.

Bug: 117655547
Test: vendor
Change-Id: I4b12feb0b92861b75689b54eae207cf1c693023c
2018-11-25 16:34:14 -08:00
Ramesh Katuri
52618d0834 Fix for un-initialized value in ixheaacd_acelp_alias_cnx
In xaacdec even though lpd decoder handle is defined to support 6
channels, only 2 channels are initialized with data (because we
support only stereo in USAC profile). The input stream used for
this issue has 3 channels. When third channel is getting processed
valgrind is reporting un-initialized data usage.

To solve the issue, a conditional check is added based on number
of channels in the bit stream

Bug:117661478
Test: vendor
Change-Id: Iafc63a022d168791f63b79b0c1965182e69cafe6
2018-11-25 15:50:42 -08:00
Ramesh Katuri
c0ead4ba18 Fix for heap buffer overflow in dec data init function
Bug:117935831
Test: vendor + poc
Change-Id: Iede9bd265eebbefda39c3328a5367399e6ace963
2018-11-25 15:36:26 -08:00
Ramesh Katuri
d9c4a50914 Fix for crash in ixheaacd_lt_prediction
Crash was due to integer overflow. To resolve the
integer overflow issue added saturation addition
and subtraction

Bug:116969100

Change-Id: Ib0d21403c3d714b434f893d71d9a32eea9fc9219
2018-11-23 15:35:29 -08:00
Ray Essick
577f7d9147 Merge "Fix for OOB write in mpeg-d drc bit stream parsing by adding bound checks" into pi-dev am: 850b4ba6f3
am: 94c8007f23

Change-Id: Ie1399a552c63c50c5ebb13b180a560303265bfa5
2018-11-21 09:38:33 -08:00