| 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 |