summaryrefslogtreecommitdiffstats
path: root/src
diff options
context:
space:
mode:
Diffstat (limited to 'src')
-rw-r--r--src/db/sysdb_ops.c125
1 files changed, 0 insertions, 125 deletions
diff --git a/src/db/sysdb_ops.c b/src/db/sysdb_ops.c
index d7e547ff5..b6fe166a7 100644
--- a/src/db/sysdb_ops.c
+++ b/src/db/sysdb_ops.c
@@ -74,131 +74,6 @@ static uint32_t get_attr_as_uint32(struct ldb_message *msg, const char *attr)
#define ERROR_OUT(v, r, l) do { v = r; goto l; } while(0);
-/* =LDB-Request-(tevent_req-style)======================================== */
-
-struct sldb_request_state {
- struct tevent_context *ev;
- struct ldb_context *ldbctx;
- struct ldb_request *ldbreq;
- struct ldb_reply *ldbreply;
-};
-
-static void sldb_request_wakeup(struct tevent_req *subreq);
-static int sldb_request_callback(struct ldb_request *ldbreq,
- struct ldb_reply *ldbreply);
-
-static struct tevent_req *sldb_request_send(TALLOC_CTX *mem_ctx,
- struct tevent_context *ev,
- struct ldb_context *ldbctx,
- struct ldb_request *ldbreq)
-{
- struct tevent_req *req, *subreq;
- struct sldb_request_state *state;
- struct timeval tv = { 0, 0 };
-
- req = tevent_req_create(mem_ctx, &state, struct sldb_request_state);
- if (!req) return NULL;
-
- state->ev = ev;
- state->ldbctx = ldbctx;
- state->ldbreq = ldbreq;
- state->ldbreply = NULL;
-
- subreq = tevent_wakeup_send(state, ev, tv);
- if (!subreq) {
- DEBUG(1, ("Failed to add critical timer to run next ldb operation!\n"));
- talloc_zfree(req);
- return NULL;
- }
- tevent_req_set_callback(subreq, sldb_request_wakeup, req);
-
- return req;
-}
-
-static void sldb_request_wakeup(struct tevent_req *subreq)
-{
- struct tevent_req *req = tevent_req_callback_data(subreq,
- struct tevent_req);
- struct sldb_request_state *state = tevent_req_data(req,
- struct sldb_request_state);
- int ret;
-
- if (!tevent_wakeup_recv(subreq)) return;
- talloc_zfree(subreq);
-
- state->ldbreq->callback = sldb_request_callback;
- state->ldbreq->context = req;
-
- ret = ldb_request(state->ldbctx, state->ldbreq);
- if (ret != LDB_SUCCESS) {
- int err = sysdb_error_to_errno(ret);
- DEBUG(6, ("Error: %d (%s)\n", err, strerror(err)));
- tevent_req_error(req, err);
- }
-}
-
-static int sldb_request_callback(struct ldb_request *ldbreq,
- struct ldb_reply *ldbreply)
-{
- struct tevent_req *req = talloc_get_type(ldbreq->context,
- struct tevent_req);
- struct sldb_request_state *state = tevent_req_data(req,
- struct sldb_request_state);
- int err;
-
- if (!ldbreply) {
- DEBUG(6, ("Error: Missing ldbreply\n"));
- ERROR_OUT(err, EIO, fail);
- }
-
- state->ldbreply = talloc_steal(state, ldbreply);
-
- if (ldbreply->error != LDB_SUCCESS) {
- DEBUG(6, ("LDB Error: %d (%s)\n",
- ldbreply->error, ldb_errstring(state->ldbctx)));
- ERROR_OUT(err, sysdb_error_to_errno(ldbreply->error), fail);
- }
-
- if (ldbreply->type == LDB_REPLY_DONE) {
- tevent_req_done(req);
- return EOK;
- }
-
- tevent_req_notify_callback(req);
- return EOK;
-
-fail:
- tevent_req_error(req, err);
- return EOK;
-}
-
-static int sldb_request_recv(struct tevent_req *req,
- TALLOC_CTX *mem_ctx,
- struct ldb_reply **ldbreply)
-{
- struct sldb_request_state *state = tevent_req_data(req,
- struct sldb_request_state);
- enum tevent_req_state tstate;
- uint64_t err = 0;
-
- if (state->ldbreply) {
- *ldbreply = talloc_move(mem_ctx, &state->ldbreply);
- }
-
- if (tevent_req_is_error(req, &tstate, &err)) {
- switch (tstate) {
- case TEVENT_REQ_USER_ERROR:
- return err;
- case TEVENT_REQ_IN_PROGRESS:
- return EOK;
- default:
- return EIO;
- }
- }
-
- return EOK;
-}
-
/* =Standard-Sysdb-Operations-utility-functions=========================== */
static int sysdb_op_default_recv(struct tevent_req *req)