#include "process_model.h"
#include "lib/messaging/irpc.h"
#include "param/param.h"
-#include "librpc/gen_ndr/ndr_irpc.h"
+#include "librpc/gen_ndr/ndr_irpc_c.h"
/*
terminate a task service
DEBUG(0,("task_server_terminate: [%s]\n", reason));
if (fatal) {
+ struct dcerpc_binding_handle *irpc_handle;
struct samba_terminate r;
- struct server_id *sid;
- sid = irpc_servers_byname(task->msg_ctx, task, "samba");
+ irpc_handle = irpc_binding_handle_by_name(task, task->msg_ctx,
+ "samba", &ndr_table_irpc);
r.in.reason = reason;
- IRPC_CALL(task->msg_ctx, sid[0],
- irpc, SAMBA_TERMINATE,
- &r, NULL);
+ dcerpc_samba_terminate_r(irpc_handle, task, &r);
}
model_ops->terminate(event_ctx, task->lp_ctx, reason);
bld.SAMBA_SUBSYSTEM('service',
source='service.c service_stream.c service_named_pipe.c service_task.c',
autoproto='service_proto.h',
- deps='tevent MESSAGING samba_socket NDR_NAMED_PIPE_AUTH NAMED_PIPE_AUTH_TSTREAM HEIMDAL_GSSAPI CREDENTIALS LIBTSOCKET LIBSAMBA_TSOCKET'
+ deps='tevent MESSAGING samba_socket RPC_NDR_IRPC NDR_NAMED_PIPE_AUTH NAMED_PIPE_AUTH_TSTREAM HEIMDAL_GSSAPI CREDENTIALS LIBTSOCKET LIBSAMBA_TSOCKET'
)