OLD | NEW |
1 /* | 1 /* |
2 * Copyright (c) 2012 The Native Client Authors. All rights reserved. | 2 * Copyright (c) 2012 The Native Client Authors. All rights reserved. |
3 * Use of this source code is governed by a BSD-style license that can be | 3 * Use of this source code is governed by a BSD-style license that can be |
4 * found in the LICENSE file. | 4 * found in the LICENSE file. |
5 */ | 5 */ |
6 | 6 |
7 /* | 7 /* |
8 * NaCl Simple/secure ELF loader (NaCl SEL). | 8 * NaCl Simple/secure ELF loader (NaCl SEL). |
9 * | 9 * |
10 * This loader can only process NaCl object files as produced using | 10 * This loader can only process NaCl object files as produced using |
(...skipping 16 matching lines...) Expand all Loading... |
27 | 27 |
28 #ifndef NATIVE_CLIENT_SRC_TRUSTED_SERVICE_RUNTIME_SEL_LDR_H_ | 28 #ifndef NATIVE_CLIENT_SRC_TRUSTED_SERVICE_RUNTIME_SEL_LDR_H_ |
29 #define NATIVE_CLIENT_SRC_TRUSTED_SERVICE_RUNTIME_SEL_LDR_H_ 1 | 29 #define NATIVE_CLIENT_SRC_TRUSTED_SERVICE_RUNTIME_SEL_LDR_H_ 1 |
30 | 30 |
31 #include "native_client/src/include/atomic_ops.h" | 31 #include "native_client/src/include/atomic_ops.h" |
32 #include "native_client/src/include/build_config.h" | 32 #include "native_client/src/include/build_config.h" |
33 #include "native_client/src/include/nacl_base.h" | 33 #include "native_client/src/include/nacl_base.h" |
34 #include "native_client/src/include/portability.h" | 34 #include "native_client/src/include/portability.h" |
35 #include "native_client/src/include/elf.h" | 35 #include "native_client/src/include/elf.h" |
36 | 36 |
| 37 #include "native_client/src/public/imc_types.h" |
37 #include "native_client/src/public/nacl_app.h" | 38 #include "native_client/src/public/nacl_app.h" |
38 | 39 |
39 #include "native_client/src/shared/platform/nacl_host_desc.h" | 40 #include "native_client/src/shared/platform/nacl_host_desc.h" |
40 #include "native_client/src/shared/platform/nacl_log.h" | 41 #include "native_client/src/shared/platform/nacl_log.h" |
41 #include "native_client/src/shared/platform/nacl_threads.h" | 42 #include "native_client/src/shared/platform/nacl_threads.h" |
42 | 43 |
43 #include "native_client/src/shared/srpc/nacl_srpc.h" | 44 #include "native_client/src/shared/srpc/nacl_srpc.h" |
44 | 45 |
45 #include "native_client/src/trusted/interval_multiset/nacl_interval_multiset.h" | 46 #include "native_client/src/trusted/interval_multiset/nacl_interval_multiset.h" |
46 #include "native_client/src/trusted/interval_multiset/nacl_interval_range_tree.h
" | 47 #include "native_client/src/trusted/interval_multiset/nacl_interval_range_tree.h
" |
47 | 48 |
48 #include "native_client/src/trusted/service_runtime/dyn_array.h" | 49 #include "native_client/src/trusted/service_runtime/dyn_array.h" |
49 #include "native_client/src/trusted/service_runtime/nacl_error_code.h" | 50 #include "native_client/src/trusted/service_runtime/nacl_error_code.h" |
50 #include "native_client/src/trusted/service_runtime/nacl_kernel_service.h" | 51 #include "native_client/src/trusted/service_runtime/nacl_kernel_service.h" |
51 #include "native_client/src/trusted/service_runtime/nacl_resource.h" | 52 #include "native_client/src/trusted/service_runtime/nacl_resource.h" |
52 #include "native_client/src/trusted/service_runtime/nacl_secure_service.h" | 53 #include "native_client/src/trusted/service_runtime/nacl_secure_service.h" |
53 #include "native_client/src/trusted/service_runtime/name_service/name_service.h" | |
54 #include "native_client/src/trusted/service_runtime/sel_addrspace.h" | 54 #include "native_client/src/trusted/service_runtime/sel_addrspace.h" |
55 #include "native_client/src/trusted/service_runtime/sel_mem.h" | 55 #include "native_client/src/trusted/service_runtime/sel_mem.h" |
56 #include "native_client/src/trusted/service_runtime/sel_rt.h" | 56 #include "native_client/src/trusted/service_runtime/sel_rt.h" |
57 #include "native_client/src/trusted/service_runtime/sel_util.h" | 57 #include "native_client/src/trusted/service_runtime/sel_util.h" |
58 #include "native_client/src/trusted/service_runtime/sys_futex.h" | 58 #include "native_client/src/trusted/service_runtime/sys_futex.h" |
59 | 59 |
60 #include "native_client/src/trusted/validator/ncvalidate.h" | 60 #include "native_client/src/trusted/validator/ncvalidate.h" |
61 | 61 |
62 EXTERN_C_BEGIN | 62 EXTERN_C_BEGIN |
63 | 63 |
(...skipping 174 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
238 int vm_hole_may_exist; | 238 int vm_hole_may_exist; |
239 int threads_launching; | 239 int threads_launching; |
240 #endif | 240 #endif |
241 | 241 |
242 /* | 242 /* |
243 * An array of NaCl syscall handlers. The length of the array must be | 243 * An array of NaCl syscall handlers. The length of the array must be |
244 * at least NACL_MAX_SYSCALLS. | 244 * at least NACL_MAX_SYSCALLS. |
245 */ | 245 */ |
246 struct NaClSyscallTableEntry *syscall_table; | 246 struct NaClSyscallTableEntry *syscall_table; |
247 | 247 |
248 /* | |
249 * Name service must launch after mu, cv, vm_hole_may_exit, | |
250 * threads_launching are initialized. | |
251 */ | |
252 struct NaClNameService *name_service; /* default name server */ | |
253 struct NaClDesc *name_service_conn_cap; | |
254 | |
255 struct NaClSecureService *secure_service; | 248 struct NaClSecureService *secure_service; |
256 | 249 |
257 struct NaClKernelService *kernel_service; | 250 struct NaClKernelService *kernel_service; |
258 | 251 |
259 struct NaClResourceNaClApp resources; | 252 struct NaClResourceNaClApp resources; |
260 enum NaClResourcePhase resource_phase; | 253 enum NaClResourcePhase resource_phase; |
261 | 254 |
262 struct NaClRuntimeHostInterface *runtime_host_interface; | 255 struct NaClRuntimeHostInterface *runtime_host_interface; |
263 struct NaClDescQuotaInterface *desc_quota_interface; | 256 struct NaClDescQuotaInterface *desc_quota_interface; |
264 | 257 |
(...skipping 604 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
869 #else | 862 #else |
870 static INLINE void NaClHandleBootstrapArgs(int *argc_p, char ***argv_p) { | 863 static INLINE void NaClHandleBootstrapArgs(int *argc_p, char ***argv_p) { |
871 UNREFERENCED_PARAMETER(argc_p); | 864 UNREFERENCED_PARAMETER(argc_p); |
872 UNREFERENCED_PARAMETER(argv_p); | 865 UNREFERENCED_PARAMETER(argv_p); |
873 } | 866 } |
874 #endif | 867 #endif |
875 | 868 |
876 EXTERN_C_END | 869 EXTERN_C_END |
877 | 870 |
878 #endif /* NATIVE_CLIENT_SRC_TRUSTED_SERVICE_RUNTIME_SEL_LDR_H_ */ | 871 #endif /* NATIVE_CLIENT_SRC_TRUSTED_SERVICE_RUNTIME_SEL_LDR_H_ */ |
OLD | NEW |