diff options
Diffstat (limited to 'src/responder/nss/nsssrv.c')
-rw-r--r-- | src/responder/nss/nsssrv.c | 16 |
1 files changed, 16 insertions, 0 deletions
diff --git a/src/responder/nss/nsssrv.c b/src/responder/nss/nsssrv.c index 48fb19408..2b3bca892 100644 --- a/src/responder/nss/nsssrv.c +++ b/src/responder/nss/nsssrv.c @@ -124,6 +124,15 @@ static int nss_clear_memcache(struct sbus_request *dbus_req, void *data) return ret; } + ret = sss_mmap_cache_reinit(nctx, SSS_MC_CACHE_ELEMENTS, + (time_t)memcache_timeout, + &nctx->initgr_mc_ctx); + if (ret != EOK) { + DEBUG(SSSDBG_CRIT_FAILURE, + "initgroups mmap cache invalidation failed\n"); + return ret; + } + done: return sbus_request_return_and_finish(dbus_req, DBUS_TYPE_INVALID); } @@ -517,6 +526,13 @@ int nss_process_init(TALLOC_CTX *mem_ctx, DEBUG(SSSDBG_CRIT_FAILURE, "group mmap cache is DISABLED\n"); } + ret = sss_mmap_cache_init(nctx, "initgroups", SSS_MC_INITGROUPS, + SSS_MC_CACHE_ELEMENTS, (time_t)memcache_timeout, + &nctx->initgr_mc_ctx); + if (ret) { + DEBUG(SSSDBG_CRIT_FAILURE, "inigroups mmap cache is DISABLED\n"); + } + /* Set up file descriptor limits */ ret = confdb_get_int(nctx->rctx->cdb, CONFDB_NSS_CONF_ENTRY, |