Clean up DnsTlsDispatcher when a network is disconnected
DnsTlsDispatcher used to keep Transport in the map for at least 5
minutes. Since Transport is no longer a stateless object, it needs
to be removed as soon as the associated network, testing network
particularly, is disconnected.
This change actually fixes two known test bugs:
- bug 189384775.
How to reproduce it: run TlsServerRevalidation twice.
$ ./resolv_integration_test64 --gtest_filter="*TlsServerRevalidation"
$ ./resolv_integration_test64 --gtest_filter="*TlsServerRevalidation"
- bug 189132684
How to reproduce it: run ConnectTlsServerTimeout and QueryTlsServerTimeout
before before ConnectTlsServerTimeout_ConcurrentQueries.
$ ./resolv_integration_test64 --gtest_filter="*ConnectTlsServerTimeout:*QueryTlsServerTimeout"
$ ./resolv_integration_test64 --gtest_filter="*ConnectTlsServerTimeout_ConcurrentQueries"
Original change: https://android-review.googlesource.com/c/platform/packages/modules/DnsResolver/+/1722073
Bug: 189384775
Bug: 189132684
Bug: 189161918
Test: run atest on R platform with the dnsresolver built from master
Test: run atest on Q platform with the dnsresolver built from mainline-prod
Test: verified that the two mentioned bugs are not reproducible
Test: run resolv_integration_test twice
Change-Id: I3bf3b7ddec7818c4fcf3ffaa0f97173d876d3642
Merged-In: I3bf3b7ddec7818c4fcf3ffaa0f97173d876d3642
Loading