summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
author Steven Moreland <smoreland@google.com> 2021-08-02 20:08:14 +0000
committer Gerrit Code Review <noreply-gerritcodereview@google.com> 2021-08-02 20:08:14 +0000
commita588da3ea77900adff9992ff4a231b965e931fdb (patch)
tree9df7bf6fd5b82a6393934d7712c2751dd5b4a3af
parenta42cf8d65f8fa426ecda84413d10bd52da8b7782 (diff)
parent40b736e02e45d743821a51d24ed9580bbbffc71e (diff)
Merge "libbinder: disallow upgrade of explicit version"
-rw-r--r--libs/binder/RpcSession.cpp6
1 files changed, 6 insertions, 0 deletions
diff --git a/libs/binder/RpcSession.cpp b/libs/binder/RpcSession.cpp
index 90ce4d6d3f..254b99c29a 100644
--- a/libs/binder/RpcSession.cpp
+++ b/libs/binder/RpcSession.cpp
@@ -87,6 +87,12 @@ bool RpcSession::setProtocolVersion(uint32_t version) {
}
std::lock_guard<std::mutex> _l(mMutex);
+ if (mProtocolVersion && version > *mProtocolVersion) {
+ ALOGE("Cannot upgrade explicitly capped protocol version %u to newer version %u",
+ *mProtocolVersion, version);
+ return false;
+ }
+
mProtocolVersion = version;
return true;
}