|
|
@@ -99,45 +99,3 @@ char *Curl_strcasestr(const char *haystack, const char *needle)
|
|
|
}
|
|
|
return NULL;
|
|
|
}
|
|
|
-
|
|
|
-#ifndef HAVE_STRLCAT
|
|
|
-/*
|
|
|
- * The strlcat() function appends the NUL-terminated string src to the end
|
|
|
- * of dst. It will append at most size - strlen(dst) - 1 bytes, NUL-termi-
|
|
|
- * nating the result.
|
|
|
- *
|
|
|
- * The strlcpy() and strlcat() functions return the total length of the
|
|
|
- * string they tried to create. For strlcpy() that means the length of src.
|
|
|
- * For strlcat() that means the initial length of dst plus the length of
|
|
|
- * src. While this may seem somewhat confusing it was done to make trunca-
|
|
|
- * tion detection simple.
|
|
|
- *
|
|
|
- *
|
|
|
- */
|
|
|
-size_t Curl_strlcat(char *dst, const char *src, size_t siz)
|
|
|
-{
|
|
|
- char *d = dst;
|
|
|
- const char *s = src;
|
|
|
- size_t n = siz;
|
|
|
- size_t dlen;
|
|
|
-
|
|
|
- /* Find the end of dst and adjust bytes left but don't go past end */
|
|
|
- while (n-- != 0 && *d != '\0')
|
|
|
- d++;
|
|
|
- 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 */
|
|
|
-}
|
|
|
-#endif
|