aboutsummaryrefslogtreecommitdiff
path: root/doh/doh.rs
AgeCommit message (Collapse)Author
2023-07-05Revert "Revert "Injecting handshake relevant statistics into statsd.""Wayne Ma
This reverts commit 103bf63f9cb2214295a9bbbc7b0f848768b036c3. Resolved merge conflict without any changes to the functionality. Reason for revert: Mainline removes the MTS support for Q platform so it won't break MTS on Android Q devices. Change-Id: I8f44fa31034087e02058857db8a8ebfe54febd03
2023-02-01Revert "Injecting handshake relevant statistics into statsd."Wayne Ma
This reverts commit eaaf5fba93a53f5bcc8073ba162e8c4898ed757e. Reason for revert: It breaks MTS on Android Q devices. Going to add this CL back after Mainline removes the MTS for Q platform. Change-Id: I6632f9fa8c9eab487f5f07f5e8490c09a1a68ea9
2022-12-27Injecting handshake relevant statistics into statsd.Wayne Ma
|sampling_rate_denom| and |round_trips| are not handled in this change. event_metrics { data { aggregated_atom_info { atom { network_dns_handshake_reported { protocol: PROTO_DOH result: HR_SUCCESS cause: HC_SERVER_PROBE network_type: NT_WIFI private_dns_mode: PDM_STRICT latency_micros: 42596 bytes_sent: 761 bytes_received: 6420 round_trips: -1 tls_session_cache_hit: false tls_version: 3 hostname_verification: true quic_version: 1 server_index: -1 sampling_rate_denom: -1 } } elapsed_timestamp_nanos: 195891466159 } } } Bug: 249206898 Test: atest resolv_integration_test Change-Id: I312b61e224722e6bc90e29a05bc2103ebbd6dd73
2021-11-09DoH: Modularize main event loopMatthew Maurer
* Connection now provides HTTP/3. * Network has the logic for resolving DNS and maintaining a Connection. * Dispatcher routes requests to the appropriate Network or creates one if needed. * IO and maintenance is performed via tasks rather than manually pushing the futures in the main event loop. Bug: 202081046 Test: resolv_integration_test Test: resolv_stress_test + I682678b84b35c575a3eb88c2c1c67aefd195616c Change-Id: I4296d0c7a7852951f41418b18686794d8df781bd
2021-10-07DoH: Migrate C callback logic to ffi moduleMatthew Maurer
Bug: 202081046 Change-Id: I9cbba1b8181ce5c1b0276aebb64fbec194cef6a5
2021-10-07DoH: Factor out message encodingMatthew Maurer
Bug: 202081046 Change-Id: I77f8697cbcffb0d872c63a6a1b1343c1459d7ae7
2021-10-07DoH: Factor out Quiche Config CacheMatthew Maurer
* Add tests for the cache * Remove option deref hack Bug: 202081046 Change-Id: I6d4c296fafd03e4d9e462fbf6c09bac2c748f9e4
2021-10-07DoH: Factor out BootTimeMatthew Maurer
* Move `BootTime` into the `boot_time` module * Change `elapsed()` to match `Instant` API * Add timeout + sleep functions, relative to `CLOCK_BOOTTIME` * Change everywhere in DoH to use `boot_time` instead of `time` * Add tests for boot_time module BYPASS_INCLUSIVE_LANGUAGE_REASON="man is referring to the unix manual command, not a person" Bug: 202081046 Bug: 200694560 Change-Id: I719965ff75abb0223ba20829ca0a3a4be1d07f40
2021-10-05DoH: Remove unneeded runtime trackingMatthew Maurer
Bug: 202081046 Change-Id: I4af3790d3584b4cc49e6a7a296f1608130726b45
2021-10-04DoH: Lock access to DohDispatcherMatthew Maurer
Previously, we exposed &mut APIs to interacting with DohDispatcher. This is fine, but is not a legal API to use in a multithreaded context without a lock. To support this usage, we wrap it in a Mutex and only require a & reference which can be safely materialized from multiple threads since Mutex is Sync. Bug: 202080500 Change-Id: I7eb8dbaa74202033a8aa89fdedade792070aa483
2021-10-04DoH: Split out FFI logic to separate moduleMatthew Maurer
Bug: 202081046 Change-Id: Ie9093ab14a4eb4fc17381ad81f362dd209038d4d