diff options
author | Marko Mäkelä <marko.makela@mariadb.com> | 2019-03-21 08:54:35 +0200 |
---|---|---|
committer | Marko Mäkelä <marko.makela@mariadb.com> | 2019-03-21 08:54:35 +0200 |
commit | 3d1b6f68f1915d9e1ee524b63a78cd412aff0ab4 (patch) | |
tree | 1e514849ed1b94080d6156bffe7278559b012fb6 /extra/mariabackup/backup_copy.cc | |
parent | 630199e7248bce59066850869cf1f932dbf8f994 (diff) | |
download | mariadb-git-3d1b6f68f1915d9e1ee524b63a78cd412aff0ab4.tar.gz |
Mariabackup: Ensure NUL termination in strncpy()
Diffstat (limited to 'extra/mariabackup/backup_copy.cc')
-rw-r--r-- | extra/mariabackup/backup_copy.cc | 3 |
1 files changed, 2 insertions, 1 deletions
diff --git a/extra/mariabackup/backup_copy.cc b/extra/mariabackup/backup_copy.cc index be99d49a86f..7543ed89b1f 100644 --- a/extra/mariabackup/backup_copy.cc +++ b/extra/mariabackup/backup_copy.cc @@ -2352,7 +2352,8 @@ static void rocksdb_copy_back() { return; char rocksdb_home_dir[FN_REFLEN]; if (xb_rocksdb_datadir && is_abs_path(xb_rocksdb_datadir)) { - strncpy(rocksdb_home_dir, xb_rocksdb_datadir, sizeof(rocksdb_home_dir)); + strncpy(rocksdb_home_dir, xb_rocksdb_datadir, sizeof rocksdb_home_dir - 1); + rocksdb_home_dir[sizeof rocksdb_home_dir - 1] = '\0'; } else { snprintf(rocksdb_home_dir, sizeof(rocksdb_home_dir), "%s/%s", mysql_data_home, xb_rocksdb_datadir?trim_dotslash(xb_rocksdb_datadir): ROCKSDB_BACKUP_DIR); |