From 601c64ec4f2b8a41fba59d31a987090feeb69e84 Mon Sep 17 00:00:00 2001 From: Garrett D'Amore Date: Fri, 25 Aug 2017 11:11:35 -0700 Subject: Introduce utility safe string handling functions. We have our versions of strdup, strlcat, and strlcpy. This means we can avoid using snprintf() in many cases (saving cycles), and we can get safer checks. We use the platform supplied versions of these if they exist (wrapping with nni_xxx versions.) --- src/core/options.c | 6 ++---- 1 file changed, 2 insertions(+), 4 deletions(-) (limited to 'src/core/options.c') diff --git a/src/core/options.c b/src/core/options.c index 03002d6c..4027564c 100644 --- a/src/core/options.c +++ b/src/core/options.c @@ -275,13 +275,11 @@ nni_option_set_id(const char *name, int id) nni_mtx_unlock(&nni_option_lk); return (NNG_ENOMEM); } - len = strlen(name) + 1; - if ((opt->o_name = nni_alloc(len)) == NULL) { + if ((opt->o_name = nni_strdup(name)) == NULL) { nni_mtx_unlock(&nni_option_lk); NNI_FREE_STRUCT(opt); return (NNG_ENOMEM); } - (void) snprintf(opt->o_name, len, "%s", name); if (id < 0) { id = nni_option_nextid++; } @@ -347,7 +345,7 @@ nni_option_sys_fini(void) nni_option *opt; while ((opt = nni_list_first(&nni_options)) != NULL) { nni_list_remove(&nni_options, opt); - nni_free(opt->o_name, strlen(opt->o_name) + 1); + nni_strfree(opt->o_name); NNI_FREE_STRUCT(opt); } } -- cgit v1.2.3-70-g09d2