OLD | NEW |
1 // Copyright (c) 2006-2008 The Chromium Authors. All rights reserved. | 1 // Copyright (c) 2006-2008 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 #ifndef SANDBOX_SRC_SHAREDMEM_IPC_CLIENT_H__ | 5 #ifndef SANDBOX_SRC_SHAREDMEM_IPC_CLIENT_H__ |
6 #define SANDBOX_SRC_SHAREDMEM_IPC_CLIENT_H__ | 6 #define SANDBOX_SRC_SHAREDMEM_IPC_CLIENT_H__ |
7 | 7 |
8 #include "sandbox/src/crosscall_params.h" | 8 #include "sandbox/win/src/crosscall_params.h" |
9 #include "sandbox/src/sandbox.h" | 9 #include "sandbox/win/src/sandbox.h" |
10 | 10 |
11 // IPC transport implementation that uses shared memory. | 11 // IPC transport implementation that uses shared memory. |
12 // This is the client side | 12 // This is the client side |
13 // | 13 // |
14 // The shared memory is divided on blocks called channels, and potentially | 14 // The shared memory is divided on blocks called channels, and potentially |
15 // it can perform as many concurrent IPC calls as channels. The IPC over | 15 // it can perform as many concurrent IPC calls as channels. The IPC over |
16 // each channel is strictly synchronous for the client. | 16 // each channel is strictly synchronous for the client. |
17 // | 17 // |
18 // Each channel as a channel control section associated with. Each control | 18 // Each channel as a channel control section associated with. Each control |
19 // section has two kernel events (known as ping and pong) and a integer | 19 // section has two kernel events (known as ping and pong) and a integer |
(...skipping 107 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
127 // Return the channel index given the address of the buffer. | 127 // Return the channel index given the address of the buffer. |
128 size_t ChannelIndexFromBuffer(const void* buffer); | 128 size_t ChannelIndexFromBuffer(const void* buffer); |
129 IPCControl* control_; | 129 IPCControl* control_; |
130 // point to the first channel base | 130 // point to the first channel base |
131 char* first_base_; | 131 char* first_base_; |
132 }; | 132 }; |
133 | 133 |
134 } // namespace sandbox | 134 } // namespace sandbox |
135 | 135 |
136 #endif // SANDBOX_SRC_SHAREDMEM_IPC_CLIENT_H__ | 136 #endif // SANDBOX_SRC_SHAREDMEM_IPC_CLIENT_H__ |
OLD | NEW |