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

Commit d92c6a12 authored by Elliott Hughes's avatar Elliott Hughes
Browse files

Use freecon() with getcon()/getfilecon().

Bug: https://issuetracker.google.com/175090444
Test: treehugger
Change-Id: Ia2b8102f1c9a4fd56ec1ff026ba5b4f375102b9b
parent 77692aee
Loading
Loading
Loading
Loading
+2 −2
Original line number Diff line number Diff line
@@ -72,12 +72,12 @@ static Result<std::string> ComputeContextFromExecutable(const std::string& servi
    if (getcon(&raw_con) == -1) {
        return Error() << "Could not get security context";
    }
    std::unique_ptr<char> mycon(raw_con);
    std::unique_ptr<char, decltype(&freecon)> mycon(raw_con, freecon);

    if (getfilecon(service_path.c_str(), &raw_filecon) == -1) {
        return Error() << "Could not get file context";
    }
    std::unique_ptr<char> filecon(raw_filecon);
    std::unique_ptr<char, decltype(&freecon)> filecon(raw_filecon, freecon);

    char* new_con = nullptr;
    int rc = security_compute_create(mycon.get(), filecon.get(),