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 #include "components/nacl/loader/nacl_ipc_adapter.h" | 5 #include "components/nacl/loader/nacl_ipc_adapter.h" |
6 | 6 |
7 #include <limits.h> | 7 #include <limits.h> |
8 #include <string.h> | 8 #include <string.h> |
9 | 9 |
10 #include <memory> | 10 #include <memory> |
(...skipping 216 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
227 | 227 |
228 private: | 228 private: |
229 NaClDesc* desc_; | 229 NaClDesc* desc_; |
230 DISALLOW_COPY_AND_ASSIGN(NaClDescWrapper); | 230 DISALLOW_COPY_AND_ASSIGN(NaClDescWrapper); |
231 }; | 231 }; |
232 | 232 |
233 std::unique_ptr<NaClDescWrapper> MakeShmNaClDesc( | 233 std::unique_ptr<NaClDescWrapper> MakeShmNaClDesc( |
234 const base::SharedMemoryHandle& handle, | 234 const base::SharedMemoryHandle& handle, |
235 size_t size) { | 235 size_t size) { |
236 #if defined(OS_MACOSX) | 236 #if defined(OS_MACOSX) |
237 return std::unique_ptr<NaClDescWrapper>(new NaClDescWrapper( | 237 if (handle.GetType() == base::SharedMemoryHandle::MACH) { |
238 NaClDescImcShmMachMake(handle.GetMemoryObject(), size))); | 238 return std::unique_ptr<NaClDescWrapper>(new NaClDescWrapper( |
| 239 NaClDescImcShmMachMake(handle.GetMemoryObject(), size))); |
| 240 } else { |
| 241 CHECK_EQ(base::SharedMemoryHandle::POSIX, handle.GetType()); |
| 242 return nullptr; |
| 243 } |
239 #else | 244 #else |
240 return std::unique_ptr<NaClDescWrapper>( | 245 return std::unique_ptr<NaClDescWrapper>( |
241 new NaClDescWrapper(NaClDescImcShmMake( | 246 new NaClDescWrapper(NaClDescImcShmMake( |
242 #if defined(OS_WIN) | 247 #if defined(OS_WIN) |
243 handle.GetHandle(), | 248 handle.GetHandle(), |
244 #else | 249 #else |
245 base::SharedMemory::GetFdFromSharedMemoryHandle(handle), | 250 base::SharedMemory::GetFdFromSharedMemoryHandle(handle), |
246 #endif | 251 #endif |
247 size))); | 252 size))); |
248 #endif | 253 #endif |
(...skipping 592 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
841 header.flags = msg.flags(); | 846 header.flags = msg.flags(); |
842 header.num_fds = static_cast<uint16_t>(rewritten_msg->desc_count()); | 847 header.num_fds = static_cast<uint16_t>(rewritten_msg->desc_count()); |
843 | 848 |
844 rewritten_msg->SetData(header, msg.payload(), msg.payload_size()); | 849 rewritten_msg->SetData(header, msg.payload(), msg.payload_size()); |
845 locked_data_.to_be_received_.push(rewritten_msg); | 850 locked_data_.to_be_received_.push(rewritten_msg); |
846 } | 851 } |
847 | 852 |
848 int TranslatePepperFileReadWriteOpenFlagsForTesting(int32_t pp_open_flags) { | 853 int TranslatePepperFileReadWriteOpenFlagsForTesting(int32_t pp_open_flags) { |
849 return TranslatePepperFileReadWriteOpenFlags(pp_open_flags); | 854 return TranslatePepperFileReadWriteOpenFlags(pp_open_flags); |
850 } | 855 } |
OLD | NEW |