blob: fdad37313ead9fd0e013521b0879bf86a88e6d8a [file] [log] [blame]
/*
* Copyright (C) Dmitry Volyntsev
* Copyright (C) NGINX, Inc.
*/
#include <njs_main.h>
njs_int_t
njs_strncasecmp(u_char *s1, u_char *s2, size_t n)
{
njs_uint_t c1, c2;
while (n) {
c1 = (njs_uint_t) *s1++;
c2 = (njs_uint_t) *s2++;
c1 = (c1 >= 'A' && c1 <= 'Z') ? (c1 | 0x20) : c1;
c2 = (c2 >= 'A' && c2 <= 'Z') ? (c2 | 0x20) : c2;
if (c1 == c2) {
if (c1) {
n--;
continue;
}
return 0;
}
return c1 - c2;
}
return 0;
}