diff options
author | Oleksandr Byelkin <sanja@mariadb.com> | 2023-01-31 10:37:31 +0100 |
---|---|---|
committer | Oleksandr Byelkin <sanja@mariadb.com> | 2023-01-31 10:37:31 +0100 |
commit | de2d08994255739d53ba28ea34288ca8352029b1 (patch) | |
tree | cc557fe9fa3655a03cae9b6895c6e8a0348b2f86 /sql/mysqld.cc | |
parent | 4d9fe4032b768e04e33482d83199882c7bb0d9d8 (diff) | |
parent | 638625278e7cadf42633e6f9d1b663ca1e3e1bb1 (diff) | |
download | mariadb-git-de2d08994255739d53ba28ea34288ca8352029b1.tar.gz |
Merge branch '10.8' into 10.9
Diffstat (limited to 'sql/mysqld.cc')
-rw-r--r-- | sql/mysqld.cc | 15 |
1 files changed, 8 insertions, 7 deletions
diff --git a/sql/mysqld.cc b/sql/mysqld.cc index 2644ac3c896..4dc708c9383 100644 --- a/sql/mysqld.cc +++ b/sql/mysqld.cc @@ -5055,12 +5055,11 @@ static int init_server_components() else // full wsrep initialization { // add basedir/bin to PATH to resolve wsrep script names - char* const tmp_path= (char*)my_alloca(strlen(mysql_home) + - strlen("/bin") + 1); + size_t tmp_path_size= strlen(mysql_home) + 5; /* including "/bin" */ + char* const tmp_path= (char*)my_alloca(tmp_path_size); if (tmp_path) { - strcpy(tmp_path, mysql_home); - strcat(tmp_path, "/bin"); + snprintf(tmp_path, tmp_path_size, "%s/bin", mysql_home); wsrep_prepend_PATH(tmp_path); } else @@ -5891,8 +5890,9 @@ int mysqld_main(int argc, char **argv) char real_server_version[2 * SERVER_VERSION_LENGTH + 10]; set_server_version(real_server_version, sizeof(real_server_version)); - strcat(real_server_version, "' as '"); - strcat(real_server_version, server_version); + safe_strcat(real_server_version, sizeof(real_server_version), "' as '"); + safe_strcat(real_server_version, sizeof(real_server_version), + server_version); sql_print_information(ER_DEFAULT(ER_STARTUP), my_progname, real_server_version, @@ -7890,7 +7890,8 @@ static int mysql_init_variables(void) } else my_path(prg_dev, my_progname, "mysql/bin"); - strcat(prg_dev,"/../"); // Remove 'bin' to get base dir + // Remove 'bin' to get base dir + safe_strcat(prg_dev, sizeof(prg_dev), "/../"); cleanup_dirname(mysql_home,prg_dev); } #else |