at v2.6.14 32 lines 712 B view raw
1/* 2 * linux/arch/xtensa/lib/strcasecmp.c 3 * 4 * This file is subject to the terms and conditions of the GNU General 5 * Public License. See the file "COPYING" in the main directory of 6 * this archive for more details. 7 * 8 * Copyright (C) 2002 Tensilica Inc. 9 */ 10 11#include <linux/string.h> 12 13 14/* We handle nothing here except the C locale. Since this is used in 15 only one place, on strings known to contain only 7 bit ASCII, this 16 is ok. */ 17 18int strcasecmp(const char *a, const char *b) 19{ 20 int ca, cb; 21 22 do { 23 ca = *a++ & 0xff; 24 cb = *b++ & 0xff; 25 if (ca >= 'A' && ca <= 'Z') 26 ca += 'a' - 'A'; 27 if (cb >= 'A' && cb <= 'Z') 28 cb += 'a' - 'A'; 29 } while (ca == cb && ca != '\0'); 30 31 return ca - cb; 32}