summaryrefslogtreecommitdiff
path: root/kern/string.c
diff options
context:
space:
mode:
Diffstat (limited to 'kern/string.c')
-rw-r--r--kern/string.c18
1 files changed, 18 insertions, 0 deletions
diff --git a/kern/string.c b/kern/string.c
index 82bcd2f1..2122af6a 100644
--- a/kern/string.c
+++ b/kern/string.c
@@ -121,6 +121,24 @@ strcpy(char *dest, const char *src)
return tmp;
}
+size_t
+strlcpy(char *dest, const char *src, size_t n)
+{
+ size_t len;
+
+ len = strlen(src);
+
+ if (n == 0)
+ goto out;
+
+ n = (len < n) ? len : n - 1;
+ memcpy(dest, src, n);
+ dest[n] = '\0';
+
+out:
+ return len;
+}
+
int
strcmp(const char *s1, const char *s2)
{