1#include <strings.h> 2#include <ctype.h> 3#include "libc.h" 4 5int strcasecmp(const char *_l, const char *_r) 6{ 7 const unsigned char *l=(void *)_l, *r=(void *)_r; 8 for (; *l && *r && (*l == *r || tolower(*l) == tolower(*r)); l++, r++); 9 return tolower(*l) - tolower(*r); 10} 11 12int __strcasecmp_l(const char *l, const char *r, locale_t loc) 13{ 14 return strcasecmp(l, r); 15} 16 17weak_alias(__strcasecmp_l, strcasecmp_l); 18