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

Side by Side Diff: chrome/browser/nacl_host/nacl_process_host.h

Issue 2832093: NaCl: Allow setting up multiple sockets for subprocess instead of just one (Closed) Base URL: git://codf21.jail/chromium.git
Patch Set: Whitespace fixes Created 10 years, 4 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) 2010 The Chromium Authors. All rights reserved. 1 // Copyright (c) 2010 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 #ifndef CHROME_BROWSER_NACL_HOST_NACL_PROCESS_HOST_H_ 5 #ifndef CHROME_BROWSER_NACL_HOST_NACL_PROCESS_HOST_H_
6 #define CHROME_BROWSER_NACL_HOST_NACL_PROCESS_HOST_H_ 6 #define CHROME_BROWSER_NACL_HOST_NACL_PROCESS_HOST_H_
7 #pragma once 7 #pragma once
8 8
9 #include "build/build_config.h" 9 #include "build/build_config.h"
10 10
(...skipping 11 matching lines...) Expand all
22 // After that, most of the communication is directly between NaCl plugin 22 // After that, most of the communication is directly between NaCl plugin
23 // running in the renderer and NaCl processes. 23 // running in the renderer and NaCl processes.
24 class NaClProcessHost : public BrowserChildProcessHost { 24 class NaClProcessHost : public BrowserChildProcessHost {
25 public: 25 public:
26 NaClProcessHost(ResourceDispatcherHost *resource_dispatcher_host, 26 NaClProcessHost(ResourceDispatcherHost *resource_dispatcher_host,
27 const std::wstring& url); 27 const std::wstring& url);
28 ~NaClProcessHost(); 28 ~NaClProcessHost();
29 29
30 // Initialize the new NaCl process, returning true on success. 30 // Initialize the new NaCl process, returning true on success.
31 bool Launch(ResourceMessageFilter* resource_message_filter, 31 bool Launch(ResourceMessageFilter* resource_message_filter,
32 const int descriptor, 32 int socket_count,
33 IPC::Message* reply_msg); 33 IPC::Message* reply_msg);
34 34
35 virtual void OnMessageReceived(const IPC::Message& msg); 35 virtual void OnMessageReceived(const IPC::Message& msg);
36 36
37 void OnProcessLaunchedByBroker(base::ProcessHandle handle); 37 void OnProcessLaunchedByBroker(base::ProcessHandle handle);
38 38
39 protected: 39 protected:
40 virtual bool DidChildCrash(); 40 virtual bool DidChildCrash();
41 virtual void OnChildDied(); 41 virtual void OnChildDied();
42 42
(...skipping 19 matching lines...) Expand all
62 private: 62 private:
63 ResourceDispatcherHost* resource_dispatcher_host_; 63 ResourceDispatcherHost* resource_dispatcher_host_;
64 64
65 // The ResourceMessageFilter that requested this NaCl process. We use this 65 // The ResourceMessageFilter that requested this NaCl process. We use this
66 // for sending the reply once the process has started. 66 // for sending the reply once the process has started.
67 scoped_refptr<ResourceMessageFilter> resource_message_filter_; 67 scoped_refptr<ResourceMessageFilter> resource_message_filter_;
68 68
69 // The reply message to send. 69 // The reply message to send.
70 IPC::Message* reply_msg_; 70 IPC::Message* reply_msg_;
71 71
72 // The socket pair for the NaCl process. 72 // Socket pairs for the NaCl process and renderer.
73 nacl::Handle pair_[2]; 73 std::vector<nacl::Handle> sockets_for_renderer_;
74 74 std::vector<nacl::Handle> sockets_for_sel_ldr_;
gregoryd 2010/07/29 23:46:09 socket_for_loader would be better, Chrome people d
75 // The NaCl specific descriptor for this process.
76 int descriptor_;
77 75
78 // Windows platform flag 76 // Windows platform flag
79 bool running_on_wow64_; 77 bool running_on_wow64_;
80 78
81 DISALLOW_COPY_AND_ASSIGN(NaClProcessHost); 79 DISALLOW_COPY_AND_ASSIGN(NaClProcessHost);
82 }; 80 };
83 81
84 #endif // CHROME_BROWSER_NACL_HOST_NACL_PROCESS_HOST_H_ 82 #endif // CHROME_BROWSER_NACL_HOST_NACL_PROCESS_HOST_H_
OLDNEW
« no previous file with comments | « no previous file | chrome/browser/nacl_host/nacl_process_host.cc » ('j') | chrome/common/nacl_messages_internal.h » ('J')

Powered by Google App Engine
This is Rietveld 408576698