diff options
Diffstat (limited to 'source4/lib/util/util_strlist.c')
-rw-r--r-- | source4/lib/util/util_strlist.c | 25 |
1 files changed, 25 insertions, 0 deletions
diff --git a/source4/lib/util/util_strlist.c b/source4/lib/util/util_strlist.c index 48ddbde9e1..0e9fcd9db9 100644 --- a/source4/lib/util/util_strlist.c +++ b/source4/lib/util/util_strlist.c @@ -20,6 +20,8 @@ */ #include "includes.h" +#include "pstring.h" +#include "system/locale.h" /** * @file @@ -298,3 +300,26 @@ _PUBLIC_ BOOL str_list_check_ci(const char **list, const char *s) } return False; } + +/** + Check if a string is part of a list. +**/ +_PUBLIC_ BOOL in_list(const char *s, const char *list, BOOL casesensitive) +{ + pstring tok; + const char *p=list; + + if (!list) + return(False); + + while (next_token(&p,tok,LIST_SEP,sizeof(tok))) { + if (casesensitive) { + if (strcmp(tok,s) == 0) + return(True); + } else { + if (strcasecmp_m(tok,s) == 0) + return(True); + } + } + return(False); +} |