diff options
author | Josh Gao <jmgao@google.com> | 2019-01-09 17:01:49 -0800 |
---|---|---|
committer | Josh Gao <jmgao@google.com> | 2019-02-13 13:21:54 -0800 |
commit | 5f87bbdb0afebac6ad46a849e94460dbd0c41014 (patch) | |
tree | 76a7aa549d99ab2ce50106c3064b2c5dd858f470 /debuggerd/debuggerd_test.cpp | |
parent | 14f9500a35390e2e0252ccc1c03c9c850444e2b6 (diff) |
debuggerd: switch to base::{Send,Receive}FileDescriptors.
Bug: http://b/12204763
Test: debuggerd_test
Change-Id: I0be40916214de51ab36fd6bd6d44090a84312e51
Diffstat (limited to 'debuggerd/debuggerd_test.cpp')
-rw-r--r-- | debuggerd/debuggerd_test.cpp | 9 |
1 files changed, 7 insertions, 2 deletions
diff --git a/debuggerd/debuggerd_test.cpp b/debuggerd/debuggerd_test.cpp index bea8b43ca..64df53e9e 100644 --- a/debuggerd/debuggerd_test.cpp +++ b/debuggerd/debuggerd_test.cpp @@ -32,6 +32,7 @@ #include <android/fdsan.h> #include <android/set_abort_message.h> +#include <android-base/cmsg.h> #include <android-base/file.h> #include <android-base/logging.h> #include <android-base/macros.h> @@ -53,6 +54,8 @@ #include "util.h" using namespace std::chrono_literals; + +using android::base::SendFileDescriptors; using android::base::unique_fd; #if defined(__LP64__) @@ -123,12 +126,14 @@ static void tombstoned_intercept(pid_t target_pid, unique_fd* intercept_fd, uniq ASSERT_GE(pipe_buffer_size, 1024 * 1024); - if (send_fd(intercept_fd->get(), &req, sizeof(req), std::move(output_pipe_write)) != sizeof(req)) { + ssize_t rc = SendFileDescriptors(intercept_fd->get(), &req, sizeof(req), output_pipe_write.get()); + output_pipe_write.reset(); + if (rc != sizeof(req)) { FAIL() << "failed to send output fd to tombstoned: " << strerror(errno); } InterceptResponse response; - ssize_t rc = TEMP_FAILURE_RETRY(read(intercept_fd->get(), &response, sizeof(response))); + rc = TEMP_FAILURE_RETRY(read(intercept_fd->get(), &response, sizeof(response))); if (rc == -1) { FAIL() << "failed to read response from tombstoned: " << strerror(errno); } else if (rc == 0) { |