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

Commit 67ea7311 authored by Tim Murray's avatar Tim Murray Committed by Android (Google) Code Review
Browse files

Merge "Restrict pmsg use to eng builds." into nyc-dr1-dev

parents af8d67e0 f894b96a
Loading
Loading
Loading
Loading
+21 −2
Original line number Diff line number Diff line
@@ -31,6 +31,8 @@
#include <private/android_filesystem_config.h>
#include <private/android_logger.h>

#include <sys/system_properties.h>

#include "config_write.h"
#include "log_portability.h"
#include "logger.h"
@@ -51,8 +53,25 @@ LIBLOG_HIDDEN struct android_log_transport_write pmsgLoggerWrite = {
    .write = pmsgWrite,
};

static bool pmsgShouldUse = false;

// Only use pmsg on eng builds
static bool pmsgIsEng() {
    char buf[PROP_VALUE_MAX];

    if (__system_property_get("ro.build.type", buf) == 0) {
        return false;
    }

    if (!strncmp(buf, "eng", sizeof("eng"))) {
        return true;
    }
    return false;
}

static int pmsgOpen()
{
    pmsgShouldUse = pmsgIsEng();
    if (pmsgLoggerWrite.context.fd < 0) {
        pmsgLoggerWrite.context.fd = TEMP_FAILURE_RETRY(open("/dev/pmsg0", O_WRONLY | O_CLOEXEC));
    }
@@ -75,7 +94,7 @@ static int pmsgAvailable(log_id_t logId)
    }
    if ((logId != LOG_ID_SECURITY) &&
            (logId != LOG_ID_EVENTS) &&
            !__android_log_is_debuggable()) {
            (!pmsgShouldUse || !__android_log_is_debuggable())) {
        return -EINVAL;
    }
    if (pmsgLoggerWrite.context.fd < 0) {
@@ -105,7 +124,7 @@ static int pmsgWrite(log_id_t logId, struct timespec *ts,
    size_t i, payloadSize;
    ssize_t ret;

    if ((logId == LOG_ID_EVENTS) && !__android_log_is_debuggable()) {
    if ((logId == LOG_ID_EVENTS) && (!pmsgShouldUse || !__android_log_is_debuggable())) {
        if (vec[0].iov_len < 4) {
            return -EINVAL;
        }