commit | c276f8db509dfc95caa0f7d0146297c8d330010d | [log] [tgz] |
---|---|---|
author | Yifan Hong <elsk@google.com> | Thu May 13 17:13:44 2021 -0700 |
committer | Yifan Hong <elsk@google.com> | Thu May 13 20:16:09 2021 -0700 |
tree | 590b60e292d3d245c63c23db4fd444eb0dba506b | |
parent | 00aeb76928c7bd4c6455ff959ed3cc3bce69a73d [diff] |
RpcServer::setupSocketServer prevent race If two threads calls setup*Server, they may race. Make sure one of them fail. setupSocketServer calls into setupExternalServer to double check that no other thread was setting up server in the mean time to prevent TOCTOU. This change also ensures that setupExternalServer is the only place where mServer is set, and it is guarded by a lock. Test: binderRpcTest Change-Id: Iadd3585b9cb4aa157bae072943f1bd47896a7a77