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

Side by Side Diff: ppapi/api/private/ppb_nacl_private.idl

Issue 177113009: Support non-SFI mode in NaCl manifest file. (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Created 6 years, 9 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 /* This file contains NaCl private interfaces. This interface is not versioned 6 /* This file contains NaCl private interfaces. This interface is not versioned
7 * and is for internal Chrome use. It may change without notice. */ 7 * and is for internal Chrome use. It may change without notice. */
8 8
9 label Chrome { 9 label Chrome {
10 M25 = 1.0 10 M25 = 1.0
(...skipping 108 matching lines...) Expand 10 before | Expand all | Expand 10 after
119 interface PPB_NaCl_Private { 119 interface PPB_NaCl_Private {
120 /* Launches NaCl's sel_ldr process. Returns PP_EXTERNAL_PLUGIN_OK on success 120 /* Launches NaCl's sel_ldr process. Returns PP_EXTERNAL_PLUGIN_OK on success
121 * and writes a NaClHandle to imc_handle. Returns PP_EXTERNAL_PLUGIN_FAILED on 121 * and writes a NaClHandle to imc_handle. Returns PP_EXTERNAL_PLUGIN_FAILED on
122 * failure. The |enable_ppapi_dev| parameter controls whether GetInterface 122 * failure. The |enable_ppapi_dev| parameter controls whether GetInterface
123 * returns 'Dev' interfaces to the NaCl plugin. The |uses_ppapi| flag 123 * returns 'Dev' interfaces to the NaCl plugin. The |uses_ppapi| flag
124 * indicates that the nexe run by sel_ldr will use the PPAPI APIs. 124 * indicates that the nexe run by sel_ldr will use the PPAPI APIs.
125 * This implies that LaunchSelLdr is run from the main thread. If a nexe 125 * This implies that LaunchSelLdr is run from the main thread. If a nexe
126 * does not need PPAPI, then it can run off the main thread. 126 * does not need PPAPI, then it can run off the main thread.
127 * The |uses_irt| flag indicates whether the IRT should be loaded in this 127 * The |uses_irt| flag indicates whether the IRT should be loaded in this
128 * NaCl process. This is true for ABI stable nexes. 128 * NaCl process. This is true for ABI stable nexes.
129 * The |uses_nonsfi_mode| flag indicates whether or not nonsfi-mode should
130 * be used with the binary pointed by the url.
129 * The |enable_dyncode_syscalls| flag indicates whether or not the nexe 131 * The |enable_dyncode_syscalls| flag indicates whether or not the nexe
130 * will be able to use dynamic code system calls (e.g., mmap with PROT_EXEC). 132 * will be able to use dynamic code system calls (e.g., mmap with PROT_EXEC).
131 * The |enable_exception_handling| flag indicates whether or not the nexe 133 * The |enable_exception_handling| flag indicates whether or not the nexe
132 * will be able to use hardware exception handling. 134 * will be able to use hardware exception handling.
133 * The |enable_crash_throttling| flag indicates whether or not crashes of 135 * The |enable_crash_throttling| flag indicates whether or not crashes of
134 * the nexe contribute to crash throttling statisics and whether nexe starts 136 * the nexe contribute to crash throttling statisics and whether nexe starts
135 * are throttled by crash throttling. 137 * are throttled by crash throttling.
136 */ 138 */
137 void LaunchSelLdr([in] PP_Instance instance, 139 void LaunchSelLdr([in] PP_Instance instance,
138 [in] str_t alleged_url, 140 [in] str_t alleged_url,
139 [in] PP_Bool uses_irt, 141 [in] PP_Bool uses_irt,
140 [in] PP_Bool uses_ppapi, 142 [in] PP_Bool uses_ppapi,
143 [in] PP_Bool uses_nonsfi_mode,
141 [in] PP_Bool enable_ppapi_dev, 144 [in] PP_Bool enable_ppapi_dev,
142 [in] PP_Bool enable_dyncode_syscalls, 145 [in] PP_Bool enable_dyncode_syscalls,
143 [in] PP_Bool enable_exception_handling, 146 [in] PP_Bool enable_exception_handling,
144 [in] PP_Bool enable_crash_throttling, 147 [in] PP_Bool enable_crash_throttling,
145 [out] mem_t imc_handle, 148 [out] mem_t imc_handle,
146 [out] PP_Var error_message, 149 [out] PP_Var error_message,
147 [in] PP_CompletionCallback callback); 150 [in] PP_CompletionCallback callback);
148 151
149 /* This function starts the IPC proxy so the nexe can communicate with the 152 /* This function starts the IPC proxy so the nexe can communicate with the
150 * browser. Returns PP_EXTERNAL_PLUGIN_OK on success, otherwise a result code 153 * browser. Returns PP_EXTERNAL_PLUGIN_OK on success, otherwise a result code
(...skipping 35 matching lines...) Expand 10 before | Expand all | Expand 10 after
186 189
187 /* This creates a temporary file that will be deleted by the time 190 /* This creates a temporary file that will be deleted by the time
188 * the last handle is closed (or earlier on POSIX systems), and 191 * the last handle is closed (or earlier on POSIX systems), and
189 * returns a posix handle to that temporary file. 192 * returns a posix handle to that temporary file.
190 */ 193 */
191 PP_FileHandle CreateTemporaryFile([in] PP_Instance instance); 194 PP_FileHandle CreateTemporaryFile([in] PP_Instance instance);
192 195
193 /* Return the number of processors in the system as reported by the OS */ 196 /* Return the number of processors in the system as reported by the OS */
194 int32_t GetNumberOfProcessors(); 197 int32_t GetNumberOfProcessors();
195 198
199 /* Return whether the non-SFI mode is enabled. */
200 PP_Bool IsNonSFIEnabled();
Mark Seaborn 2014/03/05 17:44:32 Could you name this "IsNonSFIModeEnabled" for cons
hidehiko 2014/03/06 05:31:11 Done.
201
196 /* Create a temporary file, which will be deleted by the time the 202 /* Create a temporary file, which will be deleted by the time the
197 * last handle is closed (or earlier on POSIX systems), to use for 203 * last handle is closed (or earlier on POSIX systems), to use for
198 * the nexe with the cache information given by |pexe_url|, 204 * the nexe with the cache information given by |pexe_url|,
199 * |abi_version|, |opt_level|, |last_modified|, |etag|, and 205 * |abi_version|, |opt_level|, |last_modified|, |etag|, and
200 * |has_no_store_header|. If the nexe is already present in the 206 * |has_no_store_header|. If the nexe is already present in the
201 * cache, |is_hit| is set to PP_TRUE and the contents of the nexe 207 * cache, |is_hit| is set to PP_TRUE and the contents of the nexe
202 * will be copied into the temporary file. Otherwise |is_hit| is set 208 * will be copied into the temporary file. Otherwise |is_hit| is set
203 * to PP_FALSE and the temporary file will be writeable. Currently 209 * to PP_FALSE and the temporary file will be writeable. Currently
204 * the implementation is a stub, which always sets is_hit to false 210 * the implementation is a stub, which always sets is_hit to false
205 * and calls the implementation of CreateTemporaryFile. In a 211 * and calls the implementation of CreateTemporaryFile. In a
(...skipping 54 matching lines...) Expand 10 before | Expand all | Expand 10 after
260 [in] PP_Var value); 266 [in] PP_Var value);
261 267
262 /* Report an error that occured while attempting to load a nexe. */ 268 /* Report an error that occured while attempting to load a nexe. */
263 void ReportLoadError([in] PP_Instance instance, 269 void ReportLoadError([in] PP_Instance instance,
264 [in] PP_NaClError error, 270 [in] PP_NaClError error,
265 [in] PP_Bool is_installed); 271 [in] PP_Bool is_installed);
266 272
267 /* Performs internal cleanup when an instance is destroyed. */ 273 /* Performs internal cleanup when an instance is destroyed. */
268 void InstanceDestroyed([in] PP_Instance instance); 274 void InstanceDestroyed([in] PP_Instance instance);
269 }; 275 };
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698