Relay mach port send rights via the broker process
Categories
(Core :: IPC, enhancement)
Tracking
()
Tracking | Status | |
---|---|---|
firefox96 | --- | fixed |
People
(Reporter: nika, Assigned: nika)
References
Details
Attachments
(8 files)
48 bytes,
text/x-phabricator-request
|
Details | Review | |
48 bytes,
text/x-phabricator-request
|
Details | Review | |
48 bytes,
text/x-phabricator-request
|
Details | Review | |
48 bytes,
text/x-phabricator-request
|
Details | Review | |
48 bytes,
text/x-phabricator-request
|
Details | Review | |
48 bytes,
text/x-phabricator-request
|
Details | Review | |
48 bytes,
text/x-phabricator-request
|
Details | Review | |
48 bytes,
text/x-phabricator-request
|
Details | Review |
Much like bug 1732343, this patch tracks using the same infrastructure to transfer mach ports using the broker process. This will be handled in a similar way to how Mojo handled mach ports before they converted to using mach as the primary IPC mechanism on macOS (https://source.chromium.org/chromium/chromium/src/+/9f707e5e04598d8303fa99ca29eb507c839767d8:mojo/core/mach_port_relay.cc, https://source.chromium.org/chromium/chromium/src/+/9f707e5e04598d8303fa99ca29eb507c839767d8:base/mac/mach_port_util.cc).
With this change and the changes in bug 1732343 it will be possible to create IPC connections between processes without requiring knowledge of the OtherPid() to transfer native handles and shared memory.
This patch only handles transferring mach send rights, as they are the only handle type required for mach shared memory. If receive rights are required in the future, support can be added, or we can migrate to using mach ports for IPC directly.
Assignee | ||
Comment 1•3 years ago
|
||
Assignee | ||
Comment 2•3 years ago
|
||
Depends on D128210
Assignee | ||
Comment 3•3 years ago
|
||
Depends on D128211
Assignee | ||
Comment 4•3 years ago
|
||
Depends on D128212
Assignee | ||
Comment 5•3 years ago
|
||
Depends on D128213
Assignee | ||
Comment 6•3 years ago
|
||
Depends on D128214
Assignee | ||
Comment 7•3 years ago
|
||
Depends on D128215
Assignee | ||
Comment 8•3 years ago
|
||
Depends on D128216
Assignee | ||
Updated•3 years ago
|
Updated•3 years ago
|
Updated•3 years ago
|
Updated•3 years ago
|
Updated•3 years ago
|
Comment 10•3 years ago
|
||
bugherder |
https://hg.mozilla.org/mozilla-central/rev/596b8bffe529
https://hg.mozilla.org/mozilla-central/rev/aebe310d90ce
https://hg.mozilla.org/mozilla-central/rev/88b9087be476
https://hg.mozilla.org/mozilla-central/rev/610ad8dcfea2
https://hg.mozilla.org/mozilla-central/rev/612077241842
https://hg.mozilla.org/mozilla-central/rev/d9872022b7f5
https://hg.mozilla.org/mozilla-central/rev/0204dcc02d93
https://hg.mozilla.org/mozilla-central/rev/6c377347f58b
Description
•