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 NaClLaunchParams::NaClLaunchParams()
24 : nexe_file(IPC::InvalidPlatformFileForTransit()),
29 process_type(kUnknownNaClProcessType
) {
32 NaClLaunchParams::NaClLaunchParams(
33 const std::string
& manifest_url
,
34 const IPC::PlatformFileForTransit
& nexe_file
,
35 uint64_t nexe_token_lo
,
36 uint64_t nexe_token_hi
,
38 uint32 permission_bits
,
39 bool uses_nonsfi_mode
,
40 NaClAppProcessType process_type
)
41 : manifest_url(manifest_url
),
43 nexe_token_lo(nexe_token_lo
),
44 nexe_token_hi(nexe_token_hi
),
45 render_view_id(render_view_id
),
46 permission_bits(permission_bits
),
47 uses_nonsfi_mode(uses_nonsfi_mode
),
48 process_type(process_type
) {
51 NaClLaunchParams::~NaClLaunchParams() {
54 NaClLaunchResult::NaClLaunchResult()
55 : imc_channel_handle(IPC::InvalidPlatformFileForTransit()),
56 ppapi_ipc_channel_handle(),
57 trusted_ipc_channel_handle(),
58 plugin_pid(base::kNullProcessId
),
60 crash_info_shmem_handle(base::SharedMemory::NULLHandle()) {
63 NaClLaunchResult::NaClLaunchResult(
64 FileDescriptor imc_channel_handle
,
65 const IPC::ChannelHandle
& ppapi_ipc_channel_handle
,
66 const IPC::ChannelHandle
& trusted_ipc_channel_handle
,
67 const IPC::ChannelHandle
& manifest_service_ipc_channel_handle
,
68 base::ProcessId plugin_pid
,
70 base::SharedMemoryHandle crash_info_shmem_handle
)
71 : imc_channel_handle(imc_channel_handle
),
72 ppapi_ipc_channel_handle(ppapi_ipc_channel_handle
),
73 trusted_ipc_channel_handle(trusted_ipc_channel_handle
),
74 manifest_service_ipc_channel_handle(manifest_service_ipc_channel_handle
),
75 plugin_pid(plugin_pid
),
76 plugin_child_id(plugin_child_id
),
77 crash_info_shmem_handle(crash_info_shmem_handle
) {
80 NaClLaunchResult::~NaClLaunchResult() {