aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--extras/mini-os/include/lib.h1
-rw-r--r--extras/mini-os/lib/string.c9
2 files changed, 10 insertions, 0 deletions
diff --git a/extras/mini-os/include/lib.h b/extras/mini-os/include/lib.h
index 809c429789..1673d88424 100644
--- a/extras/mini-os/include/lib.h
+++ b/extras/mini-os/include/lib.h
@@ -87,6 +87,7 @@ void *memset(void *s,int c, size_t count);
size_t strnlen(const char *s, size_t count);
size_t strlen(const char *s);
char *strchr(const char *s, int c);
+char *strrchr(const char *s, int c);
char *strstr(const char *s1, const char *s2);
char * strcat(char * dest, const char * src);
char *strdup(const char *s);
diff --git a/extras/mini-os/lib/string.c b/extras/mini-os/lib/string.c
index c52ae43a89..019c922447 100644
--- a/extras/mini-os/lib/string.c
+++ b/extras/mini-os/lib/string.c
@@ -140,6 +140,15 @@ char * strchr(const char * s, int c)
return (char *)s;
}
+char * strrchr(const char * s, int c)
+{
+ const char *res;
+ for(; *s != '\0'; ++s)
+ if (*s == (char) c)
+ res = s;
+ return (char *)res;
+}
+
char * strstr(const char * s1,const char * s2)
{
int l1, l2;