blob: 284e72e5612b0b6a197fcd3ef4acdb371b42c7ee [file] [log] [blame]
Greg Hartman76d05dc2016-11-23 15:51:27 -08001/*
2 * strlcpy.c
3 */
4
5#include <string.h>
6#include <klibc/compiler.h>
7
8size_t strlcpy(char *dst, const char *src, size_t size)
9{
10 size_t bytes = 0;
11 char *q = dst;
12 const char *p = src;
13 char ch;
14
15 while ((ch = *p++)) {
16 if (bytes < size)
17 *q++ = ch;
18
19 bytes++;
20 }
21
22 *q = '\0';
23 return bytes;
24}