diff options
Diffstat (limited to 'Tethering/src/android/net/ip/IpServer.java')
| -rw-r--r-- | Tethering/src/android/net/ip/IpServer.java | 8 |
1 files changed, 7 insertions, 1 deletions
diff --git a/Tethering/src/android/net/ip/IpServer.java b/Tethering/src/android/net/ip/IpServer.java index acd2625b19..c718f4c9a0 100644 --- a/Tethering/src/android/net/ip/IpServer.java +++ b/Tethering/src/android/net/ip/IpServer.java @@ -241,6 +241,7 @@ public class IpServer extends StateMachine { private final LinkProperties mLinkProperties; private final boolean mUsingLegacyDhcp; private final boolean mUsingBpfOffload; + private final int mP2pLeasesSubnetPrefixLength; private final Dependencies mDeps; @@ -299,6 +300,7 @@ public class IpServer extends StateMachine { mLinkProperties = new LinkProperties(); mUsingLegacyDhcp = config.useLegacyDhcpServer(); mUsingBpfOffload = config.isBpfOffloadEnabled(); + mP2pLeasesSubnetPrefixLength = config.getP2pLeasesSubnetPrefixLength(); mPrivateAddressCoordinator = addressCoordinator; mDeps = deps; resetLinkProperties(); @@ -527,6 +529,9 @@ public class IpServer extends StateMachine { @Nullable Inet4Address clientAddr) { final boolean changePrefixOnDecline = (mInterfaceType == TetheringManager.TETHERING_NCM && clientAddr == null); + final int subnetPrefixLength = mInterfaceType == TetheringManager.TETHERING_WIFI_P2P + ? mP2pLeasesSubnetPrefixLength : 0 /* default value */; + return new DhcpServingParamsParcelExt() .setDefaultRouters(defaultRouter) .setDhcpLeaseTimeSecs(DHCP_LEASE_TIME_SECS) @@ -534,7 +539,8 @@ public class IpServer extends StateMachine { .setServerAddr(serverAddr) .setMetered(true) .setSingleClientAddr(clientAddr) - .setChangePrefixOnDecline(changePrefixOnDecline); + .setChangePrefixOnDecline(changePrefixOnDecline) + .setLeasesSubnetPrefixLength(subnetPrefixLength); // TODO: also advertise link MTU } |
