diff options
author | Jakub Hrozek <jhrozek@redhat.com> | 2012-01-05 20:23:04 +0100 |
---|---|---|
committer | Stephen Gallagher <sgallagh@redhat.com> | 2012-02-05 19:16:16 -0500 |
commit | 98076cabc2a8b8f71dc3bc1263519827f71a5fcc (patch) | |
tree | 86af86db1d547be63bf72c3471b23fb6f0a96286 /src/responder/nss/nsssrv_netgroup.c | |
parent | 5708dc97b69a468f077616d7a75e81f4172f63fa (diff) | |
download | sssd-98076cabc2a8b8f71dc3bc1263519827f71a5fcc.tar.gz sssd-98076cabc2a8b8f71dc3bc1263519827f71a5fcc.tar.xz sssd-98076cabc2a8b8f71dc3bc1263519827f71a5fcc.zip |
RESPONDERS: Refactor setent_req_list
Makes the setent_add_ref() and setent_notify_*() functions more generic
to be reusable by the autofs responder.
Diffstat (limited to 'src/responder/nss/nsssrv_netgroup.c')
-rw-r--r-- | src/responder/nss/nsssrv_netgroup.c | 14 |
1 files changed, 3 insertions, 11 deletions
diff --git a/src/responder/nss/nsssrv_netgroup.c b/src/responder/nss/nsssrv_netgroup.c index 2b9707ab8..9943bca60 100644 --- a/src/responder/nss/nsssrv_netgroup.c +++ b/src/responder/nss/nsssrv_netgroup.c @@ -254,7 +254,7 @@ static struct tevent_req *setnetgrent_send(TALLOC_CTX *mem_ctx, /* Result object is still being constructed * Register for notification when it's ready */ - ret = setent_add_ref(cmdctx->cctx, state->netgr, req); + ret = nss_setent_add_ref(cmdctx->cctx, state->netgr, req); if (ret != EOK) { goto error; } @@ -281,7 +281,7 @@ static struct tevent_req *setnetgrent_send(TALLOC_CTX *mem_ctx, state->netgr->lookup_table = nctx->netgroups; /* Add a reference for ourselves */ - ret = setent_add_ref(cmdctx->cctx, state->netgr, req); + ret = nss_setent_add_ref(cmdctx->cctx, state->netgr, req); if (ret != EOK) { talloc_free(state->netgr); goto error; @@ -557,15 +557,7 @@ static void lookup_netgr_dp_callback(uint16_t err_maj, uint32_t err_min, } /* We have results to return */ - while(dctx->netgr->reqs) { - if (ret == EOK) { - tevent_req_done(dctx->netgr->reqs->req); - } else { - tevent_req_error(dctx->netgr->reqs->req, ret); - } - /* Freeing each entry in the list removes it from the dlist */ - talloc_free(dctx->netgr->reqs); - } + nss_setent_notify_error(dctx->netgr, ret); } static void setnetgrent_result_timeout(struct tevent_context *ev, |