diff options
author | Jakub Hrozek <jhrozek@redhat.com> | 2012-02-02 19:44:38 +0100 |
---|---|---|
committer | Stephen Gallagher <sgallagh@redhat.com> | 2012-02-04 08:27:16 -0500 |
commit | 9264332df73311e2ed244b37b470cac74a784f4a (patch) | |
tree | 04ff51b22833366d0a8967b0f27583a9095c5a30 | |
parent | 405a06682b3772b70bb06d3adba780a062959641 (diff) | |
download | sssd-9264332df73311e2ed244b37b470cac74a784f4a.tar.gz sssd-9264332df73311e2ed244b37b470cac74a784f4a.tar.bz2 sssd-9264332df73311e2ed244b37b470cac74a784f4a.zip |
NSS: Use sss_hash_create instead of destructor
-rw-r--r-- | src/responder/nss/nsssrv.c | 14 | ||||
-rw-r--r-- | src/responder/nss/nsssrv_netgroup.c | 1 |
2 files changed, 2 insertions, 13 deletions
diff --git a/src/responder/nss/nsssrv.c b/src/responder/nss/nsssrv.c index ab836938..a85695b0 100644 --- a/src/responder/nss/nsssrv.c +++ b/src/responder/nss/nsssrv.c @@ -241,17 +241,6 @@ static void nss_dp_reconnect_init(struct sbus_connection *conn, /* nss_shutdown(rctx); */ } -static int nss_ctx_destructor(void *memctx) -{ - struct nss_ctx *nctx = (struct nss_ctx *) memctx; - - if (nctx->netgroups) { - hash_destroy(nctx->netgroups); - nctx->netgroups = NULL; - } - return 0; -} - int nss_process_init(TALLOC_CTX *mem_ctx, struct tevent_context *ev, struct confdb_ctx *cdb) @@ -267,7 +256,6 @@ int nss_process_init(TALLOC_CTX *mem_ctx, DEBUG(0, ("fatal error initializing nss_ctx\n")); return ENOMEM; } - talloc_set_destructor((TALLOC_CTX *) nctx, nss_ctx_destructor); ret = sss_ncache_init(nctx, &nctx->ncache); if (ret != EOK) { @@ -313,7 +301,7 @@ int nss_process_init(TALLOC_CTX *mem_ctx, } /* Create the lookup table for netgroup results */ - hret = hash_create(10, &nctx->netgroups, NULL, NULL); + hret = sss_hash_create(nctx, 10, &nctx->netgroups); if (hret != HASH_SUCCESS) { DEBUG(0,("Unable to initialize netgroup hash table\n")); return EIO; diff --git a/src/responder/nss/nsssrv_netgroup.c b/src/responder/nss/nsssrv_netgroup.c index 093329fa..02b88c7b 100644 --- a/src/responder/nss/nsssrv_netgroup.c +++ b/src/responder/nss/nsssrv_netgroup.c @@ -78,6 +78,7 @@ static errno_t set_netgroup_entry(struct nss_ctx *nctx, DEBUG(4, ("Hash error [%d][%s]", hret, hash_error_string(hret))); return EIO; } + talloc_steal(nctx->netgroups, netgr); talloc_set_destructor((TALLOC_CTX *) netgr, netgr_hash_remove); return EOK; |