X-Git-Url: https://gerrit.fd.io/r/gitweb?a=blobdiff_plain;f=lib%2Flibrte_metrics%2Frte_metrics.c;h=258f0582c3a2d4da5b5c384f9acf1fd37b872a07;hb=refs%2Fheads%2Fupstream-18.05-stable;hp=556ae1ba8b4d746717a91fd1b90992283a56978a;hpb=9f3a8cb4cfe59ea63e267f69700fb0fde13d7dd3;p=deb_dpdk.git diff --git a/lib/librte_metrics/rte_metrics.c b/lib/librte_metrics/rte_metrics.c index 556ae1ba..258f0582 100644 --- a/lib/librte_metrics/rte_metrics.c +++ b/lib/librte_metrics/rte_metrics.c @@ -6,6 +6,7 @@ #include #include +#include #include #include #include @@ -113,10 +114,7 @@ rte_metrics_reg_names(const char * const *names, uint16_t cnt_names) for (idx_name = 0; idx_name < cnt_names; idx_name++) { entry = &stats->metadata[idx_name + stats->cnt_stats]; - strncpy(entry->name, names[idx_name], - RTE_METRICS_MAX_NAME_LEN); - /* Enforce NULL-termination */ - entry->name[RTE_METRICS_MAX_NAME_LEN - 1] = '\0'; + strlcpy(entry->name, names[idx_name], RTE_METRICS_MAX_NAME_LEN); memset(entry->value, 0, sizeof(entry->value)); entry->idx_next_stat = idx_name + stats->cnt_stats + 1; } @@ -215,7 +213,7 @@ rte_metrics_get_names(struct rte_metric_name *names, return return_value; } for (idx_name = 0; idx_name < stats->cnt_stats; idx_name++) - strncpy(names[idx_name].name, + strlcpy(names[idx_name].name, stats->metadata[idx_name].name, RTE_METRICS_MAX_NAME_LEN); }