summaryrefslogtreecommitdiff
path: root/Userland
diff options
context:
space:
mode:
Diffstat (limited to 'Userland')
-rw-r--r--Userland/Libraries/LibC/string.cpp12
-rw-r--r--Userland/Libraries/LibC/string.h3
2 files changed, 15 insertions, 0 deletions
diff --git a/Userland/Libraries/LibC/string.cpp b/Userland/Libraries/LibC/string.cpp
index 5493f7ac6a..914ad00e5b 100644
--- a/Userland/Libraries/LibC/string.cpp
+++ b/Userland/Libraries/LibC/string.cpp
@@ -227,6 +227,12 @@ char* strchr(const char* str, int c)
}
}
+// https://pubs.opengroup.org/onlinepubs/9699959399/functions/index.html
+char* index(const char* str, int c)
+{
+ return strchr(str, c);
+}
+
char* strchrnul(const char* str, int c)
{
char ch = c;
@@ -260,6 +266,12 @@ char* strrchr(const char* str, int ch)
return last;
}
+// https://pubs.opengroup.org/onlinepubs/9699959399/functions/rindex.html
+char* rindex(const char* str, int ch)
+{
+ return strrchr(str, ch);
+}
+
// https://pubs.opengroup.org/onlinepubs/9699919799/functions/strcat.html
char* strcat(char* dest, const char* src)
{
diff --git a/Userland/Libraries/LibC/string.h b/Userland/Libraries/LibC/string.h
index 6f5c399131..44dabc3e36 100644
--- a/Userland/Libraries/LibC/string.h
+++ b/Userland/Libraries/LibC/string.h
@@ -38,6 +38,9 @@ char* strchrnul(const char*, int c);
char* strstr(const char* haystack, const char* needle);
char* strrchr(const char*, int c);
+char* index(const char* str, int ch);
+char* rindex(const char* str, int ch);
+
char* strcat(char* dest, const char* src);
char* strncat(char* dest, const char* src, size_t);