summaryrefslogtreecommitdiff
path: root/src/providers/proxy.c
diff options
context:
space:
mode:
authorSimo Sorce <ssorce@redhat.com>2010-03-03 15:29:39 -0500
committerStephen Gallagher <sgallagh@redhat.com>2010-04-12 09:22:14 -0400
commit3b3dc1a8ad19100951d19abe4038791f01faa0b7 (patch)
tree17b006f23b47701fa4e90da5df3bd4963602b9b7 /src/providers/proxy.c
parented80c73efa51780a39dfc9c72821cf88e95d264c (diff)
downloadsssd-3b3dc1a8ad19100951d19abe4038791f01faa0b7.tar.gz
sssd-3b3dc1a8ad19100951d19abe4038791f01faa0b7.tar.bz2
sssd-3b3dc1a8ad19100951d19abe4038791f01faa0b7.zip
sysdb: delete sysdb_delete_group
Diffstat (limited to 'src/providers/proxy.c')
-rw-r--r--src/providers/proxy.c69
1 files changed, 10 insertions, 59 deletions
diff --git a/src/providers/proxy.c b/src/providers/proxy.c
index 7b56a95e..42a19ec0 100644
--- a/src/providers/proxy.c
+++ b/src/providers/proxy.c
@@ -1032,7 +1032,6 @@ fail:
/* =Getgrgid-wrapper======================================================*/
static void get_gr_gid_process(struct tevent_req *subreq);
-static void get_gr_gid_remove_done(struct tevent_req *subreq);
static struct tevent_req *get_gr_gid_send(TALLOC_CTX *mem_ctx,
struct tevent_context *ev,
@@ -1196,39 +1195,12 @@ again:
DEBUG(7, ("Group %d does not exist (or is invalid) on remote server,"
" deleting!\n", state->gid));
- subreq = sysdb_delete_group_send(state, state->ev,
- NULL, state->handle,
- state->domain,
- NULL, state->gid);
- if (!subreq) {
- tevent_req_error(req, ENOMEM);
+ ret = sysdb_delete_group(state, state->sysdb,
+ state->domain, NULL, state->gid);
+ if (ret) {
+ tevent_req_error(req, ret);
return;
}
- tevent_req_set_callback(subreq, get_gr_gid_remove_done, req);
- return;
- }
-
- subreq = sysdb_transaction_commit_send(state, state->ev, state->handle);
- if (!subreq) {
- tevent_req_error(req, ENOMEM);
- return;
- }
- tevent_req_set_callback(subreq, proxy_default_done, req);
-}
-
-static void get_gr_gid_remove_done(struct tevent_req *subreq)
-{
- struct tevent_req *req = tevent_req_callback_data(subreq,
- struct tevent_req);
- struct proxy_state *state = tevent_req_data(req,
- struct proxy_state);
- int ret;
-
- ret = sysdb_delete_group_recv(subreq);
- talloc_zfree(subreq);
- if (ret && ret != ENOENT) {
- tevent_req_error(req, ret);
- return;
}
subreq = sysdb_transaction_commit_send(state, state->ev, state->handle);
@@ -1454,7 +1426,6 @@ static struct tevent_req *get_group_from_gid_send(TALLOC_CTX *mem_ctx,
struct sss_domain_info *domain,
gid_t gid);
static int get_group_from_gid_recv(struct tevent_req *req);
-static void get_group_from_gid_send_del_done(struct tevent_req *subreq);
static struct tevent_req *get_initgr_send(TALLOC_CTX *mem_ctx,
@@ -1780,7 +1751,7 @@ static struct tevent_req *get_group_from_gid_send(TALLOC_CTX *mem_ctx,
struct sss_domain_info *domain,
gid_t gid)
{
- struct tevent_req *req, *subreq;
+ struct tevent_req *req;
struct proxy_state *state;
struct sss_domain_info *dom = ctx->be->domain;
enum nss_status status;
@@ -1881,8 +1852,6 @@ again:
if (ret) {
goto fail;
}
- tevent_req_done(req);
- tevent_req_post(req, ev);
break;
case NSS_STATUS_UNAVAIL:
@@ -1898,17 +1867,15 @@ again:
}
if (delete_group) {
- subreq = sysdb_delete_group_send(state, state->ev,
- NULL, state->handle,
- state->domain,
- NULL, state->gid);
- if (!subreq) {
- ret = ENOMEM;
+ ret = sysdb_delete_group(state, state->sysdb,
+ state->domain, NULL, state->gid);
+ if (ret) {
goto fail;
}
- tevent_req_set_callback(subreq, get_group_from_gid_send_del_done, req);
}
+ tevent_req_done(req);
+ tevent_req_post(req, ev);
return req;
fail:
@@ -1917,22 +1884,6 @@ fail:
return req;
}
-static void get_group_from_gid_send_del_done(struct tevent_req *subreq)
-{
- struct tevent_req *req = tevent_req_callback_data(subreq,
- struct tevent_req);
- int ret;
-
- ret = sysdb_delete_group_recv(subreq);
- talloc_zfree(subreq);
- if (ret && ret != ENOENT) {
- tevent_req_error(req, ret);
- return;
- }
-
- tevent_req_done(req);
-}
-
static int get_group_from_gid_recv(struct tevent_req *req)
{
TEVENT_REQ_RETURN_ON_ERROR(req);