From d38ab690727f51ac9eb38631961184d5768cfcf5 Mon Sep 17 00:00:00 2001 From: Daniel Stenberg Date: Tue, 18 Jun 2002 08:19:38 +0000 Subject: case insensitive string comparisons git-svn-id: svn://svn.rockbox.org/rockbox/trunk@1057 a1c6a512-1295-4272-9138-f99709370657 --- firmware/common/strcasecmp.c | 28 ++++++++++++++++++++++++++++ 1 file changed, 28 insertions(+) create mode 100644 firmware/common/strcasecmp.c diff --git a/firmware/common/strcasecmp.c b/firmware/common/strcasecmp.c new file mode 100644 index 0000000000..7bd0d61dd5 --- /dev/null +++ b/firmware/common/strcasecmp.c @@ -0,0 +1,28 @@ + +#include +#include + +int strcasecmp(const char *s1, const char *s2) +{ + while (*s1 != '\0' && tolower(*s1) == tolower(*s2)) { + s1++; + s2++; + } + + return tolower(*(unsigned char *) s1) - tolower(*(unsigned char *) s2); +} + +int strncasecmp(const char *s1, const char *s2, size_t n) +{ + if(!n) + return 0; + + while (n-- != 0 && tolower(*s1) == tolower(*s2)) { + if(n == 0 || *s1 == '\0') + break; + s1++; + s2++; + } + + return tolower(*(unsigned char *) s1) - tolower(*(unsigned char *) s2); +} -- cgit v1.2.3