Lines Matching full:ipc

61     struct mach_ctx *ipc;  in mach_init()  local
67 syncq = dispatch_queue_create("heim-ipc-syncq", NULL); in mach_init()
74 ipc = malloc(sizeof(*ipc)); in mach_init()
75 if (ipc == NULL) { in mach_init()
80 ipc->server = sport; in mach_init()
81 ipc->name = strdup(service); in mach_init()
82 if (ipc->name == NULL) { in mach_init()
83 mach_release(ipc); in mach_init()
87 *ctx = ipc; in mach_init()
97 struct mach_ctx *ipc = ctx; in mach_ipc() local
114 dispatch_sync(syncq, ^{ sport = ipc->server; }); in mach_ipc()
125 ret = bootstrap_look_up(bootstrap_port, ipc->name, &nport); in mach_ipc()
130 if (sport != ipc->server) { in mach_ipc()
133 mach_port_deallocate(mach_task_self(), ipc->server); in mach_ipc()
134 ipc->server = nport; in mach_ipc()
223 struct mach_ctx *ipc = ctx; in mach_async() local
243 c->queue = dispatch_queue_create("heim-ipc-async-client", NULL); in mach_async()
274 dispatch_sync(syncq, ^{ sport = ipc->server; }); in mach_async()
280 ret = bootstrap_look_up(bootstrap_port, ipc->name, &sport); in mach_async()
285 mach_port_deallocate(mach_task_self(), ipc->server); in mach_async()
286 ipc->server = sport; in mach_async()
305 struct mach_ctx *ipc = ctx; in mach_release() local
306 if (ipc->server != MACH_PORT_NULL) in mach_release()
307 mach_port_deallocate(mach_task_self(), ipc->server); in mach_release()
308 free(ipc->name); in mach_release()
309 free(ipc); in mach_release()
480 int (*ipc)(void *,const heim_idata *, heim_idata *, heim_icred *); member
552 return (ctx->ops->ipc)(ctx->ctx, snd, rcv, cred); in heim_ipc_call()
564 ret = (ctx->ops->ipc)(ctx->ctx, snd, &rcv, &cred); in heim_ipc_async()