irpc 780 source4/kdc/kdc.c status = IRPC_REGISTER(task->msg_ctx, irpc, KDC_CHECK_GENERIC_KERBEROS,
irpc 38 source4/lib/messaging/irpc.h struct irpc_list *irpc;
irpc 119 source4/lib/messaging/irpc.h NTSTATUS irpc_call_recv(struct irpc_request *irpc);
irpc 51 source4/lib/messaging/messaging.c struct irpc_list *irpc;
irpc 607 source4/lib/messaging/messaging.c IRPC_REGISTER(msg, irpc, IRPC_UPTIME, irpc_uptime, msg);
irpc 645 source4/lib/messaging/messaging.c struct irpc_list *irpc;
irpc 648 source4/lib/messaging/messaging.c for (irpc=msg_ctx->irpc; irpc; irpc=irpc->next) {
irpc 649 source4/lib/messaging/messaging.c if (irpc->table == table && irpc->callnum == callnum) {
irpc 653 source4/lib/messaging/messaging.c if (irpc == NULL) {
irpc 654 source4/lib/messaging/messaging.c irpc = talloc(msg_ctx, struct irpc_list);
irpc 655 source4/lib/messaging/messaging.c NT_STATUS_HAVE_NO_MEMORY(irpc);
irpc 656 source4/lib/messaging/messaging.c DLIST_ADD(msg_ctx->irpc, irpc);
irpc 659 source4/lib/messaging/messaging.c irpc->table = table;
irpc 660 source4/lib/messaging/messaging.c irpc->callnum = callnum;
irpc 661 source4/lib/messaging/messaging.c irpc->fn = fn;
irpc 662 source4/lib/messaging/messaging.c irpc->private_data = private_data;
irpc 663 source4/lib/messaging/messaging.c irpc->uuid = irpc->table->syntax_id.uuid;
irpc 674 source4/lib/messaging/messaging.c struct irpc_request *irpc;
irpc 677 source4/lib/messaging/messaging.c irpc = (struct irpc_request *)idr_find(msg_ctx->idr, m->header.callid);
irpc 678 source4/lib/messaging/messaging.c if (irpc == NULL) return;
irpc 681 source4/lib/messaging/messaging.c ndr_err = irpc->table->calls[irpc->callnum].ndr_pull(m->ndr, NDR_OUT, irpc->r);
irpc 683 source4/lib/messaging/messaging.c irpc->status = m->header.status;
irpc 684 source4/lib/messaging/messaging.c talloc_steal(irpc->mem_ctx, m);
irpc 686 source4/lib/messaging/messaging.c irpc->status = ndr_map_error2ntstatus(ndr_err);
irpc 687 source4/lib/messaging/messaging.c talloc_steal(irpc, m);
irpc 689 source4/lib/messaging/messaging.c irpc->done = true;
irpc 690 source4/lib/messaging/messaging.c if (irpc->async.fn) {
irpc 691 source4/lib/messaging/messaging.c irpc->async.fn(irpc);
irpc 722 source4/lib/messaging/messaging.c ndr_err = m->irpc->table->calls[m->irpc->callnum].ndr_push(push, NDR_OUT, m->data);
irpc 748 source4/lib/messaging/messaging.c for (i=msg_ctx->irpc; i; i=i->next) {
irpc 774 source4/lib/messaging/messaging.c m->irpc = i;
irpc 830 source4/lib/messaging/messaging.c static int irpc_destructor(struct irpc_request *irpc)
irpc 832 source4/lib/messaging/messaging.c if (irpc->callid != -1) {
irpc 833 source4/lib/messaging/messaging.c idr_remove(irpc->msg_ctx->idr, irpc->callid);
irpc 834 source4/lib/messaging/messaging.c irpc->callid = -1;
irpc 837 source4/lib/messaging/messaging.c if (irpc->reject_free) {
irpc 849 source4/lib/messaging/messaging.c struct irpc_request *irpc = talloc_get_type(private_data, struct irpc_request);
irpc 850 source4/lib/messaging/messaging.c irpc->status = NT_STATUS_IO_TIMEOUT;
irpc 851 source4/lib/messaging/messaging.c irpc->done = true;
irpc 852 source4/lib/messaging/messaging.c if (irpc->async.fn) {
irpc 853 source4/lib/messaging/messaging.c irpc->async.fn(irpc);
irpc 870 source4/lib/messaging/messaging.c struct irpc_request *irpc;
irpc 873 source4/lib/messaging/messaging.c irpc = talloc(msg_ctx, struct irpc_request);
irpc 874 source4/lib/messaging/messaging.c if (irpc == NULL) goto failed;
irpc 876 source4/lib/messaging/messaging.c irpc->msg_ctx = msg_ctx;
irpc 877 source4/lib/messaging/messaging.c irpc->table = table;
irpc 878 source4/lib/messaging/messaging.c irpc->callnum = callnum;
irpc 879 source4/lib/messaging/messaging.c irpc->callid = idr_get_new(msg_ctx->idr, irpc, UINT16_MAX);
irpc 880 source4/lib/messaging/messaging.c if (irpc->callid == -1) goto failed;
irpc 881 source4/lib/messaging/messaging.c irpc->r = r;
irpc 882 source4/lib/messaging/messaging.c irpc->done = false;
irpc 883 source4/lib/messaging/messaging.c irpc->async.fn = NULL;
irpc 884 source4/lib/messaging/messaging.c irpc->mem_ctx = ctx;
irpc 885 source4/lib/messaging/messaging.c irpc->reject_free = false;
irpc 887 source4/lib/messaging/messaging.c talloc_set_destructor(irpc, irpc_destructor);
irpc 893 source4/lib/messaging/messaging.c header.callid = irpc->callid;
irpc 899 source4/lib/messaging/messaging.c ndr = ndr_push_init_ctx(irpc, msg_ctx->iconv_convenience);
irpc 913 source4/lib/messaging/messaging.c event_add_timed(msg_ctx->event.ev, irpc,
irpc 915 source4/lib/messaging/messaging.c irpc_timeout, irpc);
irpc 918 source4/lib/messaging/messaging.c return irpc;
irpc 921 source4/lib/messaging/messaging.c talloc_free(irpc);
irpc 928 source4/lib/messaging/messaging.c NTSTATUS irpc_call_recv(struct irpc_request *irpc)
irpc 932 source4/lib/messaging/messaging.c NT_STATUS_HAVE_NO_MEMORY(irpc);
irpc 934 source4/lib/messaging/messaging.c irpc->reject_free = true;
irpc 936 source4/lib/messaging/messaging.c while (!irpc->done) {
irpc 937 source4/lib/messaging/messaging.c if (event_loop_once(irpc->msg_ctx->event.ev) != 0) {
irpc 942 source4/lib/messaging/messaging.c irpc->reject_free = false;
irpc 944 source4/lib/messaging/messaging.c status = irpc->status;
irpc 945 source4/lib/messaging/messaging.c talloc_free(irpc);
irpc 958 source4/lib/messaging/messaging.c struct irpc_request *irpc = irpc_call_send(msg_ctx, server_id,
irpc 960 source4/lib/messaging/messaging.c return irpc_call_recv(irpc);
irpc 43 source4/lib/messaging/tests/irpc.c static NTSTATUS irpc_AddOne(struct irpc_message *irpc, struct echo_AddOne *r)
irpc 59 source4/lib/messaging/tests/irpc.c struct irpc_message *irpc = talloc_get_type(private_data, struct irpc_message);
irpc 60 source4/lib/messaging/tests/irpc.c struct echo_EchoData *r = irpc->data;
irpc 63 source4/lib/messaging/tests/irpc.c irpc_send_reply(irpc, NT_STATUS_NO_MEMORY);
irpc 66 source4/lib/messaging/tests/irpc.c irpc_send_reply(irpc, NT_STATUS_OK);
irpc 73 source4/lib/messaging/tests/irpc.c static NTSTATUS irpc_EchoData(struct irpc_message *irpc, struct echo_EchoData *r)
irpc 75 source4/lib/messaging/tests/irpc.c irpc->defer_reply = true;
irpc 76 source4/lib/messaging/tests/irpc.c event_add_timed(irpc->ev, irpc, timeval_zero(), deferred_echodata, irpc);
irpc 145 source4/lib/messaging/tests/irpc.c static void irpc_callback(struct irpc_request *irpc)
irpc 147 source4/lib/messaging/tests/irpc.c struct echo_AddOne *r = (struct echo_AddOne *)irpc->r;
irpc 148 source4/lib/messaging/tests/irpc.c int *pong_count = (int *)irpc->async.private_data;
irpc 149 source4/lib/messaging/tests/irpc.c NTSTATUS status = irpc_call_recv(irpc);
irpc 181 source4/lib/messaging/tests/irpc.c struct irpc_request *irpc;
irpc 183 source4/lib/messaging/tests/irpc.c irpc = IRPC_CALL_SEND(data->msg_ctx1, cluster_id(0, MSG_ID2),
irpc 186 source4/lib/messaging/tests/irpc.c torture_assert(tctx, irpc != NULL, "AddOne send failed");
irpc 188 source4/lib/messaging/tests/irpc.c irpc->async.fn = irpc_callback;
irpc 189 source4/lib/messaging/tests/irpc.c irpc->async.private_data = &pong_count;
irpc 180 source4/nbt_server/irpc.c status = IRPC_REGISTER(task->msg_ctx, irpc, NBTD_INFORMATION,
irpc 187 source4/nbt_server/irpc.c status = IRPC_REGISTER(task->msg_ctx, irpc, NBTD_GETDCNAME,
irpc 195 source4/nbt_server/irpc.c status = IRPC_REGISTER(task->msg_ctx, irpc, NBTD_PROXY_WINS_CHALLENGE,
irpc 203 source4/nbt_server/irpc.c status = IRPC_REGISTER(task->msg_ctx, irpc, NBTD_PROXY_WINS_RELEASE_DEMAND,
irpc 135 source4/smb_server/management.c IRPC_REGISTER(smb_conn->connection->msg_ctx, irpc, SMBSRV_INFORMATION,
irpc 929 source4/wrepl_server/wrepl_apply_records.c irpc, NBTD_PROXY_WINS_RELEASE_DEMAND,
irpc 1074 source4/wrepl_server/wrepl_apply_records.c irpc, NBTD_PROXY_WINS_CHALLENGE,
irpc 1150 source4/wrepl_server/wrepl_apply_records.c irpc, NBTD_PROXY_WINS_RELEASE_DEMAND,
irpc 493 source4/wrepl_server/wrepl_scavenging.c irpc, NBTD_PROXY_WINS_CHALLENGE,