OLD | NEW |
1 /* -*- c++ -*- */ | 1 /* -*- c++ -*- */ |
2 /* | 2 /* |
3 * Copyright (c) 2012 The Chromium Authors. All rights reserved. | 3 * Copyright (c) 2012 The Chromium Authors. All rights reserved. |
4 * Use of this source code is governed by a BSD-style license that can be | 4 * Use of this source code is governed by a BSD-style license that can be |
5 * found in the LICENSE file. | 5 * found in the LICENSE file. |
6 */ | 6 */ |
7 | 7 |
8 // A class containing information regarding a socket connection to a | 8 // A class containing information regarding a socket connection to a |
9 // service runtime instance. | 9 // service runtime instance. |
10 | 10 |
(...skipping 212 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
223 // To establish quota callbacks the pnacl coordinator needs to communicate | 223 // To establish quota callbacks the pnacl coordinator needs to communicate |
224 // with the reverse interface. | 224 // with the reverse interface. |
225 PluginReverseInterface* rev_interface() const { return rev_interface_; } | 225 PluginReverseInterface* rev_interface() const { return rev_interface_; } |
226 | 226 |
227 private: | 227 private: |
228 NACL_DISALLOW_COPY_AND_ASSIGN(ServiceRuntime); | 228 NACL_DISALLOW_COPY_AND_ASSIGN(ServiceRuntime); |
229 bool SetupCommandChannel(ErrorInfo* error_info); | 229 bool SetupCommandChannel(ErrorInfo* error_info); |
230 bool LoadModule(nacl::DescWrapper* shm, ErrorInfo* error_info); | 230 bool LoadModule(nacl::DescWrapper* shm, ErrorInfo* error_info); |
231 bool InitReverseService(ErrorInfo* error_info); | 231 bool InitReverseService(ErrorInfo* error_info); |
232 bool StartModule(ErrorInfo* error_info); | 232 bool StartModule(ErrorInfo* error_info); |
233 void StartSelLdrContinuation(int32_t pp_error, | |
234 pp::CompletionCallback callback); | |
235 | 233 |
236 NaClSrpcChannel command_channel_; | 234 NaClSrpcChannel command_channel_; |
237 Plugin* plugin_; | 235 Plugin* plugin_; |
238 bool main_service_runtime_; | 236 bool main_service_runtime_; |
239 bool uses_nonsfi_mode_; | 237 bool uses_nonsfi_mode_; |
240 nacl::ReverseService* reverse_service_; | 238 nacl::ReverseService* reverse_service_; |
241 nacl::scoped_ptr<nacl::SelLdrLauncherBase> subprocess_; | 239 nacl::scoped_ptr<nacl::SelLdrLauncherBase> subprocess_; |
242 | 240 |
243 nacl::WeakRefAnchor* anchor_; | 241 nacl::WeakRefAnchor* anchor_; |
244 | 242 |
245 PluginReverseInterface* rev_interface_; | 243 PluginReverseInterface* rev_interface_; |
246 | 244 |
247 // Mutex to protect exit_status_. | 245 // Mutex to protect exit_status_. |
248 // Also, in conjunction with cond_ it is used to signal when | 246 // Also, in conjunction with cond_ it is used to signal when |
249 // StartSelLdr is complete with either success or error. | 247 // StartSelLdr is complete with either success or error. |
250 NaClMutex mu_; | 248 NaClMutex mu_; |
251 NaClCondVar cond_; | 249 NaClCondVar cond_; |
252 int exit_status_; | 250 int exit_status_; |
253 bool start_sel_ldr_done_; | 251 bool start_sel_ldr_done_; |
254 | 252 |
255 PP_Var start_sel_ldr_error_message_; | |
256 pp::CompletionCallbackFactory<ServiceRuntime> callback_factory_; | 253 pp::CompletionCallbackFactory<ServiceRuntime> callback_factory_; |
257 }; | 254 }; |
258 | 255 |
259 } // namespace plugin | 256 } // namespace plugin |
260 | 257 |
261 #endif // NATIVE_CLIENT_SRC_TRUSTED_PLUGIN_SERVICE_RUNTIME_H_ | 258 #endif // NATIVE_CLIENT_SRC_TRUSTED_PLUGIN_SERVICE_RUNTIME_H_ |
OLD | NEW |