+
+gboolean
+modest_text_utils_is_forbidden_char (const gchar character,
+ ModestTextUtilsForbiddenCharType type)
+{
+ gint i, len;
+ const gchar *forbidden_chars = NULL;
+
+ /* We need to get the length in the switch because the
+ compiler needs to know the size at compile time */
+ switch (type) {
+ case ACCOUNT_TITLE_FORBIDDEN_CHARS:
+ forbidden_chars = account_title_forbidden_chars;
+ len = G_N_ELEMENTS (account_title_forbidden_chars);
+ break;
+ case FOLDER_NAME_FORBIDDEN_CHARS:
+ forbidden_chars = folder_name_forbidden_chars;
+ len = G_N_ELEMENTS (folder_name_forbidden_chars);
+ break;
+ case USER_NAME_FORBIDDEN_NAMES:
+ forbidden_chars = user_name_forbidden_chars;
+ len = G_N_ELEMENTS (user_name_forbidden_chars);
+ break;
+ default:
+ g_return_val_if_reached (TRUE);
+ }
+
+ for (i = 0; i < len ; i++)
+ if (forbidden_chars[i] == character)
+ return TRUE;
+
+ return FALSE; /* it's valid! */
+}