#communication #mach #process #child-process #port #exchange #mach-task-self

perfrecord-mach-ipc-rendezvous

A subset of the ipc-channel mach functionality to establish two-way communication and exchange the mach_task_self port

3 unstable releases

0.2.1 Dec 3, 2021
0.2.0 Jun 1, 2020
0.1.0 May 28, 2020

#77 in macOS and iOS APIs

Download history 1/week @ 2023-12-28 7/week @ 2024-01-04 11/week @ 2024-01-11 5/week @ 2024-01-18 7/week @ 2024-01-25 5/week @ 2024-02-01 4/week @ 2024-02-08 16/week @ 2024-02-15 86/week @ 2024-02-22 57/week @ 2024-02-29 23/week @ 2024-03-07 25/week @ 2024-03-14 29/week @ 2024-03-21 52/week @ 2024-03-28 24/week @ 2024-04-04 9/week @ 2024-04-11

119 downloads per month
Used in perfrecord

MIT/Apache

460KB
15K SLoC

perfrecord-mach-ipc-rendzvous

This crate has some code that allows establishing two-way mach communication between a parent process and a child process.

This code was originally written by pcwalton for ipc-channel. I needed some extra functionality to be able to send raw ports, namely mach_task_self(), so I forked the code. I may also remove large pieces of functionality that I don't need, so that the size of the perfrecord-preload library gets reduced.

This is a separate crate, rather than just a mod inside perfrecord, so that it can also be used by perfrecord-preload.

Dependencies

~250–360KB