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

Commit 54d8ff11 authored by Mark Salyzyn's avatar Mark Salyzyn
Browse files

logd: add "+passcred" for logdw socket

Tell init to set SO_PASSCRED on the socket before bind() and handoff.

Test: gtest logd-unit-test --gtest_filter=logd.statistics right after boot
Bug: 37985222
Change-Id: I318969ee3241834e5326233aabd97e52ef505969
parent 9811cd33
Loading
Loading
Loading
Loading
+5 −5
Original line number Original line Diff line number Diff line
@@ -119,14 +119,14 @@ int LogListener::getLogSocket() {
    static const char socketName[] = "logdw";
    static const char socketName[] = "logdw";
    int sock = android_get_control_socket(socketName);
    int sock = android_get_control_socket(socketName);


    if (sock < 0) {
    if (sock < 0) {  // logd started up in init.sh
        sock = socket_local_server(
        sock = socket_local_server(
            socketName, ANDROID_SOCKET_NAMESPACE_RESERVED, SOCK_DGRAM);
            socketName, ANDROID_SOCKET_NAMESPACE_RESERVED, SOCK_DGRAM);
    }


        int on = 1;
        int on = 1;
    if (setsockopt(sock, SOL_SOCKET, SO_PASSCRED, &on, sizeof(on)) < 0) {
        if (setsockopt(sock, SOL_SOCKET, SO_PASSCRED, &on, sizeof(on))) {
            return -1;
            return -1;
        }
        }
    }
    return sock;
    return sock;
}
}
+1 −1
Original line number Original line Diff line number Diff line
service logd /system/bin/logd
service logd /system/bin/logd
    socket logd stream 0666 logd logd
    socket logd stream 0666 logd logd
    socket logdr seqpacket 0666 logd logd
    socket logdr seqpacket 0666 logd logd
    socket logdw dgram 0222 logd logd
    socket logdw dgram+passcred 0222 logd logd
    file /proc/kmsg r
    file /proc/kmsg r
    file /dev/kmsg w
    file /dev/kmsg w
    user logd
    user logd