1#include <string.h>
2#include "strlcat.h"
3
4size_t strlcat(char *dst, const char *src, size_t size)
5{
6	size_t dstlen;
7	size_t srclen;
8
9	dstlen = strlen(dst);
10	size -= dstlen + 1;
11
12	/* return if no room */
13	if (!size)
14		return dstlen;
15
16	srclen = strlen(src);
17	if (srclen > size)
18		srclen = size;
19
20	memcpy(dst + dstlen, src, srclen);
21	dst[dstlen + srclen] = '\0';
22
23	return dstlen + srclen;
24}
25