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

Commit 164636ce authored by Steven Moreland's avatar Steven Moreland
Browse files

libbinder_ndk: prune errors on AStatus create

Otherwise, they could escape into another process.

Bug: 111445392
Test: atest android.binder.cts
Change-Id: Id7bfb63c20fb8ec4f0ca9ce51abb530a961e8dfe
parent cd1ce760
Loading
Loading
Loading
Loading
+3 −3
Original line number Diff line number Diff line
@@ -27,11 +27,11 @@ AStatus* AStatus_newOk() {
}

AStatus* AStatus_fromExceptionCode(binder_exception_t exception) {
    return new AStatus(Status::fromExceptionCode(exception));
    return new AStatus(Status::fromExceptionCode(PruneException(exception)));
}

AStatus* AStatus_fromExceptionCodeWithMessage(binder_exception_t exception, const char* message) {
    return new AStatus(Status::fromExceptionCode(exception, message));
    return new AStatus(Status::fromExceptionCode(PruneException(exception), message));
}

AStatus* AStatus_fromServiceSpecificError(int32_t serviceSpecific) {
@@ -43,7 +43,7 @@ AStatus* AStatus_fromServiceSpecificErrorWithMessage(int32_t serviceSpecific, co
}

AStatus* AStatus_fromStatus(binder_status_t status) {
    return new AStatus(Status::fromStatusT(status));
    return new AStatus(Status::fromStatusT(PruneStatusT(status)));
}

bool AStatus_isOk(const AStatus* status) {