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 "base/basictypes.h" | 10 #include "base/basictypes.h" |
(...skipping 523 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
534 return false; | 534 return false; |
535 | 535 |
536 // Now add any descriptors we found to rewritten_msg. |handles| is usually | 536 // Now add any descriptors we found to rewritten_msg. |handles| is usually |
537 // empty, unless we read a message containing a FD or handle. | 537 // empty, unless we read a message containing a FD or handle. |
538 for (Handles::const_iterator iter = handles.begin(); | 538 for (Handles::const_iterator iter = handles.begin(); |
539 iter != handles.end(); | 539 iter != handles.end(); |
540 ++iter) { | 540 ++iter) { |
541 scoped_ptr<NaClDescWrapper> nacl_desc; | 541 scoped_ptr<NaClDescWrapper> nacl_desc; |
542 switch (iter->type()) { | 542 switch (iter->type()) { |
543 case ppapi::proxy::SerializedHandle::SHARED_MEMORY: { | 543 case ppapi::proxy::SerializedHandle::SHARED_MEMORY: { |
544 const base::SharedMemoryHandle& shm_handle = iter->shmem(); | 544 const base::SharedMemoryHandle& shm_handle = iter->shmem(); |
Mark Seaborn
2015/11/20 18:55:54
For readability, how about splitting out this conv
erikchen
2015/11/20 21:51:12
Done.
| |
545 uint32_t size = iter->size(); | 545 uint32_t size = iter->size(); |
546 #if defined(OS_MACOSX) && !defined(OS_IOS) | |
Mark Seaborn
2015/11/20 18:55:54
This file shouldn't be getting compiled for iOS.
erikchen
2015/11/20 21:51:12
Done.
| |
547 switch (shm_handle.GetType()) { | |
548 case base::SharedMemoryHandle::MACH: | |
549 nacl_desc.reset(new NaClDescWrapper(NaClDescImcShmMachMake( | |
550 shm_handle.GetMemoryObject(), | |
551 static_cast<size_t>(size)))); | |
552 break; | |
553 case base::SharedMemoryHandle::POSIX: | |
554 nacl_desc.reset(new NaClDescWrapper(NaClDescImcShmMake( | |
Mark Seaborn
2015/11/20 18:55:54
This is the same as the code in the #else, so you
erikchen
2015/11/20 21:51:12
Done.
| |
555 base::SharedMemory::GetFdFromSharedMemoryHandle(shm_handle), | |
556 static_cast<size_t>(size)))); | |
557 break; | |
558 } | |
559 #else | |
546 nacl_desc.reset(new NaClDescWrapper(NaClDescImcShmMake( | 560 nacl_desc.reset(new NaClDescWrapper(NaClDescImcShmMake( |
547 #if defined(OS_WIN) | 561 #if defined(OS_WIN) |
548 shm_handle.GetHandle(), | 562 shm_handle.GetHandle(), |
549 #else | 563 #else |
550 base::SharedMemory::GetFdFromSharedMemoryHandle(shm_handle), | 564 base::SharedMemory::GetFdFromSharedMemoryHandle(shm_handle), |
551 #endif | 565 #endif // defined(OS_WIN) |
552 static_cast<size_t>(size)))); | 566 static_cast<size_t>(size)))); |
567 #endif // defined(OS_MACOSX) && !defined(OS_IOS) | |
553 break; | 568 break; |
554 } | 569 } |
555 case ppapi::proxy::SerializedHandle::SOCKET: { | 570 case ppapi::proxy::SerializedHandle::SOCKET: { |
556 nacl_desc.reset(new NaClDescWrapper(NaClDescSyncSocketMake( | 571 nacl_desc.reset(new NaClDescWrapper(NaClDescSyncSocketMake( |
557 #if defined(OS_WIN) | 572 #if defined(OS_WIN) |
558 iter->descriptor() | 573 iter->descriptor() |
559 #else | 574 #else |
560 iter->descriptor().fd | 575 iter->descriptor().fd |
561 #endif | 576 #endif |
562 ))); | 577 ))); |
(...skipping 264 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
827 header.flags = msg.flags(); | 842 header.flags = msg.flags(); |
828 header.num_fds = static_cast<uint16>(rewritten_msg->desc_count()); | 843 header.num_fds = static_cast<uint16>(rewritten_msg->desc_count()); |
829 | 844 |
830 rewritten_msg->SetData(header, msg.payload(), msg.payload_size()); | 845 rewritten_msg->SetData(header, msg.payload(), msg.payload_size()); |
831 locked_data_.to_be_received_.push(rewritten_msg); | 846 locked_data_.to_be_received_.push(rewritten_msg); |
832 } | 847 } |
833 | 848 |
834 int TranslatePepperFileReadWriteOpenFlagsForTesting(int32_t pp_open_flags) { | 849 int TranslatePepperFileReadWriteOpenFlagsForTesting(int32_t pp_open_flags) { |
835 return TranslatePepperFileReadWriteOpenFlags(pp_open_flags); | 850 return TranslatePepperFileReadWriteOpenFlags(pp_open_flags); |
836 } | 851 } |
OLD | NEW |