dovecot-1.2: Added str_array_icase_find().

dovecot at dovecot.org dovecot at dovecot.org
Sat Jun 21 09:25:48 EEST 2008


details:   http://hg.dovecot.org/dovecot-1.2/rev/1789ac4637b0
changeset: 7915:1789ac4637b0
user:      Timo Sirainen <tss at iki.fi>
date:      Sat Jun 21 09:21:38 2008 +0300
description:
Added str_array_icase_find().

diffstat:

2 files changed, 12 insertions(+)
src/lib/strfuncs.c |    9 +++++++++
src/lib/strfuncs.h |    3 +++

diffs (32 lines):

diff -r 5061533382be -r 1789ac4637b0 src/lib/strfuncs.c
--- a/src/lib/strfuncs.c	Sat Jun 21 08:51:51 2008 +0300
+++ b/src/lib/strfuncs.c	Sat Jun 21 09:21:38 2008 +0300
@@ -541,6 +541,15 @@ bool str_array_remove(const char **arr, 
 	return FALSE;
 }
 
+bool str_array_icase_find(const char *const *arr, const char *value)
+{
+	for (; *arr != NULL; arr++) {
+		if (strcasecmp(*arr, value) == 0)
+			return TRUE;
+	}
+	return FALSE;
+}
+
 const char *dec2str(uintmax_t number)
 {
 	char *buffer;
diff -r 5061533382be -r 1789ac4637b0 src/lib/strfuncs.h
--- a/src/lib/strfuncs.h	Sat Jun 21 08:51:51 2008 +0300
+++ b/src/lib/strfuncs.h	Sat Jun 21 09:21:38 2008 +0300
@@ -80,6 +80,9 @@ const char *t_strarray_join(const char *
 	ATTR_MALLOC;
 /* Removes a value from NULL-terminated string array. Returns TRUE if found. */
 bool str_array_remove(const char **arr, const char *value);
+/* Returns TRUE if value exists in NULL-terminated string array.
+   Strings are compared case-insensitively. */
+bool str_array_icase_find(const char *const *arr, const char *value);
 
 /* INTERNAL */
 char *t_noalloc_strdup_vprintf(const char *format, va_list args,


More information about the dovecot-cvs mailing list