syslinux/com32/lib/strcasecmp.c
<<
>>
Prefs
   1/*
   2 * strcasecmp.c
   3 */
   4
   5#include <string.h>
   6#include <ctype.h>
   7
   8int strcasecmp(const char *s1, const char *s2)
   9{
  10    const unsigned char *c1 = (const unsigned char *)s1;
  11    const unsigned char *c2 = (const unsigned char *)s2;
  12    unsigned char ch;
  13    int d = 0;
  14
  15    while (1) {
  16        /* toupper() expects an unsigned char (implicitly cast to int)
  17           as input, and returns an int, which is exactly what we want. */
  18        d = toupper(ch = *c1++) - toupper(*c2++);
  19        if (d || !ch)
  20            break;
  21    }
  22
  23    return d;
  24}
  25
lxr.linux.no kindly hosted by Redpill Linpro AS, provider of Linux consulting and operations services since 1995.