summaryrefslogtreecommitdiffstatshomepage
diff options
context:
space:
mode:
-rw-r--r--lib/libc/string0.c12
1 files changed, 12 insertions, 0 deletions
diff --git a/lib/libc/string0.c b/lib/libc/string0.c
index 136c1b49cc..8ba118b705 100644
--- a/lib/libc/string0.c
+++ b/lib/libc/string0.c
@@ -114,6 +114,18 @@ int memcmp(const void *s1, const void *s2, size_t n) {
return 0;
}
+void *memchr(const void *s, int c, size_t n) {
+ if (n != 0) {
+ const unsigned char *p = s;
+
+ do {
+ if (*p++ == c)
+ return ((void *)(p - 1));
+ } while (--n != 0);
+ }
+ return 0;
+}
+
size_t strlen(const char *str) {
int len = 0;
for (const char *s = str; *s; s++) {