by getting rid of stpncpy
Tested with gcc (GCC) 11.1.1
20210428 (Red Hat 11.1.1-1)
Closes https://github.com/lxc/lxc/issues/3752
Signed-off-by: Evgeny Vereshchagin <evvers@ya.ru>
char *end;
char dup[INTTYPE_TO_STRLEN(long long int)] = {0};
char suffix[3] = {0};
+ size_t len;
- if (is_empty_string(s))
+ if (!s)
return ret_errno(EINVAL);
- end = stpncpy(dup, s, sizeof(dup) - 1);
- if (*end != '\0')
+ len = strlen(s);
+ if (len == 0 || len > sizeof(dup) - 1)
return ret_errno(EINVAL);
+ memcpy(dup, s, len);
+
+ end = dup + len;
if (isdigit(*(end - 1)))
suffix_len = 0;
else if (isalpha(*(end - 1)))