# HG changeset patch # User Timo Sirainen # Date 1186577298 -10800 # Node ID aca5c234b71a181191b25d826e3ad1b696af8c91 # Parent 8992a20c229faeb4024a980122192e09a941e557 Added hook_mail_namespaces_created. diff -r 8992a20c229f -r aca5c234b71a src/lib-storage/mail-namespace.c --- a/src/lib-storage/mail-namespace.c Wed Aug 08 15:26:45 2007 +0300 +++ b/src/lib-storage/mail-namespace.c Wed Aug 08 15:48:18 2007 +0300 @@ -7,6 +7,8 @@ #include +void (*hook_mail_namespaces_created)(struct mail_namespace *namespaces); + static void namespace_init_storage(struct mail_namespace *ns) { ns->list = mail_storage_get_list(ns->storage); @@ -195,6 +197,9 @@ return -1; namespaces = namespaces_sort(namespaces); *namespaces_r = namespaces; + + if (hook_mail_namespaces_created != NULL) + hook_mail_namespaces_created(namespaces); return 0; } @@ -225,6 +230,9 @@ namespace_init_storage(ns); *namespaces_r = ns; + + if (hook_mail_namespaces_created != NULL) + hook_mail_namespaces_created(namespaces); return 0; } diff -r 8992a20c229f -r aca5c234b71a src/lib-storage/mail-namespace.h --- a/src/lib-storage/mail-namespace.h Wed Aug 08 15:26:45 2007 +0300 +++ b/src/lib-storage/mail-namespace.h Wed Aug 08 15:48:18 2007 +0300 @@ -32,6 +32,9 @@ struct mail_storage *storage; }; +/* Called after namespaces has been created */ +extern void (*hook_mail_namespaces_created)(struct mail_namespace *namespaces); + int mail_namespaces_init(pool_t pool, const char *user, struct mail_namespace **namespaces_r); struct mail_namespace *mail_namespaces_init_empty(pool_t pool);