MCPcopy Create free account
hub / github.com/alibaba/PhotonLibOS / read_data_frame

Method read_data_frame

ecosystem/oss.cpp:1039–1050  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

1037 }
1038
1039 ssize_t read_data_frame(const Frame& frame, const struct iovec* iov,
1040 int iovcnt) {
1041 ssize_t ret = response_->readv(iov, iovcnt);
1042 if (ret < 0 || static_cast<size_t>(ret) != frame.payload_size) {
1043 LOG_ERROR("Data frame mismatch: expected `, got `", frame.payload_size,
1044 ret);
1045 return ret < 0 ? ret : -1;
1046 }
1047 if (!skip_bytes(frame.tail_size))
1048 LOG_ERROR_RETURN(EIO, -1, "Failed to skip data frame tail");
1049 return ret;
1050 }
1051
1052 bool skip_frame(const Frame& frame) {
1053 return skip_bytes(frame.payload_size + frame.tail_size);

Callers 1

read_dataMethod · 0.80

Calls 1

readvMethod · 0.45

Tested by

no test coverage detected