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

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

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 /* From private/ppb_nacl_private.idl modified Tue Feb 25 09:18:09 2014. */ 6 /* From private/ppb_nacl_private.idl modified Thu Feb 27 12:40:56 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 133 matching lines...) Expand 10 before | Expand all | Expand 10 after
150 * does not need PPAPI, then it can run off the main thread. 150 * does not need PPAPI, then it can run off the main thread.
151 * The |uses_irt| flag indicates whether the IRT should be loaded in this 151 * The |uses_irt| flag indicates whether the IRT should be loaded in this
152 * NaCl process. This is true for ABI stable nexes. 152 * NaCl process. This is true for ABI stable nexes.
153 * The |enable_dyncode_syscalls| flag indicates whether or not the nexe 153 * The |enable_dyncode_syscalls| flag indicates whether or not the nexe
154 * will be able to use dynamic code system calls (e.g., mmap with PROT_EXEC). 154 * will be able to use dynamic code system calls (e.g., mmap with PROT_EXEC).
155 * The |enable_exception_handling| flag indicates whether or not the nexe 155 * The |enable_exception_handling| flag indicates whether or not the nexe
156 * will be able to use hardware exception handling. 156 * will be able to use hardware exception handling.
157 * The |enable_crash_throttling| flag indicates whether or not crashes of 157 * The |enable_crash_throttling| flag indicates whether or not crashes of
158 * the nexe contribute to crash throttling statisics and whether nexe starts 158 * the nexe contribute to crash throttling statisics and whether nexe starts
159 * are throttled by crash throttling. 159 * are throttled by crash throttling.
160 * The |enable_nonsfi| flag indicates whether or not nonsfi-mode is enabled
161 * on this plugin.
160 */ 162 */
161 void (*LaunchSelLdr)(PP_Instance instance, 163 void (*LaunchSelLdr)(PP_Instance instance,
162 const char* alleged_url, 164 const char* alleged_url,
163 PP_Bool uses_irt, 165 PP_Bool uses_irt,
164 PP_Bool uses_ppapi, 166 PP_Bool uses_ppapi,
165 PP_Bool enable_ppapi_dev, 167 PP_Bool enable_ppapi_dev,
166 PP_Bool enable_dyncode_syscalls, 168 PP_Bool enable_dyncode_syscalls,
167 PP_Bool enable_exception_handling, 169 PP_Bool enable_exception_handling,
168 PP_Bool enable_crash_throttling, 170 PP_Bool enable_crash_throttling,
171 PP_Bool enable_nonsfi,
169 void* imc_handle, 172 void* imc_handle,
170 struct PP_Var* error_message, 173 struct PP_Var* error_message,
171 struct PP_CompletionCallback callback); 174 struct PP_CompletionCallback callback);
172 /* This function starts the IPC proxy so the nexe can communicate with the 175 /* This function starts the IPC proxy so the nexe can communicate with the
173 * browser. Returns PP_EXTERNAL_PLUGIN_OK on success, otherwise a result code 176 * browser. Returns PP_EXTERNAL_PLUGIN_OK on success, otherwise a result code
174 * indicating the failure. PP_EXTERNAL_PLUGIN_FAILED is returned if 177 * indicating the failure. PP_EXTERNAL_PLUGIN_FAILED is returned if
175 * LaunchSelLdr wasn't called with the instance. 178 * LaunchSelLdr wasn't called with the instance.
176 * PP_EXTERNAL_PLUGIN_ERROR_MODULE is returned if the module can't be 179 * PP_EXTERNAL_PLUGIN_ERROR_MODULE is returned if the module can't be
177 * initialized. PP_EXTERNAL_PLUGIN_ERROR_INSTANCE is returned if the instance 180 * initialized. PP_EXTERNAL_PLUGIN_ERROR_INSTANCE is returned if the instance
178 * can't be initialized. 181 * can't be initialized.
(...skipping 23 matching lines...) Expand all
202 * component directory, or an invalid handle on failure. 205 * component directory, or an invalid handle on failure.
203 */ 206 */
204 PP_FileHandle (*GetReadonlyPnaclFd)(const char* filename); 207 PP_FileHandle (*GetReadonlyPnaclFd)(const char* filename);
205 /* This creates a temporary file that will be deleted by the time 208 /* This creates a temporary file that will be deleted by the time
206 * the last handle is closed (or earlier on POSIX systems), and 209 * the last handle is closed (or earlier on POSIX systems), and
207 * returns a posix handle to that temporary file. 210 * returns a posix handle to that temporary file.
208 */ 211 */
209 PP_FileHandle (*CreateTemporaryFile)(PP_Instance instance); 212 PP_FileHandle (*CreateTemporaryFile)(PP_Instance instance);
210 /* Return the number of processors in the system as reported by the OS */ 213 /* Return the number of processors in the system as reported by the OS */
211 int32_t (*GetNumberOfProcessors)(void); 214 int32_t (*GetNumberOfProcessors)(void);
215 /* Return the true if the non-SFI mode is enabled. */
216 PP_Bool (*IsNonSFIEnabled)(void);
212 /* Create a temporary file, which will be deleted by the time the 217 /* Create a temporary file, which will be deleted by the time the
213 * last handle is closed (or earlier on POSIX systems), to use for 218 * last handle is closed (or earlier on POSIX systems), to use for
214 * the nexe with the cache information given by |pexe_url|, 219 * the nexe with the cache information given by |pexe_url|,
215 * |abi_version|, |opt_level|, |last_modified|, |etag|, and 220 * |abi_version|, |opt_level|, |last_modified|, |etag|, and
216 * |has_no_store_header|. If the nexe is already present in the 221 * |has_no_store_header|. If the nexe is already present in the
217 * cache, |is_hit| is set to PP_TRUE and the contents of the nexe 222 * cache, |is_hit| is set to PP_TRUE and the contents of the nexe
218 * will be copied into the temporary file. Otherwise |is_hit| is set 223 * will be copied into the temporary file. Otherwise |is_hit| is set
219 * to PP_FALSE and the temporary file will be writeable. Currently 224 * to PP_FALSE and the temporary file will be writeable. Currently
220 * the implementation is a stub, which always sets is_hit to false 225 * the implementation is a stub, which always sets is_hit to false
221 * and calls the implementation of CreateTemporaryFile. In a 226 * and calls the implementation of CreateTemporaryFile. In a
(...skipping 54 matching lines...) Expand 10 before | Expand all | Expand 10 after
276 void (*InstanceDestroyed)(PP_Instance instance); 281 void (*InstanceDestroyed)(PP_Instance instance);
277 }; 282 };
278 283
279 typedef struct PPB_NaCl_Private_1_0 PPB_NaCl_Private; 284 typedef struct PPB_NaCl_Private_1_0 PPB_NaCl_Private;
280 /** 285 /**
281 * @} 286 * @}
282 */ 287 */
283 288
284 #endif /* PPAPI_C_PRIVATE_PPB_NACL_PRIVATE_H_ */ 289 #endif /* PPAPI_C_PRIVATE_PPB_NACL_PRIVATE_H_ */
285 290
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698