]> git.ipfire.org Git - thirdparty/dovecot/core.git/commitdiff
lib-storage: Added mail_user_is_plugin_loaded().
authorTimo Sirainen <tss@iki.fi>
Mon, 7 Dec 2009 19:43:39 +0000 (14:43 -0500)
committerTimo Sirainen <tss@iki.fi>
Mon, 7 Dec 2009 19:43:39 +0000 (14:43 -0500)
--HG--
branch : HEAD

src/lib-storage/mail-user.c
src/lib-storage/mail-user.h

index 72cc61a157ca64cdcbd7f12ae1b74e25f09f7b6b..03d4d88c3c1da04e3bc7373b6e7c431b9f9a246d 100644 (file)
@@ -4,6 +4,7 @@
 #include "array.h"
 #include "hostpid.h"
 #include "network.h"
+#include "module-dir.h"
 #include "home-expand.h"
 #include "str.h"
 #include "strescape.h"
@@ -279,6 +280,18 @@ int mail_user_get_home(struct mail_user *user, const char **home_r)
        return ret;
 }
 
+bool mail_user_is_plugin_loaded(struct mail_user *user, struct module *module)
+{
+       const char *const *plugins;
+       bool ret;
+
+       T_BEGIN {
+               plugins = t_strsplit_spaces(user->set->mail_plugins, ", ");
+               ret = str_array_find(plugins, module_get_plugin_name(module));
+       } T_END;
+       return ret;
+}
+
 const char *mail_user_plugin_getenv(struct mail_user *user, const char *name)
 {
        return mail_user_set_plugin_getenv(user->set, name);
index 1593626f14aa61ededaa27a84f4edf0d01364493..2672e41609de5a088d7324bc964e568d8c092219 100644 (file)
@@ -3,6 +3,7 @@
 
 #include "mail-storage-settings.h"
 
+struct module;
 struct mail_user;
 
 struct mail_user_vfuncs {
@@ -88,6 +89,9 @@ int mail_user_get_home(struct mail_user *user, const char **home_r);
 /* Returns path + file prefix for creating a temporary file. Uses home
    directory if possible, fallbacks to mail directory. */
 const char *mail_user_get_temp_prefix(struct mail_user *user);
+
+/* Returns TRUE if plugin is loaded for the user. */
+bool mail_user_is_plugin_loaded(struct mail_user *user, struct module *module);
 /* If name exists in plugin_envs, return its value. */
 const char *mail_user_plugin_getenv(struct mail_user *user, const char *name);
 const char *mail_user_set_plugin_getenv(const struct mail_user_settings *set,