On Thu, 6 Feb 2025 02:08:36 +0200 Shani Peretz <shper...@nvidia.com> wrote:
> static int > -cdx_parse(const char *name, void *addr) > +cdx_parse(const char *name, void *addr, int *size) > { > - const char **out = addr; > int ret; > > ret = strncmp(name, CDX_DEV_PREFIX, strlen(CDX_DEV_PREFIX)); > > - if (ret == 0 && addr) > - *out = name; > + if (ret != 0) > + return ret; > + > + if (size != NULL) > + *size = strlen(name) + 1; > + > + if (addr != NULL) > + rte_strscpy(addr, name, strlen(name) + 1); Why use rte_strscpy() here? The intention of strscpy() is to handle case where the resulting buffer is limited in size. By using the input string length you aren't really doing anything different than strcpy(). Still unsafe if output (addr) is not big enough.