]> Pileus Git - ~andy/fetchmail/blobdiff - strcasecmp.c
Complete Dominik's name.
[~andy/fetchmail] / strcasecmp.c
index c1f3bbd82296d3ab9b41ab586950b7116327cd2d..76ab9be3eb8087b851d65896b85b5a282945e5bc 100644 (file)
@@ -6,18 +6,18 @@
  */
 #include <ctype.h>
 
-strcasecmp(char *s1, char *s2)
+int strcasecmp(char *s1, char *s2)
 {
-    while (toupper(*s1) == toupper(*s2++))
+    while (toupper((unsigned char)*s1) == toupper((unsigned char)*s2++))
        if (*s1++ == '\0')
-           return(0);
-    return(toupper(*s1) - toupper(*--s2));
+           return 0;
+    return(toupper((unsigned char)*s1) - toupper((unsigned char)*--s2));
 }
 
-strncasecmp(char *s1, char *s2, register int n)
+int strncasecmp(char *s1, char *s2, register int n)
 {
-    while (--n >= 0 && toupper(*s1) == toupper(*s2++))
-       if (toupper(*s1++) == '\0')
-           return(0);
-    return(n < 0 ? 0 : toupper(*s1) - toupper(*--s2));
+    while (--n >= 0 && toupper((unsigned char)*s1) == toupper((unsigned char)*s2++))
+       if (*s1++ == '\0')
+           return 0;
+    return(n < 0 ? 0 : toupper((unsigned char)*s1) - toupper((unsigned char)*--s2));
 }