Lines Matching defs:namespaces

312 namespaces_check(struct mail_namespace *namespaces, const char **error_r)
319 for (ns = namespaces; ns != NULL; ns = ns->next) {
338 if (namespace_set_alias_for(ns, namespaces, error_r) < 0)
368 *error_r = "All list=yes namespaces must use "
396 int mail_namespaces_init_finish(struct mail_namespace *namespaces,
402 i_assert(namespaces != NULL);
404 for (ns = namespaces; ns != NULL; ns = ns->next) {
414 if (mail_namespaces_init_add(namespaces->user,
419 ns->next = namespaces;
420 namespaces = ns;
422 if (namespaces->user->autocreated) {
423 /* e.g. raw user - don't check namespaces' validity */
424 } else if (!namespaces_check(namespaces, error_r)) {
425 namespaces->user->error =
430 if (namespaces->user->error == NULL) {
431 mail_user_add_namespace(namespaces->user, &namespaces);
433 hook_mail_namespaces_created(namespaces);
438 if (namespaces->user->error != NULL) {
439 namespaces->user->namespaces = NULL;
440 *error_r = t_strdup(namespaces->user->error);
441 while (namespaces != NULL) {
442 ns = namespaces;
443 namespaces = ns->next;
449 namespaces->user->namespaces_created = TRUE;
458 struct mail_namespace *namespaces, **ns_p;
463 namespaces = NULL; ns_p = &namespaces;
466 if (array_is_created(&user->set->namespaces)) {
467 ns_set = array_get(&user->set->namespaces, &count);
469 array_get(&user->unexpanded_set->namespaces, &count2);
483 mail_namespaces_deinit(&namespaces);
495 if (namespaces == NULL) {
496 /* no namespaces defined, create a default one */
499 return mail_namespaces_init_finish(namespaces, error_r);
601 user's namespaces. */
611 void mail_namespaces_set_storage_callbacks(struct mail_namespace *namespaces,
618 for (ns = namespaces; ns != NULL; ns = ns->next) {
652 /* remove from user's namespaces list */
653 for (nsp = &ns->user->namespaces; *nsp != NULL; nsp = &(*nsp)->next) {
676 char mail_namespaces_get_root_sep(struct mail_namespace *namespaces)
678 while ((namespaces->flags & NAMESPACE_FLAG_LIST_PREFIX) == 0)
679 namespaces = namespaces->next;
680 return mail_namespace_get_sep(namespaces);
709 mail_namespace_find_mask(struct mail_namespace *namespaces, const char *box,
713 struct mail_namespace *ns = namespaces;
755 mail_namespace_find(struct mail_namespace *namespaces, const char *mailbox)
759 ns = mail_namespace_find_mask(namespaces, mailbox, 0, 0);
771 mail_namespace_find_unalias(struct mail_namespace *namespaces,
777 ns = mail_namespace_find(namespaces, *mailbox);
788 mail_namespace_find_visible(struct mail_namespace *namespaces,
791 return mail_namespace_find_mask(namespaces, mailbox, 0,
796 mail_namespace_find_subscribable(struct mail_namespace *namespaces,
799 return mail_namespace_find_mask(namespaces, mailbox,
805 mail_namespace_find_unsubscribable(struct mail_namespace *namespaces,
808 return mail_namespace_find_mask(namespaces, mailbox,
813 mail_namespace_find_inbox(struct mail_namespace *namespaces)
815 i_assert(namespaces != NULL);
818 while ((namespaces->flags & NAMESPACE_FLAG_INBOX_USER) == 0) {
819 namespaces = namespaces->next;
820 i_assert(namespaces != NULL);
822 return namespaces;
826 mail_namespace_find_prefix(struct mail_namespace *namespaces,
832 for (ns = namespaces; ns != NULL; ns = ns->next) {
841 mail_namespace_find_prefix_nosep(struct mail_namespace *namespaces,
847 for (ns = namespaces; ns != NULL; ns = ns->next) {