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

Commit 5e1049db authored by Tomasz Wasilczyk's avatar Tomasz Wasilczyk Committed by Automerger Merge Worker
Browse files

Merge "Migrate off of base::StringPrintf" into main am: 49753ae0

parents d6060030 49753ae0
Loading
Loading
Loading
Loading
+18 −15
Original line number Diff line number Diff line
@@ -20,7 +20,6 @@

#include <android-base/macros.h>
#include <android-base/scopeguard.h>
#include <android-base/stringprintf.h>
#include <binder/BpBinder.h>
#include <binder/IPCThreadState.h>
#include <binder/RpcServer.h>
@@ -30,6 +29,7 @@
#include "Utils.h"

#include <random>
#include <sstream>

#include <inttypes.h>

@@ -39,8 +39,6 @@

namespace android {

using base::StringPrintf;

#if RPC_FLAKE_PRONE
void rpcMaybeWaitToFlake() {
    [[clang::no_destroy]] static std::random_device r;
@@ -329,8 +327,10 @@ std::string RpcState::BinderNode::toString() const {
        desc = "(not promotable)";
    }

    return StringPrintf("node{%p times sent: %zu times recd: %zu type: %s}",
                        this->binder.unsafe_get(), this->timesSent, this->timesRecd, desc);
    std::stringstream ss;
    ss << "node{" << intptr_t(this->binder.unsafe_get()) << " times sent: " << this->timesSent
       << " times recd: " << this->timesRecd << " type: " << desc << "}";
    return ss.str();
}

RpcState::CommandData::CommandData(size_t size) : mSize(size) {
@@ -1220,10 +1220,11 @@ status_t RpcState::validateParcel(const sp<RpcSession>& session, const Parcel& p
    uint32_t protocolVersion = session->getProtocolVersion().value();
    if (protocolVersion < RPC_WIRE_PROTOCOL_VERSION_RPC_HEADER_FEATURE_EXPLICIT_PARCEL_SIZE &&
        !rpcFields->mObjectPositions.empty()) {
        *errorMsg = StringPrintf("Parcel has attached objects but the session's protocol version "
                                 "(%" PRIu32 ") is too old, must be at least %" PRIu32,
                                 protocolVersion,
                                 RPC_WIRE_PROTOCOL_VERSION_RPC_HEADER_FEATURE_EXPLICIT_PARCEL_SIZE);
        std::stringstream ss;
        ss << "Parcel has attached objects but the session's protocol version (" << protocolVersion
           << ") is too old, must be at least "
           << RPC_WIRE_PROTOCOL_VERSION_RPC_HEADER_FEATURE_EXPLICIT_PARCEL_SIZE;
        *errorMsg = ss.str();
        return BAD_VALUE;
    }

@@ -1236,9 +1237,10 @@ status_t RpcState::validateParcel(const sp<RpcSession>& session, const Parcel& p
            case RpcSession::FileDescriptorTransportMode::UNIX: {
                constexpr size_t kMaxFdsPerMsg = 253;
                if (rpcFields->mFds->size() > kMaxFdsPerMsg) {
                    *errorMsg = StringPrintf("Too many file descriptors in Parcel for unix "
                                             "domain socket: %zu (max is %zu)",
                                             rpcFields->mFds->size(), kMaxFdsPerMsg);
                    std::stringstream ss;
                    ss << "Too many file descriptors in Parcel for unix domain socket: "
                       << rpcFields->mFds->size() << " (max is " << kMaxFdsPerMsg << ")";
                    *errorMsg = ss.str();
                    return BAD_VALUE;
                }
                break;
@@ -1249,9 +1251,10 @@ status_t RpcState::validateParcel(const sp<RpcSession>& session, const Parcel& p
                // available on Android
                constexpr size_t kMaxFdsPerMsg = 8;
                if (rpcFields->mFds->size() > kMaxFdsPerMsg) {
                    *errorMsg = StringPrintf("Too many file descriptors in Parcel for Trusty "
                                             "IPC connection: %zu (max is %zu)",
                                             rpcFields->mFds->size(), kMaxFdsPerMsg);
                    std::stringstream ss;
                    ss << "Too many file descriptors in Parcel for Trusty IPC connection: "
                       << rpcFields->mFds->size() << " (max is " << kMaxFdsPerMsg << ")";
                    *errorMsg = ss.str();
                    return BAD_VALUE;
                }
                break;
+5 −6
Original line number Diff line number Diff line
@@ -22,7 +22,6 @@
#include <android-base/file.h>
#include <android-base/logging.h>
#include <android-base/properties.h>
#include <android-base/stringprintf.h>
#include <android/debug/BnAdbCallback.h>
#include <android/debug/IAdbManager.h>
#include <android/os/BnServiceManager.h>
@@ -46,7 +45,6 @@ using android::base::LogdLogger;
using android::base::LogId;
using android::base::LogSeverity;
using android::base::StdioLogger;
using android::base::StringPrintf;
using std::string_view_literals::operator""sv;

namespace {
@@ -57,11 +55,12 @@ using android::debug::IAdbManager;

int Usage(const char* program) {
    auto basename = Basename(program);
    auto format = R"(dispatch calls to RPC service.
    // clang-format off
    LOG(ERROR) << R"(dispatch calls to RPC service.
Usage:
  %s [-g] [-i <ip_address>] <service_name>
  )" << basename << R"( [-g] [-i <ip_address>] <service_name>
    <service_name>: the service to connect to.
  %s [-g] manager
  )" << basename << R"( [-g] manager
    Runs an RPC-friendly service that redirects calls to servicemanager.

  -g: use getService() instead of checkService().
@@ -71,7 +70,7 @@ Usage:
  blocks until killed.
  Otherwise, writes error message to stderr and exits with non-zero code.
)";
    LOG(ERROR) << StringPrintf(format, basename.c_str(), basename.c_str());
    // clang-format on
    return EX_USAGE;
}

+6 −7
Original line number Diff line number Diff line
@@ -18,7 +18,6 @@
// only used on NDK tests outside of vendor
#include <aidl/IBinderRpcTest.h>
#endif
#include <android-base/stringprintf.h>

#include <chrono>
#include <cstdlib>
@@ -59,12 +58,12 @@ constexpr char kTrustyIpcDevice[] = "/dev/trusty-ipc-dev0";

static std::string WaitStatusToString(int wstatus) {
    if (WIFEXITED(wstatus)) {
        return base::StringPrintf("exit status %d", WEXITSTATUS(wstatus));
        return std::format("exit status {}", WEXITSTATUS(wstatus));
    }
    if (WIFSIGNALED(wstatus)) {
        return base::StringPrintf("term signal %d", WTERMSIG(wstatus));
        return std::format("term signal {}", WTERMSIG(wstatus));
    }
    return base::StringPrintf("unexpected state %d", wstatus);
    return std::format("unexpected state {}", wstatus);
}

static void debugBacktrace(pid_t pid) {
@@ -260,9 +259,9 @@ std::unique_ptr<ProcessSession> BinderRpc::createRpcTestSocketServerProcessEtc(
    bool noKernel = GetParam().noKernel;

    std::string path = android::base::GetExecutableDirectory();
    auto servicePath = android::base::StringPrintf("%s/binder_rpc_test_service%s%s", path.c_str(),
                                                   singleThreaded ? "_single_threaded" : "",
                                                   noKernel ? "_no_kernel" : "");
    auto servicePath =
            std::format("{}/binder_rpc_test_service{}{}", path,
                        singleThreaded ? "_single_threaded" : "", noKernel ? "_no_kernel" : "");

    base::unique_fd bootstrapClientFd, socketFd;

+2 −2
Original line number Diff line number Diff line
@@ -22,7 +22,6 @@
#include <BnBinderRpcCallback.h>
#include <BnBinderRpcSession.h>
#include <BnBinderRpcTest.h>
#include <android-base/stringprintf.h>
#include <binder/Binder.h>
#include <binder/BpBinder.h>
#include <binder/IPCThreadState.h>
@@ -58,6 +57,7 @@
#include "../BuildFlags.h"
#include "../FdTrigger.h"
#include "../RpcState.h" // for debugging
#include "format.h"
#include "utils/Errors.h"

namespace android {
@@ -91,7 +91,7 @@ static inline std::vector<uint32_t> testVersions() {
}

static inline std::string trustyIpcPort(uint32_t serverVersion) {
    return base::StringPrintf("com.android.trusty.binderRpcTestService.V%" PRIu32, serverVersion);
    return std::format("com.android.trusty.binderRpcTestService.V{}", serverVersion);
}

enum class SocketType {
+0 −2
Original line number Diff line number Diff line
@@ -16,7 +16,6 @@

#define TLOG_TAG "binderRpcTestService"

#include <android-base/stringprintf.h>
#include <binder/RpcServerTrusty.h>
#include <inttypes.h>
#include <lib/tipc/tipc.h>
@@ -28,7 +27,6 @@
#include "binderRpcTestCommon.h"

using namespace android;
using android::base::StringPrintf;
using binder::Status;

static int gConnectionCounter = 0;
Loading