diff options
author | Matthias Andree <matthias.andree@gmx.de> | 2005-09-25 10:34:35 +0000 |
---|---|---|
committer | Matthias Andree <matthias.andree@gmx.de> | 2005-09-25 10:34:35 +0000 |
commit | 9084f49286547cdd9043015b8c2088c1c7dc27bd (patch) | |
tree | 3cc9e92b74565df8fe3d60ea7628edca69639cf4 | |
parent | 39b9add3ccc3aabad2382b06d4fbdbae41f53e63 (diff) | |
download | fetchmail-9084f49286547cdd9043015b8c2088c1c7dc27bd.tar.gz fetchmail-9084f49286547cdd9043015b8c2088c1c7dc27bd.tar.bz2 fetchmail-9084f49286547cdd9043015b8c2088c1c7dc27bd.zip |
Properly cast arguments of ctype is*()/to*() functions to unsigned char.
svn path=/trunk/; revision=4324
-rw-r--r-- | base64.c | 2 | ||||
-rw-r--r-- | imap.c | 4 | ||||
-rw-r--r-- | kerberos.c | 4 | ||||
-rw-r--r-- | strcasecmp.c | 18 |
4 files changed, 14 insertions, 14 deletions
@@ -25,7 +25,7 @@ static const char base64val[] = { BAD, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51,BAD, BAD,BAD,BAD,BAD }; -#define DECODE64(c) (isascii(c) ? base64val[c] : BAD) +#define DECODE64(c) (isascii((unsigned char)(c)) ? base64val[c] : BAD) void to64frombits(unsigned char *out, const unsigned char *in, int inlen) /* raw bytes in quasi-big-endian order to base 64 string (NUL-terminated) */ @@ -272,7 +272,7 @@ static void capa_probe(int sock, struct query *ctl) /* capability checks are supposed to be caseblind */ for (cp = capabilities; *cp; cp++) - *cp = toupper(*cp); + *cp = toupper((unsigned char)*cp); /* UW-IMAP server 10.173 notifies in all caps, but RFC2060 says we should expect a response in mixed-case */ @@ -846,7 +846,7 @@ static int imap_getpartialsizes(int sock, int first, int last, int *sizes) return(ok); /* we want response matching to be case-insensitive */ for (cp = buf; *cp; cp++) - *cp = toupper(*cp); + *cp = toupper((unsigned char)*cp); /* an untagged NO means that a message was not readable */ if (strstr(buf, "* NO")) ; @@ -96,8 +96,8 @@ int do_rfc1731(int sock, char *command, char *truename) strncpy(srvinst, truename, (sizeof srvinst)-1); srvinst[(sizeof srvinst)-1] = '\0'; for (p = srvinst; *p; p++) { - if (isupper(*p)) { - *p = tolower(*p); + if (isupper((unsigned char)*p)) { + *p = tolower((unsigned char)*p); } } diff --git a/strcasecmp.c b/strcasecmp.c index c1f3bbd8..76ab9be3 100644 --- a/strcasecmp.c +++ b/strcasecmp.c @@ -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)); } |