1 #include "prism/util/pm_strncasecmp.h"
4 * A locale-insensitive version of `tolower(3)`
9 if ('A' <= c
&& c
<= 'Z') {
16 * Compare two strings, ignoring case, up to the given length. Returns 0 if the
17 * strings are equal, a negative number if string1 is less than string2, or a
18 * positive number if string1 is greater than string2.
20 * Note that this is effectively our own implementation of strncasecmp, but it's
21 * not available on all of the platforms we want to support so we're rolling it
25 pm_strncasecmp(const uint8_t *string1
, const uint8_t *string2
, size_t length
) {
29 while (offset
< length
&& string1
[offset
] != '\0') {
30 if (string2
[offset
] == '\0') return string1
[offset
];
31 if ((difference
= pm_tolower(string1
[offset
]) - pm_tolower(string2
[offset
])) != 0) return difference
;