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 | 5 |
6 /* From private/ppb_nacl_private.idl modified Fri Jun 13 15:14:51 2014. */ | 6 /* From private/ppb_nacl_private.idl modified Wed Jun 18 17:20:04 2014. */ |
7 | 7 |
8 #ifndef PPAPI_C_PRIVATE_PPB_NACL_PRIVATE_H_ | 8 #ifndef PPAPI_C_PRIVATE_PPB_NACL_PRIVATE_H_ |
9 #define PPAPI_C_PRIVATE_PPB_NACL_PRIVATE_H_ | 9 #define PPAPI_C_PRIVATE_PPB_NACL_PRIVATE_H_ |
10 | 10 |
11 #include "ppapi/c/pp_bool.h" | 11 #include "ppapi/c/pp_bool.h" |
12 #include "ppapi/c/pp_completion_callback.h" | 12 #include "ppapi/c/pp_completion_callback.h" |
13 #include "ppapi/c/pp_instance.h" | 13 #include "ppapi/c/pp_instance.h" |
14 #include "ppapi/c/pp_macros.h" | 14 #include "ppapi/c/pp_macros.h" |
15 #include "ppapi/c/pp_stdint.h" | 15 #include "ppapi/c/pp_stdint.h" |
16 #include "ppapi/c/pp_var.h" | 16 #include "ppapi/c/pp_var.h" |
(...skipping 213 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
230 */ | 230 */ |
231 /* PPB_NaCl_Private */ | 231 /* PPB_NaCl_Private */ |
232 struct PPB_NaCl_Private_1_0 { | 232 struct PPB_NaCl_Private_1_0 { |
233 /* Launches NaCl's sel_ldr process. Returns PP_EXTERNAL_PLUGIN_OK on success | 233 /* Launches NaCl's sel_ldr process. Returns PP_EXTERNAL_PLUGIN_OK on success |
234 * and writes a NaClHandle to imc_handle. Returns PP_EXTERNAL_PLUGIN_FAILED on | 234 * and writes a NaClHandle to imc_handle. Returns PP_EXTERNAL_PLUGIN_FAILED on |
235 * failure. The |enable_ppapi_dev| parameter controls whether GetInterface | 235 * failure. The |enable_ppapi_dev| parameter controls whether GetInterface |
236 * returns 'Dev' interfaces to the NaCl plugin. The |uses_ppapi| flag | 236 * returns 'Dev' interfaces to the NaCl plugin. The |uses_ppapi| flag |
237 * indicates that the nexe run by sel_ldr will use the PPAPI APIs. | 237 * indicates that the nexe run by sel_ldr will use the PPAPI APIs. |
238 * This implies that LaunchSelLdr is run from the main thread. If a nexe | 238 * This implies that LaunchSelLdr is run from the main thread. If a nexe |
239 * does not need PPAPI, then it can run off the main thread. | 239 * does not need PPAPI, then it can run off the main thread. |
| 240 * The |nexe_file_info| is currently used only in non-SFI mode. It is the |
| 241 * file handle for the main nexe file, which should be initially loaded. |
| 242 * LaunchSelLdr takes the ownership of the file handle. |
240 * The |uses_irt| flag indicates whether the IRT should be loaded in this | 243 * The |uses_irt| flag indicates whether the IRT should be loaded in this |
241 * NaCl process. This is true for ABI stable nexes. | 244 * NaCl process. This is true for ABI stable nexes. |
242 * The |uses_nonsfi_mode| flag indicates whether or not nonsfi-mode should | 245 * The |uses_nonsfi_mode| flag indicates whether or not nonsfi-mode should |
243 * be used with the binary pointed by the url. | 246 * be used with the binary pointed by the url. |
244 * The |enable_dyncode_syscalls| flag indicates whether or not the nexe | 247 * The |enable_dyncode_syscalls| flag indicates whether or not the nexe |
245 * will be able to use dynamic code system calls (e.g., mmap with PROT_EXEC). | 248 * will be able to use dynamic code system calls (e.g., mmap with PROT_EXEC). |
246 * The |enable_exception_handling| flag indicates whether or not the nexe | 249 * The |enable_exception_handling| flag indicates whether or not the nexe |
247 * will be able to use hardware exception handling. | 250 * will be able to use hardware exception handling. |
248 * The |enable_crash_throttling| flag indicates whether or not crashes of | 251 * The |enable_crash_throttling| flag indicates whether or not crashes of |
249 * the nexe contribute to crash throttling statisics and whether nexe starts | 252 * the nexe contribute to crash throttling statisics and whether nexe starts |
250 * are throttled by crash throttling. | 253 * are throttled by crash throttling. |
251 */ | 254 */ |
252 void (*LaunchSelLdr)( | 255 void (*LaunchSelLdr)( |
253 PP_Instance instance, | 256 PP_Instance instance, |
254 PP_Bool main_service_runtime, | 257 PP_Bool main_service_runtime, |
255 const char* alleged_url, | 258 const char* alleged_url, |
| 259 const struct PP_NaClFileInfo* nexe_file_info, |
256 PP_Bool uses_irt, | 260 PP_Bool uses_irt, |
257 PP_Bool uses_ppapi, | 261 PP_Bool uses_ppapi, |
258 PP_Bool uses_nonsfi_mode, | 262 PP_Bool uses_nonsfi_mode, |
259 PP_Bool enable_ppapi_dev, | 263 PP_Bool enable_ppapi_dev, |
260 PP_Bool enable_dyncode_syscalls, | 264 PP_Bool enable_dyncode_syscalls, |
261 PP_Bool enable_exception_handling, | 265 PP_Bool enable_exception_handling, |
262 PP_Bool enable_crash_throttling, | 266 PP_Bool enable_crash_throttling, |
263 const struct PPP_ManifestService_1_0* manifest_service_interface, | 267 const struct PPP_ManifestService_1_0* manifest_service_interface, |
264 void* manifest_service_user_data, | 268 void* manifest_service_user_data, |
265 void* imc_handle, | 269 void* imc_handle, |
(...skipping 185 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
451 void (*LogTranslateTime)(const char* histogram_name, int64_t time_us); | 455 void (*LogTranslateTime)(const char* histogram_name, int64_t time_us); |
452 }; | 456 }; |
453 | 457 |
454 typedef struct PPB_NaCl_Private_1_0 PPB_NaCl_Private; | 458 typedef struct PPB_NaCl_Private_1_0 PPB_NaCl_Private; |
455 /** | 459 /** |
456 * @} | 460 * @} |
457 */ | 461 */ |
458 | 462 |
459 #endif /* PPAPI_C_PRIVATE_PPB_NACL_PRIVATE_H_ */ | 463 #endif /* PPAPI_C_PRIVATE_PPB_NACL_PRIVATE_H_ */ |
460 | 464 |
OLD | NEW |