mariadb/storage/xtradb/row
Marko Mäkelä b761211685 MDEV-18659: Fix string truncation/overflow in InnoDB and XtraDB
Fix the warnings issued by GCC 8 -Wstringop-truncation
and -Wstringop-overflow in InnoDB and XtraDB.

This work is motivated by Jan Lindström. The patch mainly differs
from his original one as follows:

(1) We remove explicit initialization of stack-allocated string buffers.
The minimum amount of initialization that is needed is a terminating
NUL character.
(2) GCC issues a warning for invoking strncpy(dest, src, sizeof dest)
because if strlen(src) >= sizeof dest, there would be no terminating
NUL byte in dest. We avoid this problem by invoking strncpy() with
a limit that is 1 less than the buffer size, and by always writing
NUL to the last byte of the buffer.
(3) We replace strncpy() with memcpy() or strcpy() in those cases
when the result is functionally equivalent.

Note: fts_fetch_index_words() never deals with len==UNIV_SQL_NULL.
This was enforced by an assertion that limits the maximum length
to FTS_MAX_WORD_LEN. Also, the encoding that InnoDB uses for
the compressed fulltext index is not byte-order agnostic, that is,
InnoDB data files that use FULLTEXT INDEX are not portable between
big-endian and little-endian systems.
2019-03-06 11:22:27 +02:00
..
row0ext.cc Revert "MDEV-6928: Add trx pointer to struct mtr_t" 2018-01-29 11:05:17 +02:00
row0ftsort.cc MDEV-18749: Uninitialized value upon ADD FULLTEXT INDEX 2019-03-06 10:37:43 +02:00
row0import.cc Follow-up to MDEV-12112: corruption in encrypted table may be overlooked 2018-12-17 19:33:44 +02:00
row0ins.cc Fix embedded innodb_plugin after 560799ebd8 2019-02-02 12:49:04 +02:00
row0log.cc Merge branch '10.0' into 10.1 2018-10-30 15:10:01 +01:00
row0merge.cc 5.6.42-84.2 2019-01-24 16:48:39 +01:00
row0mysql.cc MDEV-18659: Fix string truncation/overflow in InnoDB and XtraDB 2019-03-06 11:22:27 +02:00
row0purge.cc 5.6.38-83.0 2018-01-23 18:04:34 +02:00
row0quiesce.cc Merge branch 'github/10.0' into 10.1 2018-02-02 10:09:44 +01:00
row0row.cc Merge remote-tracking branch '5.5' into 10.0 2018-01-24 12:29:31 +02:00
row0sel.cc 5.6.42-84.2 2019-01-24 16:48:39 +01:00
row0uins.cc Merge 10.0 into 10.1 2017-08-28 15:05:46 +03:00
row0umod.cc Merge branch 'github/10.0' into 10.1 2018-02-02 10:09:44 +01:00
row0undo.cc Revert "MDEV-14705: Do not rollback on InnoDB shutdown" 2018-04-10 08:55:20 +03:00
row0upd.cc MDEV-15611 Due to the failure of foreign key detection, Galera slave node killed himself. 2018-06-15 09:04:26 +03:00
row0vers.cc move to storage/xtradb 2015-05-04 19:15:28 +02:00