Prevent overriding null terminator in cache name

This commit is contained in:
Michal Mielewczyk 2019-06-10 09:05:01 -04:00 committed by Michal Rakowski
parent 46c17144f6
commit 328d27846a
4 changed files with 5 additions and 5 deletions

View File

@ -672,8 +672,8 @@ static int _ocf_mngt_init_prepare_cache(struct ocf_cache_mngt_init_params *param
}
if (cfg->name) {
ret = env_strncpy(cache_name, sizeof(cache_name),
cfg->name, sizeof(cache_name));
ret = env_strncpy(cache_name, sizeof(cache_name) - 1,
cfg->name, sizeof(cache_name) - 1);
if (ret)
goto out;
} else {

View File

@ -26,7 +26,7 @@ ocf_cache_id_t ocf_cache_get_id(ocf_cache_t cache)
int ocf_cache_set_name(ocf_cache_t cache, const char *src, size_t src_size)
{
OCF_CHECK_NULL(cache);
return env_strncpy(cache->name, sizeof(cache->name), src, src_size);
return env_strncpy(cache->name, OCF_CACHE_NAME_SIZE - 1, src, src_size);
}
const char *ocf_cache_get_name(ocf_cache_t cache)

View File

@ -54,7 +54,7 @@ int ocf_core_set_name(ocf_core_t core, const char *src, size_t src_size)
OCF_CHECK_NULL(core);
OCF_CHECK_NULL(src);
return env_strncpy(core->name, sizeof(core->name), src, src_size);
return env_strncpy(core->name, OCF_CORE_NAME_SIZE - 1, src, src_size);
}
const char *ocf_core_get_name(ocf_core_t core)

View File

@ -27,7 +27,7 @@ int ocf_cache_io_class_get_info(ocf_cache_t cache, uint32_t io_class,
return -OCF_ERR_IO_CLASS_NOT_EXIST;
}
if (env_strncpy(info->name, sizeof(info->name),
if (env_strncpy(info->name, OCF_IO_CLASS_NAME_MAX - 1,
cache->user_parts[part_id].config->name,
sizeof(cache->user_parts[part_id].config->name))) {
return -OCF_ERR_INVAL;