s3/rpc_server/wsp: Add elasticsearch runnewquery_recv implementation
authorNoel Power <noel.power@suse.com>
Sat, 3 Dec 2022 08:07:26 +0000 (08:07 +0000)
committerNoel Power <noel.power@suse.com>
Thu, 7 Sep 2023 11:23:05 +0000 (12:23 +0100)
source3/rpc_server/wsp/wsp_es_abs_if.c

index 0c00bbd8f95809aa96f0f1797826b814f007f370..461b58c571b70749a22753f9ae9ded653b58a3b3 100644 (file)
@@ -1301,6 +1301,32 @@ static void run_new_query_done(struct tevent_req *subreq)
        tevent_req_done(req);
 }
 
+static NTSTATUS run_new_query_send_recv(struct tevent_req* req,
+                       TALLOC_CTX *ctx,
+                       uint32_t *QueryParametersError,
+                       uint32_t **CursorHandlesList,
+                       bool *fTrueSequential,
+                       bool *fWorkidUnique,
+                       bool *CanQueryNow)
+{
+       NTSTATUS status;
+       struct run_new_query_state *state =
+               tevent_req_data(req, struct run_new_query_state);
+       if (tevent_req_is_nterror(req, &status)) {
+               tevent_req_received(req);
+               return status;
+       }
+
+       *QueryParametersError = state->QueryParametersError;
+       *fTrueSequential = state->fTrueSequential;
+       *fWorkidUnique = state->fWorkidUnique;
+       *CanQueryNow = state->CanQueryNow;
+       *CursorHandlesList = talloc_steal(ctx, state->CursorHandlesList);
+
+       tevent_req_received(req);
+       return NT_STATUS_OK;
+}
+
 void init_elastic_wsp_abs_interace(void)
 {
        static struct wsp_abstract_interface concrete_impl = {0};
@@ -1310,6 +1336,7 @@ void init_elastic_wsp_abs_interace(void)
        concrete_impl.getclientinformation = get_client_information;
        concrete_impl.storeclientinformation = store_client_information;
        concrete_impl.runnewquery_send = run_new_query_send;
+       concrete_impl.runnewquery_recv = run_new_query_send_recv;
 
        register_backend_impl(WSP_BACKEND_ELASTIC,
                        es_wsp_conv_ops(),