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

Commit 33da0c23 authored by Treehugger Robot's avatar Treehugger Robot Committed by Gerrit Code Review
Browse files

Merge "libbinder: fix trusty cpp fd transport modes" into main

parents c643576c a81c63b0
Loading
Loading
Loading
Loading
+9 −0
Original line number Diff line number Diff line
@@ -97,6 +97,15 @@ private:
        // By default we use the latest stable version.
        LOG_ALWAYS_FATAL_IF(!rpcServer->setProtocolVersion(RPC_WIRE_PROTOCOL_VERSION));

        // The default behavior in trusty is to allow handles to be passed with tipc IPC.
        // We add mode NONE so that servers do not reject connections from clients who do
        // not change their default transport mode.
        static const std::vector<RpcSession::FileDescriptorTransportMode>
                TRUSTY_SERVER_SUPPORTED_FD_MODES = {RpcSession::FileDescriptorTransportMode::TRUSTY,
                                                    RpcSession::FileDescriptorTransportMode::NONE};

        rpcServer->setSupportedFileDescriptorTransportModes(TRUSTY_SERVER_SUPPORTED_FD_MODES);

        return rpcServer;
    }

+0 −9
Original line number Diff line number Diff line
@@ -27,13 +27,6 @@ using android::RpcTransportCtxFactoryTipcTrusty;
using android::sp;
using android::wp;

// The default behavior in trusty is to allow handles to be passed with tipc IPC.
// We add mode NONE so that servers do not reject connections from clients who do
// not change their default transport mode.
static const std::vector<RpcSession::FileDescriptorTransportMode> TRUSTY_SERVER_SUPPORTED_FD_MODES =
        {RpcSession::FileDescriptorTransportMode::TRUSTY,
         RpcSession::FileDescriptorTransportMode::NONE};

struct ARpcServerTrusty {
    sp<RpcServer> mRpcServer;

@@ -60,8 +53,6 @@ ARpcServerTrusty* ARpcServerTrusty_newPerSession(AIBinder* (*cb)(const void*, si
        return nullptr;
    }

    rpcServer->setSupportedFileDescriptorTransportModes(TRUSTY_SERVER_SUPPORTED_FD_MODES);

    rpcServer->setPerSessionRootObject(
            [cb, cbArgSp](wp<RpcSession> /*session*/, const void* addrPtr, size_t len) {
                auto* aib = (*cb)(addrPtr, len, cbArgSp.get());