077a280a2e8d41d18d6ed96c5bd601624d0ec332
[platform/upstream/busybox.git] / libbb / compare_string_array.c
1 /* vi: set sw=4 ts=4: */
2 /*
3  * Licensed under GPLv2 or later, see file LICENSE in this tarball for details.
4  */
5
6 #include "libbb.h"
7
8 /* returns the array index of the string */
9 /* (index of first match is returned, or -1) */
10 int index_in_str_array(const char * const string_array[], const char *key)
11 {
12         int i;
13
14         for (i = 0; string_array[i] != 0; i++) {
15                 if (strcmp(string_array[i], key) == 0) {
16                         return i;
17                 }
18         }
19         return -1;
20 }
21
22 /* returns the array index of the string, even if it matches only a beginning */
23 /* (index of first match is returned, or -1) */
24 int index_in_substr_array(const char * const string_array[], const char *key)
25 {
26         int i;
27         int len = strlen(key);
28         if (len) {
29                 for (i = 0; string_array[i] != 0; i++) {
30                         if (strncmp(string_array[i], key, len) == 0) {
31                                 return i;
32                         }
33                 }
34         }
35         return -1;
36 }