1 // Copyright 2013 The Chromium Authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file.
5 #include "components/nacl/common/nacl_types.h"
6 #include "ipc/ipc_platform_file.h"
10 NaClStartParams::NaClStartParams()
11 : nexe_file(IPC::InvalidPlatformFileForTransit()),
12 validation_cache_enabled(false),
13 enable_debug_stub(false),
14 enable_ipc_proxy(false),
16 process_type(kUnknownNaClProcessType
),
17 crash_info_shmem_handle(base::SharedMemory::NULLHandle()) {
20 NaClStartParams::~NaClStartParams() {
23 NaClResourceFileInfo::NaClResourceFileInfo()
24 : file(IPC::InvalidPlatformFileForTransit()) {
27 NaClResourceFileInfo::NaClResourceFileInfo(
28 IPC::PlatformFileForTransit file
,
29 const base::FilePath
& file_path_metadata
,
30 const std::string
& file_key
)
31 : file(file
), file_path_metadata(file_path_metadata
), file_key(file_key
) {
34 NaClResourceFileInfo::~NaClResourceFileInfo() {
37 NaClLaunchParams::NaClLaunchParams()
38 : nexe_file(IPC::InvalidPlatformFileForTransit()),
43 process_type(kUnknownNaClProcessType
) {
46 NaClLaunchParams::NaClLaunchParams(
47 const std::string
& manifest_url
,
48 const IPC::PlatformFileForTransit
& nexe_file
,
49 uint64_t nexe_token_lo
,
50 uint64_t nexe_token_hi
,
52 std::pair
<std::string
, std::string
> >& resource_files_to_prefetch
,
54 uint32 permission_bits
,
55 bool uses_nonsfi_mode
,
56 NaClAppProcessType process_type
)
57 : manifest_url(manifest_url
),
59 nexe_token_lo(nexe_token_lo
),
60 nexe_token_hi(nexe_token_hi
),
61 resource_files_to_prefetch(resource_files_to_prefetch
),
62 render_view_id(render_view_id
),
63 permission_bits(permission_bits
),
64 uses_nonsfi_mode(uses_nonsfi_mode
),
65 process_type(process_type
) {
68 NaClLaunchParams::~NaClLaunchParams() {
71 NaClLaunchResult::NaClLaunchResult()
72 : imc_channel_handle(IPC::InvalidPlatformFileForTransit()),
73 ppapi_ipc_channel_handle(),
74 trusted_ipc_channel_handle(),
75 plugin_pid(base::kNullProcessId
),
77 crash_info_shmem_handle(base::SharedMemory::NULLHandle()) {
80 NaClLaunchResult::NaClLaunchResult(
81 FileDescriptor imc_channel_handle
,
82 const IPC::ChannelHandle
& ppapi_ipc_channel_handle
,
83 const IPC::ChannelHandle
& trusted_ipc_channel_handle
,
84 const IPC::ChannelHandle
& manifest_service_ipc_channel_handle
,
85 base::ProcessId plugin_pid
,
87 base::SharedMemoryHandle crash_info_shmem_handle
)
88 : imc_channel_handle(imc_channel_handle
),
89 ppapi_ipc_channel_handle(ppapi_ipc_channel_handle
),
90 trusted_ipc_channel_handle(trusted_ipc_channel_handle
),
91 manifest_service_ipc_channel_handle(manifest_service_ipc_channel_handle
),
92 plugin_pid(plugin_pid
),
93 plugin_child_id(plugin_child_id
),
94 crash_info_shmem_handle(crash_info_shmem_handle
) {
97 NaClLaunchResult::~NaClLaunchResult() {