diff options
| author | Robert Greenwalt <robdroid@android.com> | 2010-03-24 16:03:21 -0700 |
|---|---|---|
| committer | Robert Greenwalt <robdroid@android.com> | 2010-03-25 14:46:13 -0700 |
| commit | bfb7bfa53847832db2a3eb05e5eff7cb974c3c7a (patch) | |
| tree | 6f7b9f635d9b1d47caca0a5c7f2b338bc536b4f8 /services/java/com/android/server/NetworkManagementService.java | |
| parent | 838bfef91504837b64c4f11be820aa2aa4cd4efe (diff) | |
Update Framework to support multiple dhpc ranges
Previously we only supported a single range - this was inadequate for
multiple interfaces. Adding a second range so we can support
both usb and wifi tethering.
Also moving out of the zero-conf range as our dhcp client won't
accept ip addrs in that range (no nexus to nexus wifi action).
bug: 2537963
bug: 2533491
bug: 2538303
Change-Id: I600b421343c28c2f9839ed2076122ae3d0ff5d3d
Diffstat (limited to 'services/java/com/android/server/NetworkManagementService.java')
| -rw-r--r-- | services/java/com/android/server/NetworkManagementService.java | 10 |
1 files changed, 8 insertions, 2 deletions
diff --git a/services/java/com/android/server/NetworkManagementService.java b/services/java/com/android/server/NetworkManagementService.java index a3f2e09d0316..072fc1b153bc 100644 --- a/services/java/com/android/server/NetworkManagementService.java +++ b/services/java/com/android/server/NetworkManagementService.java @@ -312,11 +312,17 @@ class NetworkManagementService extends INetworkManagementService.Stub { mConnector.doCommand(String.format("ipfwd %sable", (enable ? "en" : "dis"))); } - public void startTethering(String dhcpRangeStart, String dhcpRangeEnd) + public void startTethering(String[] dhcpRange) throws IllegalStateException { mContext.enforceCallingOrSelfPermission( android.Manifest.permission.CHANGE_NETWORK_STATE, "NetworkManagementService"); - mConnector.doCommand(String.format("tether start %s %s", dhcpRangeStart, dhcpRangeEnd)); + // cmd is "tether start first_start first_stop second_start second_stop ..." + // an odd number of addrs will fail + String cmd = "tether start"; + for (String d : dhcpRange) { + cmd += " " + d; + } + mConnector.doCommand(cmd); } public void stopTethering() throws IllegalStateException { |
