| 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 "ipc/unix_domain_socket_util.h" | 5 #include "ipc/unix_domain_socket_util.h" |
| 6 | 6 |
| 7 #include <stddef.h> | 7 #include <stddef.h> |
| 8 #include <sys/socket.h> | 8 #include <sys/socket.h> |
| 9 | 9 |
| 10 #include <memory> | 10 #include <memory> |
| (...skipping 54 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 65 base::MessageLoopForIO::current()->WatchFileDescriptor( | 65 base::MessageLoopForIO::current()->WatchFileDescriptor( |
| 66 fd, true, base::MessageLoopForIO::WATCH_READ, watcher_.get(), this); | 66 fd, true, base::MessageLoopForIO::WATCH_READ, watcher_.get(), this); |
| 67 started_watching_event_.Signal(); | 67 started_watching_event_.Signal(); |
| 68 } | 68 } |
| 69 void StopWatching(base::MessageLoopForIO::FileDescriptorWatcher* watcher) { | 69 void StopWatching(base::MessageLoopForIO::FileDescriptorWatcher* watcher) { |
| 70 watcher->StopWatchingFileDescriptor(); | 70 watcher->StopWatchingFileDescriptor(); |
| 71 delete watcher; | 71 delete watcher; |
| 72 } | 72 } |
| 73 void OnFileCanReadWithoutBlocking(int fd) override { | 73 void OnFileCanReadWithoutBlocking(int fd) override { |
| 74 ASSERT_EQ(-1, server_fd_); | 74 ASSERT_EQ(-1, server_fd_); |
| 75 IPC::ServerAcceptConnection(fd, &server_fd_); | 75 IPC::ServerOnConnect(fd, &server_fd_); |
| 76 watcher_->StopWatchingFileDescriptor(); | 76 watcher_->StopWatchingFileDescriptor(); |
| 77 accepted_event_.Signal(); | 77 accepted_event_.Signal(); |
| 78 } | 78 } |
| 79 void OnFileCanWriteWithoutBlocking(int fd) override {} | 79 void OnFileCanWriteWithoutBlocking(int fd) override {} |
| 80 | 80 |
| 81 int server_fd_; | 81 int server_fd_; |
| 82 base::SingleThreadTaskRunner* target_thread_; | 82 base::SingleThreadTaskRunner* target_thread_; |
| 83 std::unique_ptr<base::MessageLoopForIO::FileDescriptorWatcher> watcher_; | 83 std::unique_ptr<base::MessageLoopForIO::FileDescriptorWatcher> watcher_; |
| 84 base::WaitableEvent started_watching_event_; | 84 base::WaitableEvent started_watching_event_; |
| 85 base::WaitableEvent accepted_event_; | 85 base::WaitableEvent accepted_event_; |
| (...skipping 86 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 172 HANDLE_EINTR(send(connection.client_fd(), buffer, buf_len, 0)); | 172 HANDLE_EINTR(send(connection.client_fd(), buffer, buf_len, 0)); |
| 173 ASSERT_EQ(buf_len, sent_bytes); | 173 ASSERT_EQ(buf_len, sent_bytes); |
| 174 char recv_buf[sizeof(buffer)]; | 174 char recv_buf[sizeof(buffer)]; |
| 175 size_t received_bytes = | 175 size_t received_bytes = |
| 176 HANDLE_EINTR(recv(connection.server_fd(), recv_buf, buf_len, 0)); | 176 HANDLE_EINTR(recv(connection.server_fd(), recv_buf, buf_len, 0)); |
| 177 ASSERT_EQ(buf_len, received_bytes); | 177 ASSERT_EQ(buf_len, received_bytes); |
| 178 ASSERT_EQ(0, memcmp(recv_buf, buffer, buf_len)); | 178 ASSERT_EQ(0, memcmp(recv_buf, buffer, buf_len)); |
| 179 } | 179 } |
| 180 | 180 |
| 181 } // namespace | 181 } // namespace |
| OLD | NEW |