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 Wed Jun 18 19:15:01 2014. */ | 6 /* From private/ppb_nacl_private.idl modified Mon Jun 23 12:23:23 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 206 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
223 */ | 223 */ |
224 /* PPB_NaCl_Private */ | 224 /* PPB_NaCl_Private */ |
225 struct PPB_NaCl_Private_1_0 { | 225 struct PPB_NaCl_Private_1_0 { |
226 /* Launches NaCl's sel_ldr process. Returns PP_EXTERNAL_PLUGIN_OK on success | 226 /* Launches NaCl's sel_ldr process. Returns PP_EXTERNAL_PLUGIN_OK on success |
227 * and writes a NaClHandle to imc_handle. Returns PP_EXTERNAL_PLUGIN_FAILED on | 227 * and writes a NaClHandle to imc_handle. Returns PP_EXTERNAL_PLUGIN_FAILED on |
228 * failure. The |enable_ppapi_dev| parameter controls whether GetInterface | 228 * failure. The |enable_ppapi_dev| parameter controls whether GetInterface |
229 * returns 'Dev' interfaces to the NaCl plugin. The |uses_ppapi| flag | 229 * returns 'Dev' interfaces to the NaCl plugin. The |uses_ppapi| flag |
230 * indicates that the nexe run by sel_ldr will use the PPAPI APIs. | 230 * indicates that the nexe run by sel_ldr will use the PPAPI APIs. |
231 * This implies that LaunchSelLdr is run from the main thread. If a nexe | 231 * This implies that LaunchSelLdr is run from the main thread. If a nexe |
232 * does not need PPAPI, then it can run off the main thread. | 232 * does not need PPAPI, then it can run off the main thread. |
| 233 * The |nexe_file_info| is currently used only in non-SFI mode. It is the |
| 234 * file handle for the main nexe file, which should be initially loaded. |
| 235 * LaunchSelLdr takes the ownership of the file handle. |
233 * The |uses_irt| flag indicates whether the IRT should be loaded in this | 236 * The |uses_irt| flag indicates whether the IRT should be loaded in this |
234 * NaCl process. This is true for ABI stable nexes. | 237 * NaCl process. This is true for ABI stable nexes. |
235 * The |uses_nonsfi_mode| flag indicates whether or not nonsfi-mode should | 238 * The |uses_nonsfi_mode| flag indicates whether or not nonsfi-mode should |
236 * be used with the binary pointed by the url. | 239 * be used with the binary pointed by the url. |
237 * The |enable_dyncode_syscalls| flag indicates whether or not the nexe | 240 * The |enable_dyncode_syscalls| flag indicates whether or not the nexe |
238 * will be able to use dynamic code system calls (e.g., mmap with PROT_EXEC). | 241 * will be able to use dynamic code system calls (e.g., mmap with PROT_EXEC). |
239 * The |enable_exception_handling| flag indicates whether or not the nexe | 242 * The |enable_exception_handling| flag indicates whether or not the nexe |
240 * will be able to use hardware exception handling. | 243 * will be able to use hardware exception handling. |
241 * The |enable_crash_throttling| flag indicates whether or not crashes of | 244 * The |enable_crash_throttling| flag indicates whether or not crashes of |
242 * the nexe contribute to crash throttling statisics and whether nexe starts | 245 * the nexe contribute to crash throttling statisics and whether nexe starts |
243 * are throttled by crash throttling. | 246 * are throttled by crash throttling. |
244 */ | 247 */ |
245 void (*LaunchSelLdr)( | 248 void (*LaunchSelLdr)( |
246 PP_Instance instance, | 249 PP_Instance instance, |
247 PP_Bool main_service_runtime, | 250 PP_Bool main_service_runtime, |
248 const char* alleged_url, | 251 const char* alleged_url, |
| 252 const struct PP_NaClFileInfo* nexe_file_info, |
249 PP_Bool uses_irt, | 253 PP_Bool uses_irt, |
250 PP_Bool uses_ppapi, | 254 PP_Bool uses_ppapi, |
251 PP_Bool uses_nonsfi_mode, | 255 PP_Bool uses_nonsfi_mode, |
252 PP_Bool enable_ppapi_dev, | 256 PP_Bool enable_ppapi_dev, |
253 PP_Bool enable_dyncode_syscalls, | 257 PP_Bool enable_dyncode_syscalls, |
254 PP_Bool enable_exception_handling, | 258 PP_Bool enable_exception_handling, |
255 PP_Bool enable_crash_throttling, | 259 PP_Bool enable_crash_throttling, |
256 const struct PPP_ManifestService_1_0* manifest_service_interface, | 260 const struct PPP_ManifestService_1_0* manifest_service_interface, |
257 void* manifest_service_user_data, | 261 void* manifest_service_user_data, |
258 void* imc_handle, | 262 void* imc_handle, |
(...skipping 185 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
444 void (*LogTranslateTime)(const char* histogram_name, int64_t time_us); | 448 void (*LogTranslateTime)(const char* histogram_name, int64_t time_us); |
445 }; | 449 }; |
446 | 450 |
447 typedef struct PPB_NaCl_Private_1_0 PPB_NaCl_Private; | 451 typedef struct PPB_NaCl_Private_1_0 PPB_NaCl_Private; |
448 /** | 452 /** |
449 * @} | 453 * @} |
450 */ | 454 */ |
451 | 455 |
452 #endif /* PPAPI_C_PRIVATE_PPB_NACL_PRIVATE_H_ */ | 456 #endif /* PPAPI_C_PRIVATE_PPB_NACL_PRIVATE_H_ */ |
453 | 457 |
OLD | NEW |