1717#include " cuttlefish/common/libs/transport/channel_sharedfd.h"
1818
1919#include < poll.h>
20+ #include < stddef.h>
21+ #include < sys/types.h>
2022
23+ #include < utility>
2124#include < vector>
2225
2326#include " absl/log/log.h"
2427
2528#include " cuttlefish/common/libs/fs/shared_buf.h"
29+ #include " cuttlefish/common/libs/fs/shared_fd.h"
30+ #include " cuttlefish/common/libs/transport/channel.h"
31+ #include " cuttlefish/result/expect.h"
32+ #include " cuttlefish/result/result_type.h"
2633
27- namespace cuttlefish {
28- namespace transport {
34+ namespace cuttlefish ::transport {
2935
3036SharedFdChannel::SharedFdChannel (SharedFD input, SharedFD output)
3137 : input_(std::move(input)), output_(std::move(output)) {}
3238
3339Result<void > SharedFdChannel::SendRequest (RawMessage& message) {
34- return SendMessage (message, false );
40+ CF_EXPECT (SendMessage (message, false ));
41+ return {};
3542}
3643
3744Result<void > SharedFdChannel::SendResponse (RawMessage& message) {
38- return SendMessage (message, true );
45+ CF_EXPECT (SendMessage (message, true ));
46+ return {};
3947}
4048
4149Result<ManagedMessage> SharedFdChannel::ReceiveMessage () {
4250 struct RawMessage message_header;
43- auto read = ReadExactBinary (input_, &message_header);
51+ ssize_t read = ReadExactBinary (input_, &message_header);
4452 CF_EXPECT (read == sizeof (RawMessage),
4553 " Expected " << sizeof (RawMessage) << " , received " << read << " \n "
4654 << " Could not read message: " << input_->StrError ());
4755 VLOG (0 ) << " Received message with id: " << message_header.command ;
4856
49- auto message = CF_EXPECT (CreateMessage (message_header. command ,
50- message_header.is_response ,
51- message_header.payload_size ));
52- auto message_bytes = reinterpret_cast <char *>(message->payload );
57+ ManagedMessage message = CF_EXPECT (
58+ CreateMessage (message_header. command , message_header.is_response ,
59+ message_header.payload_size ));
60+ char * message_bytes = reinterpret_cast <char *>(message->payload );
5361 read = ReadExact (input_, message_bytes, message->payload_size );
5462 CF_EXPECT (read == message->payload_size ,
5563 " Could not read message: " << input_->StrError ());
@@ -59,25 +67,24 @@ Result<ManagedMessage> SharedFdChannel::ReceiveMessage() {
5967
6068Result<int > SharedFdChannel::WaitForMessage () {
6169 std::vector<PollSharedFd> input_poll = {
62- {.fd = input_, .events = POLLIN },
70+ {.fd = input_, .events = POLLIN }, // NOLINT(misc-include-cleaner): poll.h
6371 };
6472 const int poll_result = SharedFD::Poll (input_poll, -1 );
6573
66- CF_EXPECT (poll_result >= 0 ,
67- " Cannot execute poll on input stream to wait for incoming message" );
74+ CF_EXPECT_GE (poll_result, 0 ,
75+ " Cannot poll on input stream to wait for incoming message" );
6876
6977 return poll_result;
7078}
7179
7280Result<void > SharedFdChannel::SendMessage (RawMessage& message, bool response) {
7381 message.is_response = response;
74- auto write_size = sizeof (RawMessage) + message.payload_size ;
75- auto message_bytes = reinterpret_cast <const char *>(&message);
76- auto written = WriteAll (output_, message_bytes, write_size);
77- CF_EXPECT (written == write_size,
78- " Could not write message: " << output_->StrError ());
82+ const size_t write_size = sizeof (RawMessage) + message.payload_size ;
83+ const char * message_bytes = reinterpret_cast <const char *>(&message);
84+ const size_t written = WriteAll (output_, message_bytes, write_size);
85+ CF_EXPECT_EQ (written, write_size,
86+ " Could not write message: " << output_->StrError ());
7987 return {};
8088}
8189
82- } // namespace transport
83- } // namespace cuttlefish
90+ } // namespace cuttlefish::transport
0 commit comments