chiark / gitweb /
basic: add new ascii_strcasecmp_n() call
[elogind.git] / src / basic / string-util.c
index e2bdb89765b9adc20faea56efaaadc1814a5c823..dfcb29235546d6764cd0e86f5a14edb221e639b8 100644 (file)
@@ -341,6 +341,21 @@ char *ascii_strlower_n(char *t, size_t n) {
         return t;
 }
 
+int ascii_strcasecmp_n(const char *a, const char *b, size_t n) {
+
+        for (; n > 0; a++, b++, n--) {
+                int x, y;
+
+                x = (int) (uint8_t) ascii_tolower(*a);
+                y = (int) (uint8_t) ascii_tolower(*b);
+
+                if (x != y)
+                        return x - y;
+        }
+
+        return 0;
+}
+
 bool chars_intersect(const char *a, const char *b) {
         const char *p;