Skip to content

Commit f449ea9

Browse files
Robert GreenwaltAndroid (Google) Code Review
authored andcommitted
Merge "Use the carrier-given dns addrs for tethering." into ics-mr1
2 parents 4716368 + 7df80fa commit f449ea9

File tree

1 file changed

+18
-6
lines changed

1 file changed

+18
-6
lines changed

services/java/com/android/server/connectivity/Tethering.java

Lines changed: 18 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -118,7 +118,7 @@ public class Tethering extends INetworkManagementEventObserver.Stub {
118118
"192.168.48.2", "192.168.48.254",
119119
};
120120

121-
private String[] mDnsServers;
121+
private String[] mDefaultDnsServers;
122122
private static final String DNS_DEFAULT_SERVER1 = "8.8.8.8";
123123
private static final String DNS_DEFAULT_SERVER2 = "8.8.4.4";
124124

@@ -171,9 +171,9 @@ public Tethering(Context context, INetworkManagementService nmService,
171171
updateConfiguration();
172172

173173
// TODO - remove and rely on real notifications of the current iface
174-
mDnsServers = new String[2];
175-
mDnsServers[0] = DNS_DEFAULT_SERVER1;
176-
mDnsServers[1] = DNS_DEFAULT_SERVER2;
174+
mDefaultDnsServers = new String[2];
175+
mDefaultDnsServers[0] = DNS_DEFAULT_SERVER1;
176+
mDefaultDnsServers[1] = DNS_DEFAULT_SERVER2;
177177
}
178178

179179
void updateConfiguration() {
@@ -1245,7 +1245,7 @@ protected boolean turnOnMasterTetherSettings() {
12451245
}
12461246
}
12471247
try {
1248-
mNMService.setDnsForwarders(mDnsServers);
1248+
mNMService.setDnsForwarders(mDefaultDnsServers);
12491249
} catch (Exception e) {
12501250
transitionTo(mSetDnsForwardersErrorState);
12511251
return false;
@@ -1321,7 +1321,19 @@ protected void chooseUpstreamType(boolean tryCell) {
13211321
try {
13221322
linkProperties = mConnService.getLinkProperties(upType);
13231323
} catch (RemoteException e) { }
1324-
if (linkProperties != null) iface = linkProperties.getInterfaceName();
1324+
if (linkProperties != null) {
1325+
iface = linkProperties.getInterfaceName();
1326+
String[] dnsServers = mDefaultDnsServers;
1327+
Collection<InetAddress> dnses = linkProperties.getDnses();
1328+
if (dnses != null) {
1329+
dnsServers = NetworkUtils.makeStrings(dnses);
1330+
}
1331+
try {
1332+
mNMService.setDnsForwarders(dnsServers);
1333+
} catch (Exception e) {
1334+
transitionTo(mSetDnsForwardersErrorState);
1335+
}
1336+
}
13251337
}
13261338
notifyTetheredOfNewUpstreamIface(iface);
13271339
}

0 commit comments

Comments
 (0)