diff options
author | unknown <osku@127.(none)> | 2005-09-29 13:02:18 +0300 |
---|---|---|
committer | unknown <osku@127.(none)> | 2005-09-29 13:02:18 +0300 |
commit | b2d8eb02a7ee3fd6204ddbb037321b76f36db24e (patch) | |
tree | a9705f364c5027166020d94dd5da2f9092fb04a8 /innobase/mem | |
parent | a5dd3d5d8f8e67cb74403f8265b9c61daf9d5ccd (diff) | |
download | mariadb-git-b2d8eb02a7ee3fd6204ddbb037321b76f36db24e.tar.gz |
InnoDB: Fix potential buffer underflow.
innobase/include/ut0mem.h:
Add ut_strlcpy_rev.
innobase/mem/mem0mem.c:
Use ut_strlcpy_rev instead of buggy own implementation.
innobase/ut/ut0mem.c:
Add ut_strlcpy_rev.
Diffstat (limited to 'innobase/mem')
-rw-r--r-- | innobase/mem/mem0mem.c | 4 |
1 files changed, 1 insertions, 3 deletions
diff --git a/innobase/mem/mem0mem.c b/innobase/mem/mem0mem.c index 85f0119d02a..daf78008d45 100644 --- a/innobase/mem/mem0mem.c +++ b/innobase/mem/mem0mem.c @@ -187,9 +187,7 @@ mem_heap_create_block( } block->magic_n = MEM_BLOCK_MAGIC_N; - ut_memcpy(&(block->file_name), file_name + ut_strlen(file_name) - 7, - 7); - block->file_name[7]='\0'; + ut_strlcpy_rev(block->file_name, file_name, sizeof(block->file_name)); block->line = line; #ifdef MEM_PERIODIC_CHECK |