Merge "Replace useTls with mode in PrivateDnsConfig" into main am: 452feb2620
Original change: https://android-review.googlesource.com/c/platform/packages/modules/Connectivity/+/2842798 Change-Id: I552c4eae2837ac730e8a3cfe1f19190c28b52cae Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
This commit is contained in:
commit
d2f934a727
3 changed files with 11 additions and 10 deletions
|
|
@ -4784,7 +4784,7 @@ public class ConnectivityService extends IConnectivityManager.Stub
|
|||
// If the Private DNS mode is opportunistic, reprogram the DNS servers
|
||||
// in order to restart a validation pass from within netd.
|
||||
final PrivateDnsConfig cfg = mDnsManager.getPrivateDnsConfig();
|
||||
if (cfg.useTls && TextUtils.isEmpty(cfg.hostname)) {
|
||||
if (cfg.inOpportunisticMode()) {
|
||||
updateDnses(nai.linkProperties, null, nai.network.getNetId());
|
||||
}
|
||||
}
|
||||
|
|
|
|||
|
|
@ -302,7 +302,7 @@ public class DnsManager {
|
|||
final PrivateDnsConfig privateDnsCfg = mPrivateDnsMap.getOrDefault(netId,
|
||||
PRIVATE_DNS_OFF);
|
||||
|
||||
final boolean useTls = privateDnsCfg.useTls;
|
||||
final boolean useTls = privateDnsCfg.mode != PRIVATE_DNS_MODE_OFF;
|
||||
final PrivateDnsValidationStatuses statuses =
|
||||
useTls ? mPrivateDnsValidationMap.get(netId) : null;
|
||||
final boolean validated = (null != statuses) && statuses.hasValidatedServer();
|
||||
|
|
@ -370,7 +370,7 @@ public class DnsManager {
|
|||
// networks like IMS.
|
||||
final PrivateDnsConfig privateDnsCfg = mPrivateDnsMap.getOrDefault(netId,
|
||||
PRIVATE_DNS_OFF);
|
||||
final boolean useTls = privateDnsCfg.useTls;
|
||||
final boolean useTls = privateDnsCfg.mode != PRIVATE_DNS_MODE_OFF;
|
||||
final boolean strictMode = privateDnsCfg.inStrictMode();
|
||||
|
||||
paramsParcel.netId = netId;
|
||||
|
|
|
|||
|
|
@ -19,6 +19,7 @@ package com.android.server.connectivity;
|
|||
import static android.net.ConnectivitySettingsManager.PRIVATE_DNS_DEFAULT_MODE;
|
||||
import static android.net.ConnectivitySettingsManager.PRIVATE_DNS_MODE;
|
||||
import static android.net.ConnectivitySettingsManager.PRIVATE_DNS_MODE_OFF;
|
||||
import static android.net.ConnectivitySettingsManager.PRIVATE_DNS_MODE_OPPORTUNISTIC;
|
||||
import static android.net.ConnectivitySettingsManager.PRIVATE_DNS_MODE_PROVIDER_HOSTNAME;
|
||||
import static android.net.ConnectivitySettingsManager.PRIVATE_DNS_SPECIFIER;
|
||||
import static android.net.NetworkCapabilities.MAX_TRANSPORT;
|
||||
|
|
@ -329,14 +330,14 @@ public class DnsManagerTest {
|
|||
public void testOverrideDefaultMode() throws Exception {
|
||||
// Hard-coded default is opportunistic mode.
|
||||
final PrivateDnsConfig cfgAuto = DnsManager.getPrivateDnsConfig(mCtx);
|
||||
assertTrue(cfgAuto.useTls);
|
||||
assertEquals(PRIVATE_DNS_MODE_OPPORTUNISTIC, cfgAuto.mode);
|
||||
assertEquals("", cfgAuto.hostname);
|
||||
assertEquals(new InetAddress[0], cfgAuto.ips);
|
||||
|
||||
// Pretend a gservices push sets the default to "off".
|
||||
ConnectivitySettingsManager.setPrivateDnsDefaultMode(mCtx, PRIVATE_DNS_MODE_OFF);
|
||||
final PrivateDnsConfig cfgOff = DnsManager.getPrivateDnsConfig(mCtx);
|
||||
assertFalse(cfgOff.useTls);
|
||||
assertEquals(PRIVATE_DNS_MODE_OFF, cfgOff.mode);
|
||||
assertEquals("", cfgOff.hostname);
|
||||
assertEquals(new InetAddress[0], cfgOff.ips);
|
||||
|
||||
|
|
@ -344,7 +345,7 @@ public class DnsManagerTest {
|
|||
ConnectivitySettingsManager.setPrivateDnsMode(mCtx, PRIVATE_DNS_MODE_PROVIDER_HOSTNAME);
|
||||
ConnectivitySettingsManager.setPrivateDnsHostname(mCtx, "strictmode.com");
|
||||
final PrivateDnsConfig cfgStrict = DnsManager.getPrivateDnsConfig(mCtx);
|
||||
assertTrue(cfgStrict.useTls);
|
||||
assertEquals(PRIVATE_DNS_MODE_PROVIDER_HOSTNAME, cfgStrict.mode);
|
||||
assertEquals("strictmode.com", cfgStrict.hostname);
|
||||
assertEquals(new InetAddress[0], cfgStrict.ips);
|
||||
}
|
||||
|
|
@ -419,7 +420,7 @@ public class DnsManagerTest {
|
|||
|
||||
// The PrivateDnsConfig map is empty, so the default PRIVATE_DNS_OFF is returned.
|
||||
PrivateDnsConfig privateDnsCfg = mDnsManager.getPrivateDnsConfig(network);
|
||||
assertFalse(privateDnsCfg.useTls);
|
||||
assertEquals(PRIVATE_DNS_MODE_OFF, privateDnsCfg.mode);
|
||||
assertEquals("", privateDnsCfg.hostname);
|
||||
assertEquals(new InetAddress[0], privateDnsCfg.ips);
|
||||
|
||||
|
|
@ -431,7 +432,7 @@ public class DnsManagerTest {
|
|||
VALIDATION_RESULT_SUCCESS));
|
||||
mDnsManager.updatePrivateDnsStatus(TEST_NETID, lp);
|
||||
privateDnsCfg = mDnsManager.getPrivateDnsConfig(network);
|
||||
assertTrue(privateDnsCfg.useTls);
|
||||
assertEquals(PRIVATE_DNS_MODE_OPPORTUNISTIC, privateDnsCfg.mode);
|
||||
assertEquals("", privateDnsCfg.hostname);
|
||||
assertEquals(new InetAddress[0], privateDnsCfg.ips);
|
||||
|
||||
|
|
@ -439,14 +440,14 @@ public class DnsManagerTest {
|
|||
mDnsManager.updatePrivateDns(network, new PrivateDnsConfig(tlsName, tlsAddrs));
|
||||
mDnsManager.updatePrivateDnsStatus(TEST_NETID, lp);
|
||||
privateDnsCfg = mDnsManager.getPrivateDnsConfig(network);
|
||||
assertTrue(privateDnsCfg.useTls);
|
||||
assertEquals(PRIVATE_DNS_MODE_PROVIDER_HOSTNAME, privateDnsCfg.mode);
|
||||
assertEquals(tlsName, privateDnsCfg.hostname);
|
||||
assertEquals(tlsAddrs, privateDnsCfg.ips);
|
||||
|
||||
// The network is removed, so the PrivateDnsConfig map becomes empty again.
|
||||
mDnsManager.removeNetwork(network);
|
||||
privateDnsCfg = mDnsManager.getPrivateDnsConfig(network);
|
||||
assertFalse(privateDnsCfg.useTls);
|
||||
assertEquals(PRIVATE_DNS_MODE_OFF, privateDnsCfg.mode);
|
||||
assertEquals("", privateDnsCfg.hostname);
|
||||
assertEquals(new InetAddress[0], privateDnsCfg.ips);
|
||||
}
|
||||
|
|
|
|||
Loading…
Reference in a new issue