OLD | NEW |
1 // Copyright 2013 The Chromium Authors. All rights reserved. | 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 | 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_NACL_NACL_LISTENER_H_ | 5 #ifndef CHROME_NACL_NACL_LISTENER_H_ |
6 #define CHROME_NACL_NACL_LISTENER_H_ | 6 #define CHROME_NACL_NACL_LISTENER_H_ |
7 | 7 |
8 #include <vector> | 8 #include <vector> |
9 | 9 |
10 #include "base/memory/scoped_ptr.h" | 10 #include "base/memory/scoped_ptr.h" |
(...skipping 30 matching lines...) Expand all Loading... |
41 } | 41 } |
42 #endif | 42 #endif |
43 #if defined(OS_POSIX) | 43 #if defined(OS_POSIX) |
44 void set_number_of_cores(int number_of_cores) { | 44 void set_number_of_cores(int number_of_cores) { |
45 number_of_cores_ = number_of_cores; | 45 number_of_cores_ = number_of_cores; |
46 } | 46 } |
47 #endif | 47 #endif |
48 | 48 |
49 void* crash_info_shmem_memory() const { return crash_info_shmem_->memory(); } | 49 void* crash_info_shmem_memory() const { return crash_info_shmem_->memory(); } |
50 | 50 |
| 51 typedef base::Callback<void(IPC::PlatformFileForTransit, base::FilePath)> |
| 52 ResolveFileTokenCallback; |
| 53 void ResolveFileToken(uint64_t token_lo, |
| 54 uint64_t token_hi, |
| 55 ResolveFileTokenCallback cb); |
| 56 void OnFileTokenResolved(uint64_t token_lo, |
| 57 uint64_t token_hi, |
| 58 IPC::PlatformFileForTransit ipc_fd, |
| 59 base::FilePath file_path); |
| 60 |
51 private: | 61 private: |
52 virtual bool OnMessageReceived(const IPC::Message& msg) OVERRIDE; | 62 virtual bool OnMessageReceived(const IPC::Message& msg) OVERRIDE; |
53 | 63 |
54 void OnStart(const nacl::NaClStartParams& params); | 64 void OnStart(const nacl::NaClStartParams& params); |
55 | 65 |
56 // A channel back to the browser. | 66 // A channel back to the browser. |
57 scoped_ptr<IPC::SyncChannel> channel_; | 67 scoped_ptr<IPC::SyncChannel> channel_; |
58 | 68 |
59 // A filter that allows other threads to use the channel. | 69 // A filter that allows other threads to use the channel. |
60 scoped_refptr<IPC::SyncMessageFilter> filter_; | 70 scoped_refptr<IPC::SyncMessageFilter> filter_; |
(...skipping 10 matching lines...) Expand all Loading... |
71 // problems with invoking GetSystemInfo. Therefore, only in | 81 // problems with invoking GetSystemInfo. Therefore, only in |
72 // OS_POSIX do we need to supply the number of cores into the | 82 // OS_POSIX do we need to supply the number of cores into the |
73 // NaClChromeMainArgs object. | 83 // NaClChromeMainArgs object. |
74 int number_of_cores_; | 84 int number_of_cores_; |
75 #endif | 85 #endif |
76 | 86 |
77 scoped_ptr<base::SharedMemory> crash_info_shmem_; | 87 scoped_ptr<base::SharedMemory> crash_info_shmem_; |
78 | 88 |
79 scoped_refptr<NaClTrustedListener> trusted_listener_; | 89 scoped_refptr<NaClTrustedListener> trusted_listener_; |
80 | 90 |
| 91 ResolveFileTokenCallback resolved_cb_; |
| 92 |
81 // Used to identify what thread we're on. | 93 // Used to identify what thread we're on. |
82 base::MessageLoop* main_loop_; | 94 base::MessageLoop* main_loop_; |
83 | 95 |
84 DISALLOW_COPY_AND_ASSIGN(NaClListener); | 96 DISALLOW_COPY_AND_ASSIGN(NaClListener); |
85 }; | 97 }; |
86 | 98 |
87 #endif // CHROME_NACL_NACL_LISTENER_H_ | 99 #endif // CHROME_NACL_NACL_LISTENER_H_ |
OLD | NEW |