Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(420)

Side by Side Diff: ppapi/c/private/ppb_nacl_private.h

Issue 874603002: NaCl: Simplify the plumbing for PPAPI's DevInterfacesEnabled flag (Closed) Base URL: http://git.chromium.org/chromium/src.git@master
Patch Set: Rebase Created 5 years, 11 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
OLDNEW
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 Jan 23 07:36:29 2015. */ 6 /* From private/ppb_nacl_private.idl modified Fri Jan 23 09:09:44 2015. */
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 187 matching lines...) Expand 10 before | Expand all | Expand 10 after
204 */ 204 */
205 205
206 /** 206 /**
207 * @addtogroup Interfaces 207 * @addtogroup Interfaces
208 * @{ 208 * @{
209 */ 209 */
210 /* PPB_NaCl_Private */ 210 /* PPB_NaCl_Private */
211 struct PPB_NaCl_Private_1_0 { 211 struct PPB_NaCl_Private_1_0 {
212 /* Launches NaCl's sel_ldr process. Returns PP_EXTERNAL_PLUGIN_OK on success 212 /* Launches NaCl's sel_ldr process. Returns PP_EXTERNAL_PLUGIN_OK on success
213 * and writes a NaClHandle to imc_handle. Returns PP_EXTERNAL_PLUGIN_FAILED on 213 * and writes a NaClHandle to imc_handle. Returns PP_EXTERNAL_PLUGIN_FAILED on
214 * failure. The |enable_ppapi_dev| parameter controls whether GetInterface 214 * failure.
215 * returns 'Dev' interfaces to the NaCl plugin.
216 * The |nexe_file_info| is currently used only in non-SFI mode. It is the 215 * The |nexe_file_info| is currently used only in non-SFI mode. It is the
217 * file handle for the main nexe file, which should be initially loaded. 216 * file handle for the main nexe file, which should be initially loaded.
218 * LaunchSelLdr takes the ownership of the file handle. 217 * LaunchSelLdr takes the ownership of the file handle.
219 * The |uses_nonsfi_mode| flag indicates whether or not nonsfi-mode should 218 * The |uses_nonsfi_mode| flag indicates whether or not nonsfi-mode should
220 * be used with the binary pointed by the url. 219 * be used with the binary pointed by the url.
221 */ 220 */
222 void (*LaunchSelLdr)(PP_Instance instance, 221 void (*LaunchSelLdr)(PP_Instance instance,
223 PP_Bool main_service_runtime, 222 PP_Bool main_service_runtime,
224 const char* alleged_url, 223 const char* alleged_url,
225 const struct PP_NaClFileInfo* nexe_file_info, 224 const struct PP_NaClFileInfo* nexe_file_info,
226 PP_Bool uses_nonsfi_mode, 225 PP_Bool uses_nonsfi_mode,
227 PP_Bool enable_ppapi_dev,
228 PP_NaClAppProcessType process_type, 226 PP_NaClAppProcessType process_type,
229 void* imc_handle, 227 void* imc_handle,
230 struct PP_CompletionCallback callback); 228 struct PP_CompletionCallback callback);
231 /* On POSIX systems, this function returns the file descriptor of 229 /* On POSIX systems, this function returns the file descriptor of
232 * /dev/urandom. On non-POSIX systems, this function returns 0. 230 * /dev/urandom. On non-POSIX systems, this function returns 0.
233 */ 231 */
234 int32_t (*UrandomFD)(void); 232 int32_t (*UrandomFD)(void);
235 /* This is Windows-specific. This is a replacement for DuplicateHandle() for 233 /* This is Windows-specific. This is a replacement for DuplicateHandle() for
236 * use inside the Windows sandbox. Note that we provide this via dependency 234 * use inside the Windows sandbox. Note that we provide this via dependency
237 * injection only to avoid the linkage problems that occur because the NaCl 235 * injection only to avoid the linkage problems that occur because the NaCl
(...skipping 61 matching lines...) Expand 10 before | Expand all | Expand 10 after
299 const char* argv[]); 297 const char* argv[]);
300 /* Requests the NaCl manifest specified in the plugin arguments. */ 298 /* Requests the NaCl manifest specified in the plugin arguments. */
301 void (*RequestNaClManifest)(PP_Instance instance, 299 void (*RequestNaClManifest)(PP_Instance instance,
302 struct PP_CompletionCallback callback); 300 struct PP_CompletionCallback callback);
303 struct PP_Var (*GetManifestBaseURL)(PP_Instance instance); 301 struct PP_Var (*GetManifestBaseURL)(PP_Instance instance);
304 /* Processes the NaCl manifest once it's been retrieved. 302 /* Processes the NaCl manifest once it's been retrieved.
305 * TODO(teravest): Move the rest of the supporting logic out of the trusted 303 * TODO(teravest): Move the rest of the supporting logic out of the trusted
306 * plugin. 304 * plugin.
307 */ 305 */
308 void (*ProcessNaClManifest)(PP_Instance instance, const char* program_url); 306 void (*ProcessNaClManifest)(PP_Instance instance, const char* program_url);
309 PP_Bool (*DevInterfacesEnabled)(PP_Instance instance);
310 PP_Bool (*GetManifestProgramURL)(PP_Instance instance, 307 PP_Bool (*GetManifestProgramURL)(PP_Instance instance,
311 struct PP_Var* full_url, 308 struct PP_Var* full_url,
312 struct PP_PNaClOptions* pnacl_options, 309 struct PP_PNaClOptions* pnacl_options,
313 PP_Bool* uses_nonsfi_mode); 310 PP_Bool* uses_nonsfi_mode);
314 /* Returns the filenames for the llc and ld tools. */ 311 /* Returns the filenames for the llc and ld tools. */
315 PP_Bool (*GetPnaclResourceInfo)(PP_Instance instance, 312 PP_Bool (*GetPnaclResourceInfo)(PP_Instance instance,
316 struct PP_Var* llc_tool_name, 313 struct PP_Var* llc_tool_name,
317 struct PP_Var* ld_tool_name); 314 struct PP_Var* ld_tool_name);
318 /* PP_Var string of attributes describing the CPU features supported 315 /* PP_Var string of attributes describing the CPU features supported
319 * by the current architecture. The string is a comma-delimited list 316 * by the current architecture. The string is a comma-delimited list
(...skipping 39 matching lines...) Expand 10 before | Expand all | Expand 10 after
359 void* stream_handler_user_data); 356 void* stream_handler_user_data);
360 }; 357 };
361 358
362 typedef struct PPB_NaCl_Private_1_0 PPB_NaCl_Private; 359 typedef struct PPB_NaCl_Private_1_0 PPB_NaCl_Private;
363 /** 360 /**
364 * @} 361 * @}
365 */ 362 */
366 363
367 #endif /* PPAPI_C_PRIVATE_PPB_NACL_PRIVATE_H_ */ 364 #endif /* PPAPI_C_PRIVATE_PPB_NACL_PRIVATE_H_ */
368 365
OLDNEW
« no previous file with comments | « ppapi/api/private/ppb_nacl_private.idl ('k') | ppapi/native_client/src/trusted/plugin/service_runtime.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698