| 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 #include "build/build_config.h" | 5 #include "build/build_config.h" |
| 6 | 6 |
| 7 #if defined(OS_POSIX) | 7 #if defined(OS_POSIX) |
| 8 #if defined(OS_MACOSX) | 8 #if defined(OS_MACOSX) |
| 9 extern "C" { | 9 extern "C" { |
| 10 #include <sandbox.h> | 10 #include <sandbox.h> |
| (...skipping 29 matching lines...) Expand all Loading... |
| 40 | 40 |
| 41 #if defined(OS_POSIX) | 41 #if defined(OS_POSIX) |
| 42 static_assert(kNumFDsToSend == | 42 static_assert(kNumFDsToSend == |
| 43 IPC::MessageAttachmentSet::kMaxDescriptorsPerMessage, | 43 IPC::MessageAttachmentSet::kMaxDescriptorsPerMessage, |
| 44 "The number of FDs to send must be kMaxDescriptorsPerMessage."); | 44 "The number of FDs to send must be kMaxDescriptorsPerMessage."); |
| 45 #endif | 45 #endif |
| 46 | 46 |
| 47 class MyChannelDescriptorListenerBase : public IPC::Listener { | 47 class MyChannelDescriptorListenerBase : public IPC::Listener { |
| 48 public: | 48 public: |
| 49 bool OnMessageReceived(const IPC::Message& message) override { | 49 bool OnMessageReceived(const IPC::Message& message) override { |
| 50 PickleIterator iter(message); | 50 base::PickleIterator iter(message); |
| 51 base::FileDescriptor descriptor; | 51 base::FileDescriptor descriptor; |
| 52 while (IPC::ParamTraits<base::FileDescriptor>::Read( | 52 while (IPC::ParamTraits<base::FileDescriptor>::Read( |
| 53 &message, &iter, &descriptor)) { | 53 &message, &iter, &descriptor)) { |
| 54 HandleFD(descriptor.fd); | 54 HandleFD(descriptor.fd); |
| 55 } | 55 } |
| 56 return true; | 56 return true; |
| 57 } | 57 } |
| 58 | 58 |
| 59 protected: | 59 protected: |
| 60 virtual void HandleFD(int fd) = 0; | 60 virtual void HandleFD(int fd) = 0; |
| (...skipping 312 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 373 base::WaitableEvent received_; | 373 base::WaitableEvent received_; |
| 374 }; | 374 }; |
| 375 | 375 |
| 376 TEST_F(IPCMultiSendingFdsTest, StressTest) { | 376 TEST_F(IPCMultiSendingFdsTest, StressTest) { |
| 377 Run(); | 377 Run(); |
| 378 } | 378 } |
| 379 | 379 |
| 380 } // namespace | 380 } // namespace |
| 381 | 381 |
| 382 #endif // defined(OS_POSIX) | 382 #endif // defined(OS_POSIX) |
| OLD | NEW |