This is a locale insensitive replacement for the glibc tolower() function.
You must use this function instead of the standard glibc one to compare ASCII strings
in a case unsensitive way, because the glibc one is localization aware.
And if you did not know yet, in turkish, strcasecmp("i", "I") != 0.