Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(1682)

Side by Side Diff: ipc/ipc.mojom

Issue 2137353002: Adds associated interface support to IPC::Channel (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@channel-bindings-1
Patch Set: . Created 4 years, 5 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
« no previous file with comments | « ipc/ipc.gyp ('k') | ipc/ipc_channel.h » ('j') | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
1 // Copyright 2016 The Chromium Authors. All rights reserved. 1 // Copyright 2016 The Chromium Authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be 2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file. 3 // found in the LICENSE file.
4 4
5 module IPC.mojom; 5 module IPC.mojom;
6 6
7 struct SerializedHandle { 7 struct SerializedHandle {
8 handle the_handle; 8 handle the_handle;
9 9
10 enum Type { 10 enum Type {
11 MOJO_HANDLE, 11 MOJO_HANDLE,
12 PLATFORM_FILE, 12 PLATFORM_FILE,
13 WIN_HANDLE, 13 WIN_HANDLE,
14 MACH_PORT, 14 MACH_PORT,
15 }; 15 };
16 16
17 Type type; 17 Type type;
18 }; 18 };
19 19
20 // A placeholder interface type since we don't yet support generic associated
21 // message pipe handles.
22 interface GenericInterface {};
23
20 interface Channel { 24 interface Channel {
21 Receive(array<uint8> data, array<SerializedHandle>? handles); 25 Receive(array<uint8> data, array<SerializedHandle>? handles);
26
27 GetAssociatedInterface(string name, associated GenericInterface& request);
22 }; 28 };
23 29
24 // An interface for connecting a pair of Channel interfaces representing a 30 // An interface for connecting a pair of Channel interfaces representing a
25 // bidirectional IPC channel. 31 // bidirectional IPC channel.
26 interface Bootstrap { 32 interface Bootstrap {
27 // Initializes a Chrome IPC channel over |to_client_channel| and 33 // Initializes a Chrome IPC channel over |to_client_channel| and
28 // |to_server_channel|. Each side also sends its PID to the other side. 34 // |to_server_channel|. Each side also sends its PID to the other side.
29 Init(associated Channel& to_client_channel, 35 Init(associated Channel& to_client_channel,
30 associated Channel to_server_channel, 36 associated Channel to_server_channel,
31 int32 pid) => (int32 pid); 37 int32 pid) => (int32 pid);
32 }; 38 };
OLDNEW
« no previous file with comments | « ipc/ipc.gyp ('k') | ipc/ipc_channel.h » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698