OLD | NEW |
1 // Copyright (c) 2012 The Chromium Authors. All rights reserved. | 1 // Copyright (c) 2012 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 CONTENT_COMMON_CHILD_PROCESS_HOST_IMPL_H_ | 5 #ifndef CONTENT_COMMON_CHILD_PROCESS_HOST_IMPL_H_ |
6 #define CONTENT_COMMON_CHILD_PROCESS_HOST_IMPL_H_ | 6 #define CONTENT_COMMON_CHILD_PROCESS_HOST_IMPL_H_ |
7 | 7 |
8 #include <stddef.h> | 8 #include <stddef.h> |
9 #include <stdint.h> | 9 #include <stdint.h> |
10 | 10 |
(...skipping 39 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
50 // Derives a tracing process id from a child process id. Child process ids | 50 // Derives a tracing process id from a child process id. Child process ids |
51 // cannot be used directly in child process for tracing due to security | 51 // cannot be used directly in child process for tracing due to security |
52 // reasons (see: discussion in crrev.com/1173263004). This method is meant to | 52 // reasons (see: discussion in crrev.com/1173263004). This method is meant to |
53 // be used when tracing for identifying cross-process shared memory from a | 53 // be used when tracing for identifying cross-process shared memory from a |
54 // process which knows the child process id of its endpoints. The value | 54 // process which knows the child process id of its endpoints. The value |
55 // returned by this method is guaranteed to be equal to the value returned by | 55 // returned by this method is guaranteed to be equal to the value returned by |
56 // MemoryDumpManager::GetTracingProcessId() in the corresponding child | 56 // MemoryDumpManager::GetTracingProcessId() in the corresponding child |
57 // process. | 57 // process. |
58 // | 58 // |
59 // Never returns MemoryDumpManager::kInvalidTracingProcessId. | 59 // Never returns MemoryDumpManager::kInvalidTracingProcessId. |
60 // Returns only ChildProcessHost::kBrowserTracingProcessId in single-process | 60 // Returns only memory_instrumentation::mojom::kServiceTracingProcessId in |
61 // mode. | 61 // single-process mode. |
62 static uint64_t ChildProcessUniqueIdToTracingProcessId(int child_process_id); | 62 static uint64_t ChildProcessUniqueIdToTracingProcessId(int child_process_id); |
63 | 63 |
64 // ChildProcessHost implementation | 64 // ChildProcessHost implementation |
65 bool Send(IPC::Message* message) override; | 65 bool Send(IPC::Message* message) override; |
66 void ForceShutdown() override; | 66 void ForceShutdown() override; |
67 std::string CreateChannelMojo( | 67 std::string CreateChannelMojo( |
68 mojo::edk::PendingProcessConnection* connection) override; | 68 mojo::edk::PendingProcessConnection* connection) override; |
69 void CreateChannelMojo() override; | 69 void CreateChannelMojo() override; |
70 bool IsChannelOpening() override; | 70 bool IsChannelOpening() override; |
71 void AddFilter(IPC::MessageFilter* filter) override; | 71 void AddFilter(IPC::MessageFilter* filter) override; |
(...skipping 27 matching lines...) Expand all Loading... |
99 // thread, we don't have a IPC::ChannelProxy and so we manage filters | 99 // thread, we don't have a IPC::ChannelProxy and so we manage filters |
100 // manually. | 100 // manually. |
101 std::vector<scoped_refptr<IPC::MessageFilter> > filters_; | 101 std::vector<scoped_refptr<IPC::MessageFilter> > filters_; |
102 | 102 |
103 DISALLOW_COPY_AND_ASSIGN(ChildProcessHostImpl); | 103 DISALLOW_COPY_AND_ASSIGN(ChildProcessHostImpl); |
104 }; | 104 }; |
105 | 105 |
106 } // namespace content | 106 } // namespace content |
107 | 107 |
108 #endif // CONTENT_COMMON_CHILD_PROCESS_HOST_IMPL_H_ | 108 #endif // CONTENT_COMMON_CHILD_PROCESS_HOST_IMPL_H_ |
OLD | NEW |