No description. Add one?
- Java 78%
- Kotlin 11.8%
- AIDL 4.4%
- C++ 3.7%
- C 1.5%
- Other 0.5%
| Filename | Latest commit message | Latest commit date |
|---|---|---|
Currently, NetworkAgentInfo#satisfies determines whether a network exists (and should satisfy requests) based on |created|, not |everConnected|. This is theoretically incorrect because networks in CONNECTING state or similar must never satisfy requests or call callbacks. This cannot happen for requests. New requests are only added to networks by NetworkAgentInfo#addRequest, which is only called by computeNetworkReassignment via updateSatisfiersForRematchRequest, which skips any network with everConnected = false. It can potentially happen to listens though. Also, this cannot ever happen for physical networks, because for physical networks, created is set at the same time as everConnected, the first time they enter CONNECTED state. In theory, this can happen for VPNs since ag/988402 , which changed the code to create VPN networks as soon as they enter CONNECTING state. That CL added the everConnected boolean to NetworkAgentInfo but did not update the satisfies and satisfiesImmutableCapabilitiesOf checks to use everConnected. In practice, even for VPNs this is very unlikely, since VPNs advance from CONNECTING to CONNECTED essentially immediately. Even if they didn't, sending callbacks before they enter CONNECTED state would be incorrect because the app receiving the callback would have no way of knowing that the network is actually not yet connected. With this change, some checks for everConnected become spurious, because a network with everConnected=false cannot satisfy either requests or listens. Remove these checks. Test: extensively tested by existing ConnectivityServiceTest Change-Id: I024bb2b85bc57228d53e69a7707c7ce7ac756259 |
||
| bpf_progs | ||
| common | ||
| framework | ||
| framework-t | ||
| nearby | ||
| netd | ||
| service | ||
| service-t | ||
| tests | ||
| Tethering | ||
| tools | ||
| .gitignore | ||
| OWNERS | ||
| OWNERS_core_networking | ||
| OWNERS_core_networking_xts | ||
| PREUPLOAD.cfg | ||
| TEST_MAPPING | ||