X-Git-Url: http://git.madism.org/?p=apps%2Fmadmutt.git;a=blobdiff_plain;f=lib-lib%2Fstr.c;h=7b5730574bbea86066a493026ff0552d812e0083;hp=f55aa458e2ea19fb29b457795b315ce46b79cd17;hb=f3cbb9f51357972f6e74244494236a41dc4d84cd;hpb=1ee89902de184a640c171ae3285bff6882a791bd diff --git a/lib-lib/str.c b/lib-lib/str.c index f55aa45..7b57305 100644 --- a/lib-lib/str.c +++ b/lib-lib/str.c @@ -140,3 +140,41 @@ const char *m_stristrn(const char *haystack, const char *needle, ssize_t nlen) haystack++; } } + +int ascii_strcasecmp(const char *a, const char *b) +{ + int i; + + if (a == b) + return 0; + if (a == NULL && b) + return -1; + if (b == NULL && a) + return 1; + + for (; *a || *b; a++, b++) { + if ((i = ascii_tolower(*a) - ascii_tolower(*b))) + return i; + } + + return 0; +} + +int ascii_strncasecmp (const char *a, const char *b, ssize_t n) +{ + int i, j; + + if (a == b) + return 0; + if (a == NULL && b) + return -1; + if (b == NULL && a) + return 1; + + for (j = 0; (*a || *b) && j < n; a++, b++, j++) { + if ((i = ascii_tolower(*a) - ascii_tolower(*b))) + return i; + } + + return 0; +}