summaryrefslogtreecommitdiffstats
path: root/chrome/common/nacl_messages_internal.h
blob: e302118de2136f29c181e0b910219a78d24e7ab5 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
// Copyright (c) 2009 The Chromium Authors. All rights reserved.
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.

#include "base/process.h"
#include "chrome/common/nacl_types.h"
#include "ipc/ipc_message_macros.h"

//-----------------------------------------------------------------------------
// NaClProcess messages
// These are messages sent from the browser to the NaCl process.
IPC_BEGIN_MESSAGES(NaClProcess)
  // Tells the NaCl process to start.
  IPC_MESSAGE_CONTROL1(NaClProcessMsg_Start,
                       std::vector<nacl::FileDescriptor> /* sockets */)

  // Tells the NaCl broker to launch a NaCl loader process.
  IPC_MESSAGE_CONTROL1(NaClProcessMsg_LaunchLoaderThroughBroker,
                       std::wstring /* channel ID for the loader */)

  // Notify the browser process that the loader was launched successfully.
  IPC_MESSAGE_CONTROL2(NaClProcessMsg_LoaderLaunched,
                       std::wstring,  /* channel ID for the loader */
                       base::ProcessHandle /* loader process handle */)

  // Notify the broker that all loader processes have been terminated and it
  // should shutdown.
  IPC_MESSAGE_CONTROL0(NaClProcessMsg_StopBroker)
IPC_END_MESSAGES(NaClProcess)