s4:irpc: optionaly pass the security_token via IRPC requests.
[samba.git] / source4 / lib / messaging / messaging.c
index 724d66af685b71c51479e4b5fee34fc88a92b4f9..0fe089332d2303d1c24339a26470e89ae24cdf0c 100644 (file)
@@ -717,6 +717,7 @@ NTSTATUS irpc_send_reply(struct irpc_message *m, NTSTATUS status)
        }
 
        m->header.flags |= IRPC_FLAG_REPLY;
+       m->header.creds.token= NULL;
 
        /* construct the packet */
        ndr_err = ndr_push_irpc_header(push, NDR_SCALARS|NDR_BUFFERS, &m->header);
@@ -1014,6 +1015,7 @@ struct irpc_bh_state {
        struct server_id server_id;
        const struct ndr_interface_table *table;
        uint32_t timeout;
+       struct security_token *token;
 };
 
 static bool irpc_bh_is_connected(struct dcerpc_binding_handle *h)
@@ -1111,6 +1113,7 @@ static struct tevent_req *irpc_bh_raw_call_send(TALLOC_CTX *mem_ctx,
        header.callnum    = state->opnum;
        header.flags      = 0;
        header.status     = NT_STATUS_OK;
+       header.creds.token= hs->token;
 
        /* construct the irpc packet */
        ndr = ndr_push_init_ctx(state->irpc);