diff options
author | Marcin Bukat <marcin.bukat@gmail.com> | 2014-01-09 21:37:07 +0100 |
---|---|---|
committer | Marcin Bukat <marcin.bukat@gmail.com> | 2014-01-16 10:17:39 +0100 |
commit | 7ab237b025cbb4c25d345604da32e894379c1721 (patch) | |
tree | 92d147029519c55d57db4273066d57b960ad7158 /apps/plugin.h | |
parent | 7f5dce4116bf4e62e0cd3ef16730157e17625e1c (diff) | |
download | rockbox-7ab237b025cbb4c25d345604da32e894379c1721.tar.gz rockbox-7ab237b025cbb4c25d345604da32e894379c1721.zip |
buflib: Add crc field protecting buflib cookie integrity
This should catch the case of buffer misuse which results
in corrupted cookie of next allocation. The check is performed
on move_block() so it may be a bit late.
There is buflib_check_valid() provided which checks the
integrity of all cookies for given context.
On DEBUG build with --sdl-thread this check is carried out
for core_ctx on every context switch to catch problems earlier.
Change-Id: I999d4576084592394e3dbd3bdf0f32935ff5f601
Reviewed-on: http://gerrit.rockbox.org/711
Reviewed-by: Thomas Martitz <kugel@rockbox.org>
Diffstat (limited to 'apps/plugin.h')
-rw-r--r-- | apps/plugin.h | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/apps/plugin.h b/apps/plugin.h index 8a0d0562ff..1d1e9ee26e 100644 --- a/apps/plugin.h +++ b/apps/plugin.h | |||
@@ -457,7 +457,7 @@ struct plugin_api { | |||
457 | int numberlen IF_CNFN_NUM_(, int *num)); | 457 | int numberlen IF_CNFN_NUM_(, int *num)); |
458 | bool (*file_exists)(const char *file); | 458 | bool (*file_exists)(const char *file); |
459 | char* (*strip_extension)(char* buffer, int buffer_size, const char *filename); | 459 | char* (*strip_extension)(char* buffer, int buffer_size, const char *filename); |
460 | unsigned (*crc_32)(const void *src, unsigned len, unsigned crc32); | 460 | uint32_t (*crc_32)(const void *src, uint32_t len, uint32_t crc32); |
461 | 461 | ||
462 | int (*filetype_get_attr)(const char* file); | 462 | int (*filetype_get_attr)(const char* file); |
463 | 463 | ||