OLD | NEW |
1 // Copyright (c) 2012 The Chromium Authors. All rights reserved. | 1 // Copyright (c) 2012 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 // Defines IPC messages used by Chromoting components. | 5 // Defines IPC messages used by Chromoting components. |
6 | 6 |
7 // Multiply-included message file, no traditional include guard. | 7 // Multiply-included message file, no traditional include guard. |
8 #include "ipc/ipc_message_macros.h" | 8 #include "ipc/ipc_message_macros.h" |
| 9 #include "ipc/ipc_platform_file.h" |
9 | 10 |
10 #define IPC_MESSAGE_START ChromotingMsgStart | 11 #define IPC_MESSAGE_START ChromotingMsgStart |
11 | 12 |
12 //----------------------------------------------------------------------------- | 13 //----------------------------------------------------------------------------- |
13 // Chromoting messages sent from the daemon to the network process. | 14 // Chromoting messages sent from the daemon to the network process. |
14 | 15 |
15 // Requests the network process to crash producing a crash dump. The daemon | 16 // Requests the network process to crash producing a crash dump. The daemon |
16 // sends this message when a fatal error has been detected indicating that | 17 // sends this message when a fatal error has been detected indicating that |
17 // the network process misbehaves. The daemon passes the location of the code | 18 // the network process misbehaves. The daemon passes the location of the code |
18 // that detected the error. | 19 // that detected the error. |
19 IPC_MESSAGE_CONTROL3(ChromotingDaemonNetworkMsg_Crash, | 20 IPC_MESSAGE_CONTROL3(ChromotingDaemonNetworkMsg_Crash, |
20 std::string /* function_name */, | 21 std::string /* function_name */, |
21 std::string /* file_name */, | 22 std::string /* file_name */, |
22 int /* line_number */) | 23 int /* line_number */) |
23 | 24 |
24 // Delivers the host configuration (and updates) to the network process. | 25 // Delivers the host configuration (and updates) to the network process. |
25 IPC_MESSAGE_CONTROL1(ChromotingDaemonNetworkMsg_Configuration, std::string) | 26 IPC_MESSAGE_CONTROL1(ChromotingDaemonNetworkMsg_Configuration, std::string) |
26 | 27 |
27 // Notifies the network process that the terminal |terminal_id| has been | 28 // Notifies the network process that the terminal |terminal_id| has been |
28 // disconnected from the desktop session. | 29 // disconnected from the desktop session. |
29 IPC_MESSAGE_CONTROL1(ChromotingDaemonNetworkMsg_TerminalDisconnected, | 30 IPC_MESSAGE_CONTROL1(ChromotingDaemonNetworkMsg_TerminalDisconnected, |
30 int /* terminal_id */) | 31 int /* terminal_id */) |
31 | 32 |
| 33 // Notifies the network process that |terminal_id| is now attached to |
| 34 // a desktop integration process. |desktop_process| is the handle of the desktop |
| 35 // process |desktop_pipe| is the client end of the desktop-to-network pipe |
| 36 // opened. |
| 37 // |
| 38 // Windows only: |desktop_pipe| has to be duplicated from the desktop process |
| 39 // by the receiver of the message. |desktop_process| is already duplicated by |
| 40 // the sender. |
| 41 IPC_MESSAGE_CONTROL3(ChromotingDaemonNetworkMsg_DesktopAttached, |
| 42 int /* terminal_id */, |
| 43 IPC::PlatformFileForTransit /* desktop_process */, |
| 44 IPC::PlatformFileForTransit /* desktop_pipe */) |
| 45 |
32 //----------------------------------------------------------------------------- | 46 //----------------------------------------------------------------------------- |
33 // Chromoting messages sent from the network to the daemon process. | 47 // Chromoting messages sent from the network to the daemon process. |
34 | 48 |
35 // Connects the terminal |terminal_id| (i.e. the remote client) to a desktop | 49 // Connects the terminal |terminal_id| (i.e. the remote client) to a desktop |
36 // session. | 50 // session. |
37 IPC_MESSAGE_CONTROL1(ChromotingNetworkHostMsg_ConnectTerminal, | 51 IPC_MESSAGE_CONTROL1(ChromotingNetworkHostMsg_ConnectTerminal, |
38 int /* terminal_id */) | 52 int /* terminal_id */) |
39 | 53 |
40 // Disconnects the terminal |terminal_id| from the desktop session it was | 54 // Disconnects the terminal |terminal_id| from the desktop session it was |
41 // connected to. | 55 // connected to. |
42 IPC_MESSAGE_CONTROL1(ChromotingNetworkHostMsg_DisconnectTerminal, | 56 IPC_MESSAGE_CONTROL1(ChromotingNetworkHostMsg_DisconnectTerminal, |
43 int /* terminal_id */) | 57 int /* terminal_id */) |
| 58 |
| 59 //----------------------------------------------------------------------------- |
| 60 // Chromoting messages sent from the daemon to the desktop process. |
| 61 |
| 62 // Requests the desktop process to crash producing a crash dump. The daemon |
| 63 // sends this message when a fatal error has been detected indicating that |
| 64 // the desktop process misbehaves. The daemon passes the location of the code |
| 65 // that detected the error. |
| 66 IPC_MESSAGE_CONTROL3(ChromotingDaemonDesktopMsg_Crash, |
| 67 std::string /* function_name */, |
| 68 std::string /* file_name */, |
| 69 int /* line_number */) |
| 70 |
| 71 //----------------------------------------------------------------------------- |
| 72 // Chromoting messages sent from the desktop to the daemon process. |
| 73 |
| 74 // Notifies the daemon that a desktop integration process has been initialized. |
| 75 // |desktop_pipe| specifies the client end of the desktop pipe. It is to be |
| 76 // forwarded to the desktop environment stub. |
| 77 // |
| 78 // Windows only: |desktop_pipe| has to be duplicated from the desktop process by |
| 79 // the receiver of the message. |
| 80 IPC_MESSAGE_CONTROL1(ChromotingDesktopDaemonMsg_DesktopAttached, |
| 81 IPC::PlatformFileForTransit /* desktop_pipe */) |
OLD | NEW |