Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit c3964f68 authored by David Brazdil's avatar David Brazdil
Browse files

Fix return types of sendMessageOnSocket/receiveMessageFromSocket

recvmsg() and sendmsg() return ssize_t but the wrapper functions
returned int. Fix the return type.

Bug: 250685929
Test: atest rpcBinderTest
Change-Id: Ia3f7f58e286f24a8711aed97d9bc2b3cf6b78f0d
parent 77f3da77
Loading
Loading
Loading
Loading
+2 −2
Original line number Diff line number Diff line
@@ -67,7 +67,7 @@ std::unique_ptr<RpcTransportCtxFactory> makeDefaultRpcTransportCtxFactory() {
    return RpcTransportCtxFactoryRaw::make();
}

int sendMessageOnSocket(
ssize_t sendMessageOnSocket(
        const RpcTransportFd& socket, iovec* iovs, int niovs,
        const std::vector<std::variant<base::unique_fd, base::borrowed_fd>>* ancillaryFds) {
    if (ancillaryFds != nullptr && !ancillaryFds->empty()) {
@@ -112,7 +112,7 @@ int sendMessageOnSocket(
    return TEMP_FAILURE_RETRY(sendmsg(socket.fd.get(), &msg, MSG_NOSIGNAL));
}

int receiveMessageFromSocket(
ssize_t receiveMessageFromSocket(
        const RpcTransportFd& socket, iovec* iovs, int niovs,
        std::vector<std::variant<base::unique_fd, base::borrowed_fd>>* ancillaryFds) {
    if (ancillaryFds != nullptr) {
+2 −2
Original line number Diff line number Diff line
@@ -33,11 +33,11 @@ status_t dupFileDescriptor(int oldFd, int* newFd);

std::unique_ptr<RpcTransportCtxFactory> makeDefaultRpcTransportCtxFactory();

int sendMessageOnSocket(
ssize_t sendMessageOnSocket(
        const RpcTransportFd& socket, iovec* iovs, int niovs,
        const std::vector<std::variant<base::unique_fd, base::borrowed_fd>>* ancillaryFds);

int receiveMessageFromSocket(
ssize_t receiveMessageFromSocket(
        const RpcTransportFd& socket, iovec* iovs, int niovs,
        std::vector<std::variant<base::unique_fd, base::borrowed_fd>>* ancillaryFds);

+2 −1
Original line number Diff line number Diff line
@@ -61,7 +61,8 @@ public:
            override {
        bool sentFds = false;
        auto send = [&](iovec* iovs, int niovs) -> ssize_t {
            int ret = sendMessageOnSocket(mSocket, iovs, niovs, sentFds ? nullptr : ancillaryFds);
            ssize_t ret =
                    sendMessageOnSocket(mSocket, iovs, niovs, sentFds ? nullptr : ancillaryFds);
            sentFds |= ret > 0;
            return ret;
        };
+2 −2
Original line number Diff line number Diff line
@@ -59,14 +59,14 @@ std::unique_ptr<RpcTransportCtxFactory> makeDefaultRpcTransportCtxFactory() {
    return RpcTransportCtxFactoryTipcTrusty::make();
}

int sendMessageOnSocket(
ssize_t sendMessageOnSocket(
        const RpcTransportFd& /* socket */, iovec* /* iovs */, int /* niovs */,
        const std::vector<std::variant<base::unique_fd, base::borrowed_fd>>* /* ancillaryFds */) {
    errno = ENOTSUP;
    return -1;
}

int receiveMessageFromSocket(
ssize_t receiveMessageFromSocket(
        const RpcTransportFd& /* socket */, iovec* /* iovs */, int /* niovs */,
        std::vector<std::variant<base::unique_fd, base::borrowed_fd>>* /* ancillaryFds */) {
    errno = ENOTSUP;