From 7733abce29734fd0d825504b3094f9efe719360b Mon Sep 17 00:00:00 2001 From: William Wilgus Date: Wed, 16 Nov 2022 00:36:47 -0500 Subject: strlcat use strlcpy for the copy part Change-Id: I729b292a58d9f6542e58ac01d1dc90d36175886d --- firmware/common/strlcat.c | 19 +++---------------- 1 file changed, 3 insertions(+), 16 deletions(-) diff --git a/firmware/common/strlcat.c b/firmware/common/strlcat.c index 783ea4daba..f1f0031f06 100644 --- a/firmware/common/strlcat.c +++ b/firmware/common/strlcat.c @@ -16,7 +16,7 @@ * OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. */ -#include +#include "string-extra.h" /* * Appends src to string dst of size siz (unlike strncat, siz is the @@ -29,9 +29,7 @@ size_t strlcat(char *dst, const char *src, size_t siz) { char *d = dst; - const char *s = src; - size_t n = siz; - size_t dlen; + size_t dlen, n = siz; /* Find the end of dst and adjust bytes left but don't go past end */ while (n-- != 0 && *d != '\0') @@ -39,17 +37,6 @@ strlcat(char *dst, const char *src, size_t siz) dlen = d - dst; n = siz - dlen; - if (n == 0) - return(dlen + strlen(s)); - while (*s != '\0') { - if (n != 1) { - *d++ = *s; - n--; - } - s++; - } - *d = '\0'; - - return(dlen + (s - src)); /* count does not include NUL */ + return strlcpy(dst + dlen, src, n) + dlen; } -- cgit v1.2.3