|
@@ -630,6 +630,32 @@ bool sysfs_streq(const char *s1, const char *s2)
|
|
|
}
|
|
|
EXPORT_SYMBOL(sysfs_streq);
|
|
|
|
|
|
+/**
|
|
|
+ * match_string - matches given string in an array
|
|
|
+ * @array: array of strings
|
|
|
+ * @n: number of strings in the array or -1 for NULL terminated arrays
|
|
|
+ * @string: string to match with
|
|
|
+ *
|
|
|
+ * Return:
|
|
|
+ * index of a @string in the @array if matches, or %-EINVAL otherwise.
|
|
|
+ */
|
|
|
+int match_string(const char * const *array, size_t n, const char *string)
|
|
|
+{
|
|
|
+ int index;
|
|
|
+ const char *item;
|
|
|
+
|
|
|
+ for (index = 0; index < n; index++) {
|
|
|
+ item = array[index];
|
|
|
+ if (!item)
|
|
|
+ break;
|
|
|
+ if (!strcmp(item, string))
|
|
|
+ return index;
|
|
|
+ }
|
|
|
+
|
|
|
+ return -EINVAL;
|
|
|
+}
|
|
|
+EXPORT_SYMBOL(match_string);
|
|
|
+
|
|
|
/**
|
|
|
* strtobool - convert common user inputs into boolean values
|
|
|
* @s: input string
|