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 #ifndef CHROME_BROWSER_NACL_HOST_NACL_PROCESS_HOST_H_ | 5 #ifndef CHROME_BROWSER_NACL_HOST_NACL_PROCESS_HOST_H_ |
6 #define CHROME_BROWSER_NACL_HOST_NACL_PROCESS_HOST_H_ | 6 #define CHROME_BROWSER_NACL_HOST_NACL_PROCESS_HOST_H_ |
7 | 7 |
8 #include "build/build_config.h" | 8 #include "build/build_config.h" |
9 | 9 |
10 #include "base/file_path.h" | 10 #include "base/file_path.h" |
11 #include "base/file_util_proxy.h" | 11 #include "base/file_util_proxy.h" |
12 #include "base/memory/ref_counted.h" | 12 #include "base/memory/ref_counted.h" |
13 #include "base/memory/weak_ptr.h" | 13 #include "base/memory/weak_ptr.h" |
14 #include "base/message_loop.h" | 14 #include "base/message_loop.h" |
15 #include "base/process.h" | 15 #include "base/process.h" |
16 #include "chrome/common/nacl_types.h" | 16 #include "chrome/common/nacl_types.h" |
17 #include "content/public/browser/browser_child_process_host_delegate.h" | 17 #include "content/public/browser/browser_child_process_host_delegate.h" |
18 #include "googleurl/src/gurl.h" | 18 #include "googleurl/src/gurl.h" |
19 #include "ipc/ipc_channel_handle.h" | 19 #include "ipc/ipc_channel_handle.h" |
20 #include "net/base/tcp_listen_socket.h" | 20 #include "net/base/tcp_listen_socket.h" |
| 21 #include "ppapi/shared_impl/ppapi_permissions.h" |
21 | 22 |
22 class ChromeRenderMessageFilter; | 23 class ChromeRenderMessageFilter; |
23 class CommandLine; | 24 class CommandLine; |
24 class ExtensionInfoMap; | 25 class ExtensionInfoMap; |
25 | 26 |
26 namespace content { | 27 namespace content { |
27 class BrowserChildProcessHost; | 28 class BrowserChildProcessHost; |
28 } | 29 } |
29 | 30 |
30 namespace IPC { | 31 namespace IPC { |
(...skipping 106 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
137 IPC::Message* reply_msg); | 138 IPC::Message* reply_msg); |
138 #endif | 139 #endif |
139 | 140 |
140 // Called when a PPAPI IPC channel has been created. | 141 // Called when a PPAPI IPC channel has been created. |
141 void OnPpapiChannelCreated(const IPC::ChannelHandle& channel_handle); | 142 void OnPpapiChannelCreated(const IPC::ChannelHandle& channel_handle); |
142 // Called by PluginListener, so messages from the untrusted side of | 143 // Called by PluginListener, so messages from the untrusted side of |
143 // the IPC proxy can be handled. | 144 // the IPC proxy can be handled. |
144 bool OnUntrustedMessageForwarded(const IPC::Message& msg); | 145 bool OnUntrustedMessageForwarded(const IPC::Message& msg); |
145 | 146 |
146 GURL manifest_url_; | 147 GURL manifest_url_; |
| 148 ppapi::PpapiPermissions permissions_; |
147 | 149 |
148 #if defined(OS_WIN) | 150 #if defined(OS_WIN) |
149 // This field becomes true when the broker successfully launched | 151 // This field becomes true when the broker successfully launched |
150 // the NaCl loader. | 152 // the NaCl loader. |
151 bool process_launched_by_broker_; | 153 bool process_launched_by_broker_; |
152 #elif defined(OS_LINUX) | 154 #elif defined(OS_LINUX) |
153 bool wait_for_nacl_gdb_; | 155 bool wait_for_nacl_gdb_; |
154 MessageLoopForIO::FileDescriptorWatcher nacl_gdb_watcher_; | 156 MessageLoopForIO::FileDescriptorWatcher nacl_gdb_watcher_; |
155 | 157 |
156 class NaClGdbWatchDelegate; | 158 class NaClGdbWatchDelegate; |
(...skipping 32 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
189 | 191 |
190 // Channel proxy to terminate the NaCl-Browser PPAPI channel. | 192 // Channel proxy to terminate the NaCl-Browser PPAPI channel. |
191 scoped_ptr<IPC::ChannelProxy> ipc_proxy_channel_; | 193 scoped_ptr<IPC::ChannelProxy> ipc_proxy_channel_; |
192 // Plugin listener, to forward browser channel messages to us. | 194 // Plugin listener, to forward browser channel messages to us. |
193 PluginListener ipc_plugin_listener_; | 195 PluginListener ipc_plugin_listener_; |
194 | 196 |
195 DISALLOW_COPY_AND_ASSIGN(NaClProcessHost); | 197 DISALLOW_COPY_AND_ASSIGN(NaClProcessHost); |
196 }; | 198 }; |
197 | 199 |
198 #endif // CHROME_BROWSER_NACL_HOST_NACL_PROCESS_HOST_H_ | 200 #endif // CHROME_BROWSER_NACL_HOST_NACL_PROCESS_HOST_H_ |
OLD | NEW |