diff options
author | delphij <delphij@FreeBSD.org> | 2008-10-23 00:31:15 +0000 |
---|---|---|
committer | delphij <delphij@FreeBSD.org> | 2008-10-23 00:31:15 +0000 |
commit | 4274559e693eb18b4a489b667304bc51c2d6b21a (patch) | |
tree | a5a273452a7bca2e3dbbe735de645c2fe13c25ed /usr.sbin/nscd | |
parent | be08be711cde5e375ec2ea50020483aa967fe67f (diff) | |
download | FreeBSD-src-4274559e693eb18b4a489b667304bc51c2d6b21a.zip FreeBSD-src-4274559e693eb18b4a489b667304bc51c2d6b21a.tar.gz |
Slightly adjust code logic: we allocate a "size"ed length of memory, not
size+1. Use strlcpy() to avoid using - 1 as length for strncpy().
Diffstat (limited to 'usr.sbin/nscd')
-rw-r--r-- | usr.sbin/nscd/cachelib.c | 10 |
1 files changed, 5 insertions, 5 deletions
diff --git a/usr.sbin/nscd/cachelib.c b/usr.sbin/nscd/cachelib.c index 0a339ee..daa8193 100644 --- a/usr.sbin/nscd/cachelib.c +++ b/usr.sbin/nscd/cachelib.c @@ -550,7 +550,7 @@ register_cache_entry(struct cache_ *the_cache, the_cache->entries = new_entries; } - entry_name_size = strlen(params->entry_name); + entry_name_size = strlen(params->entry_name) + 1; switch (params->entry_type) { case CET_COMMON: @@ -564,9 +564,9 @@ register_cache_entry(struct cache_ *the_cache, (struct cache_entry_params *)&new_common_entry->common_params; new_common_entry->common_params.entry_name = (char *)calloc(1, - entry_name_size+1); + entry_name_size); assert(new_common_entry->common_params.entry_name != NULL); - strncpy(new_common_entry->common_params.entry_name, + strlcpy(new_common_entry->common_params.entry_name, params->entry_name, entry_name_size); new_common_entry->name = new_common_entry->common_params.entry_name; @@ -618,9 +618,9 @@ register_cache_entry(struct cache_ *the_cache, (struct cache_entry_params *)&new_mp_entry->mp_params; new_mp_entry->mp_params.entry_name = (char *)calloc(1, - entry_name_size+1); + entry_name_size); assert(new_mp_entry->mp_params.entry_name != NULL); - strncpy(new_mp_entry->mp_params.entry_name, params->entry_name, + strlcpy(new_mp_entry->mp_params.entry_name, params->entry_name, entry_name_size); new_mp_entry->name = new_mp_entry->mp_params.entry_name; |