blob: 3b0094cc2b520e7d24edce4381ef549c41413e98 [file] [log] [blame]
Linus Torvalds1da177e2005-04-16 15:20:36 -07001#include <linux/ctype.h>
Paul Mackerras056cb482006-03-28 21:13:44 +11002#include <linux/types.h>
Linus Torvalds1da177e2005-04-16 15:20:36 -07003
4int strcasecmp(const char *s1, const char *s2)
5{
6 int c1, c2;
7
8 do {
9 c1 = tolower(*s1++);
10 c2 = tolower(*s2++);
11 } while (c1 == c2 && c1 != 0);
12 return c1 - c2;
13}
14
Kumar Galacbd312b2006-03-27 18:26:18 -060015int strncasecmp(const char *s1, const char *s2, size_t n)
Linus Torvalds1da177e2005-04-16 15:20:36 -070016{
17 int c1, c2;
18
19 do {
20 c1 = tolower(*s1++);
21 c2 = tolower(*s2++);
22 } while ((--n > 0) && c1 == c2 && c1 != 0);
23 return c1 - c2;
24}