From e052c2247f6febbe559a593948ed8ef9f2118435 Mon Sep 17 00:00:00 2001 From: Timo Sirainen Date: Tue, 29 Mar 2016 15:17:29 +0300 Subject: [PATCH] auth: Disable auth caching for passwd-file Its caching is usually unnecessary, because the passwd-files are efficiently in memory already. It's also problematic, because extra_fields can contain %variables, which can be lookup-dependent. So for example if %{lport} is used in extra_fields, it would need to be included in the cache key. But because different variables can be used by different users' extra_fields, there's really no good way to include all of it in the cache key. --- src/auth/passdb-passwd-file.c | 8 -------- src/auth/userdb-passwd-file.c | 12 ------------ 2 files changed, 20 deletions(-) diff --git a/src/auth/passdb-passwd-file.c b/src/auth/passdb-passwd-file.c index b12a8c552c..40f083e86f 100644 --- a/src/auth/passdb-passwd-file.c +++ b/src/auth/passdb-passwd-file.c @@ -150,14 +150,6 @@ passwd_file_preinit(pool_t pool, const char *args) module->pwf = db_passwd_file_init(args, FALSE, global_auth_settings->debug); module->username_format = format; - - if (!module->pwf->vars) - module->module.default_cache_key = format; - else { - module->module.default_cache_key = auth_cache_parse_key(pool, - t_strconcat(format, module->pwf->path, NULL)); - } - module->module.default_pass_scheme = scheme; return &module->module; } diff --git a/src/auth/userdb-passwd-file.c b/src/auth/userdb-passwd-file.c index 52389209fd..b578d272b6 100644 --- a/src/auth/userdb-passwd-file.c +++ b/src/auth/userdb-passwd-file.c @@ -13,8 +13,6 @@ #include #include -#define PASSWD_FILE_CACHE_KEY "%u" - struct passwd_file_userdb_iterate_context { struct userdb_iterate_context ctx; struct istream *input; @@ -191,16 +189,6 @@ passwd_file_preinit(pool_t pool, const char *args) module->pwf = db_passwd_file_init(args, TRUE, global_auth_settings->debug); module->username_format = format; - - if (!module->pwf->vars) - module->module.default_cache_key = PASSWD_FILE_CACHE_KEY; - else { - module->module.default_cache_key = - auth_cache_parse_key(pool, - t_strconcat(PASSWD_FILE_CACHE_KEY, - module->pwf->path, - NULL)); - } return &module->module; }