rockbox/apps
William Wilgus 3f110daf30 Fix tree.c->tree_get_entry_at() buffer overflow
I observed a crash on buflib>move_block
after dumping ram I noticed that the buffer for filetypes was being corrupted

tree_get_entry_at returns a entry from the buflib 'tree entry' buffer
filetree.c->ft_load writes data to this buffer before checking if it has
reached the last entry resulting in buffer overflow that overwrites the
next entry in the buffer ['filetypes']

Patch checks that the index passed to tree_get_entry_at() is in range
otherwise it returns NULL

Added checks + panic in other functions using tree_get_entry_at()
Fixed tree_lock_cache() calls in playlist and filetree

Change-Id: Ibf9e65652b4e00445e8e509629aebbcddffcfd4d
2018-12-14 01:28:17 -06:00
..
bitmaps Agptek Rocker: Initial commit 2018-06-12 10:31:14 +02:00
gui Volume adjustment in WPS ignored AUDIOHW_SETTING values 2018-06-20 12:19:33 +02:00
hosted/android Fix reds. 2014-03-14 23:43:45 +01:00
iap iAP: fix USB storage mount after using an iAP accessory 2016-08-26 00:16:16 +02:00
keymaps More keymap refinements 2018-12-06 15:15:26 +01:00
lang Fix possible truncation misc.c->output_dyn_value + use Kibytes 2018-12-09 22:54:55 -06:00
menus Fix possible truncation misc.c->output_dyn_value + use Kibytes 2018-12-09 22:54:55 -06:00
player Fix remaining reds/yellows. 2010-05-14 13:21:40 +00:00
plugins Pdbox hide cast-function-type fix overlapping memcpy 2018-12-08 06:23:19 -06:00
radio nwz: improve keymap 2017-11-14 16:49:36 +01:00
recorder Fix possible truncation misc.c->output_dyn_value + use Kibytes 2018-12-09 22:54:55 -06:00
README
SOURCES Add cleaned-up xDuoo X3 support 2018-07-28 10:56:31 -04:00
abrepeat.c ab_repeat: Move GUI bits to the skin engine. This allows ab_repeat to be compiled headless. 2014-03-10 22:55:26 +01:00
abrepeat.h ab_repeat: Move GUI bits to the skin engine. This allows ab_repeat to be compiled headless. 2014-03-10 22:55:26 +01:00
action.c Fix error with action subsystem and custom context mapping 2017-12-18 22:23:18 +01:00
action.h Action.c FIX / Rework / Clean-up Action System 2017-11-18 16:08:07 +01:00
alarm_menu.c Fix menu warnings 2018-10-18 00:06:31 +02:00
alarm_menu.h Fix menu warnings 2018-10-18 00:06:31 +02:00
appevents.h Get voice event out of playback.c 2017-12-12 20:28:56 -05:00
applimits.h Remove two unused defines. 2010-08-21 15:49:42 +00:00
apps.make Android: use APPEXTRA instead of makefile hack 2011-03-11 16:08:36 +00:00
audio_path.c nwzlinux: add support for radio 2017-11-06 21:37:06 +01:00
audio_thread.c Get voice event out of playback.c 2017-12-12 20:28:56 -05:00
audio_thread.h Update software recording engine to latest codec interface. 2013-06-30 00:40:27 +02:00
beep.c Enable setting of global output samplerate on certain targets. 2013-07-06 04:22:04 +02:00
bookmark.c Rewrite filesystem code (WIP) 2014-08-30 03:48:23 +02:00
bookmark.h Fix minor bookmark problems/Enhance bookmark functions 2012-03-12 08:54:02 +01:00
buffering.c Buffering: Missed converting one case assuming const handle size. 2017-12-19 14:19:39 -05:00
buffering.h Get rid of useless playlist probing and fix up some data types. 2017-12-17 16:33:50 -05:00
codec_thread.c fix builds broken by the selective stack bump for opus seeking. 2018-10-09 15:00:48 -04:00
codec_thread.h Update software recording engine to latest codec interface. 2013-06-30 00:40:27 +02:00
codecs.c Rewrite filesystem code (WIP) 2014-08-30 03:48:23 +02:00
core_asmdefs.c
cuesheet.c Fix Truncation warning in cuesheet.c->browse_cuesheet 2018-12-08 04:47:27 -06:00
cuesheet.h Implements starting playback from a cuesheet. 2014-03-10 04:13:53 +01:00
debug_menu.c Fix possible truncation misc.c->output_dyn_value + use Kibytes 2018-12-09 22:54:55 -06:00
debug_menu.h Fix menu warnings 2018-10-18 00:06:31 +02:00
enc_config.c Fix menu warnings 2018-10-18 00:06:31 +02:00
enc_config.h Fix menu warnings 2018-10-18 00:06:31 +02:00
features.txt Revert "As3525 v1/v2 Add power savings menu" 2018-07-28 17:35:07 +02:00
filetree.c Fix tree.c->tree_get_entry_at() buffer overflow 2018-12-14 01:28:17 -06:00
filetree.h
filetypes.c Fix color of files with no extension. 2013-06-05 18:35:09 -04:00
filetypes.h Add more INIT_ATTR and add config.h includes to header files with INIT_ATTR. 2011-12-19 20:12:52 +00:00
fracmul.h Build librbcodec with DSP and metadata. 2012-03-18 12:00:39 +01:00
keyboard.h
language.c Add stdio.h include for SEEK_SET define to various files. 2010-12-25 18:43:34 +00:00
language.h
logfdisp.c Don't add new message to logf when we dump it to file 2016-04-04 11:07:44 +02:00
logfdisp.h
main.c Agptek Rocker: Implement USB mass storage driver 2018-06-12 10:31:15 +02:00
menu.c menus: Stop scrolling before entering the USB screen or remnants of the previous list could appear on it. 2014-01-16 00:25:40 +01:00
menu.h Fix menu warnings 2018-10-18 00:06:31 +02:00
misc.c Fix possible truncation misc.c->output_dyn_value + use Kibytes 2018-12-09 22:54:55 -06:00
misc.h Fix possible truncation misc.c->output_dyn_value + use Kibytes 2018-12-09 22:54:55 -06:00
mpeg.c Implement time-based resume and playback start. 2014-03-10 04:12:30 +01:00
mpeg.h
onplay.c Add file view menu to file browser 2018-06-05 16:35:17 +02:00
onplay.h FS#12251 - User shortcuts in the main menu. 2011-11-15 13:22:02 +00:00
pcmbuf.c Fix a problem with audio not starting on a list of short files 2017-04-06 19:32:35 -04:00
pcmbuf.h Fix a problem with audio not starting on a list of short files 2017-04-06 19:32:35 -04:00
playback.c Fix playback.c audio_track_count() warning 2018-10-18 09:57:20 -04:00
playback.h Fix playback.c audio_track_count() warning 2018-10-18 09:57:20 -04:00
playlist.c Fix tree.c->tree_get_entry_at() buffer overflow 2018-12-14 01:28:17 -06:00
playlist.h Reenable database ramcache and playlist dircache 2017-01-17 15:27:47 -05:00
playlist_catalog.c Rewrite filesystem code (WIP) 2014-08-30 03:48:23 +02:00
playlist_catalog.h FS#11808 - Major playlist handling changes (on disk playlists) 2011-07-20 14:11:15 +00:00
playlist_menu.h
playlist_viewer.c Don't shorten the playlist on shuffle. Fixes FS#13040 2015-04-19 12:31:45 +02:00
playlist_viewer.h FS#11808 - Major playlist handling changes (on disk playlists) 2011-07-20 14:11:15 +00:00
plugin.c Remove buffering functions from plugin API. 2017-12-17 18:43:23 -05:00
plugin.h Remove buffering functions from plugin API. 2017-12-17 18:43:23 -05:00
rbcodec_helpers.c Rename HAVE_PITCHSCREEN to HAVE_PITCHCONTROL 2012-05-09 14:32:38 +02:00
rbcodecconfig.h kernel: Break out kernel primitives into separate files and move to separate dir. 2014-03-03 18:11:57 +01:00
rbcodecplatform.h rbcodec: abstract tdspeed buffer allocation 2012-05-07 10:29:07 +02:00
root_menu.c iBasso DX50/DX90: Major code cleanup and reorganization. 2015-02-02 21:57:55 +01:00
root_menu.h root_menu: Remove previous_music_is_wps() and change previous_music via event callback. 2014-04-15 23:54:28 +02:00
screen_access.c Fix put_line via multiscreen API on remotes. Stupid me. 2014-01-08 10:45:00 +01:00
screen_access.h put_line/scrolling: Make the scroll engine inform custom scrollers about start/stop of scrolling. 2014-01-12 01:34:06 +01:00
screens.c Fix possible truncation misc.c->output_dyn_value + use Kibytes 2018-12-09 22:54:55 -06:00
screens.h Fix menu warnings 2018-10-18 00:06:31 +02:00
scrobbler.c iBasso DX50/DX90: Major code cleanup and reorganization. 2015-02-02 21:57:55 +01:00
scrobbler.h Get rid of some superfluous single-purpose functions in playback. 2013-07-13 00:08:51 -04:00
settings.c Fix menu warnings 2018-10-18 00:06:31 +02:00
settings.h Revert "As3525 v1/v2 Add power savings menu" 2018-07-28 17:35:07 +02:00
settings_list.c Revert "As3525 v1/v2 Add power savings menu" 2018-07-28 17:35:07 +02:00
settings_list.h Selective Backlight/Advanced Softlock - Selective actions based on context 2017-01-17 23:06:17 +01:00
shortcuts.c Shortcuts, Fix FS#13151 Deleting shortcut removes name, icon, talkclip 2018-12-10 12:04:55 -06:00
shortcuts.h shortcuts: talk the time and configure the sleep timeout 2011-12-08 10:23:46 +00:00
sound_menu.h Fix menu warnings 2018-10-18 00:06:31 +02:00
status.c
status.h Rockbox as an application: Replace many occurences of #ifdef SIMULATOR with #if (CONFIG_PLATFORM & PLATFORM_HOSTED) (or equivalently). 2010-06-21 16:53:00 +00:00
tagcache.c Database: Fix destabilization if ramcache fails to load + misc. 2017-04-01 13:01:20 -04:00
tagcache.h Implement time-based resume and playback start. 2014-03-10 04:12:30 +01:00
tagnavi.config FS#12132 patch 7: Add a new default format for untagged tracks: 2011-07-31 16:26:39 +00:00
tagtree.c Fix menu warnings 2018-10-18 00:06:31 +02:00
tagtree.h Fix menu warnings 2018-10-18 00:06:31 +02:00
talk.c Fix possible truncation misc.c->output_dyn_value + use Kibytes 2018-12-09 22:54:55 -06:00
talk.h talk: Add debug menu entry to view statistics about talk engine. 2014-02-02 19:40:39 +01:00
tree.c Fix tree.c->tree_get_entry_at() buffer overflow 2018-12-14 01:28:17 -06:00
tree.h Fix tree.c->tree_get_entry_at() buffer overflow 2018-12-14 01:28:17 -06:00
usb_keymaps.c remove superfluous ifdef 2011-12-28 19:23:38 +00:00
usb_keymaps.h
voice_thread.c Get voice event out of playback.c 2017-12-12 20:28:56 -05:00
voice_thread.h voice_thread_init was left INIT_ATTR but is being called too late. 2012-05-21 15:21:36 -04:00

README

For general information see: docs/README
For API information see: docs/API