Loading core/java/android/net/DhcpStateMachine.java +18 −7 Original line number Diff line number Diff line Loading @@ -66,6 +66,9 @@ public class DhcpStateMachine extends StateMachine { private static final int DHCP_RENEW = 0; private static final String ACTION_DHCP_RENEW = "android.net.wifi.DHCP_RENEW"; //Used for sanity check on setting up renewal private static final int MIN_RENEWAL_TIME_SECS = 5 * 60; // 5 minutes private enum DhcpAction { START, RENEW Loading Loading @@ -331,12 +334,20 @@ public class DhcpStateMachine extends StateMachine { if (success) { Log.d(TAG, "DHCP succeeded on " + mInterfaceName); long leaseDuration = dhcpInfoInternal.leaseDuration; //int to long conversion //Sanity check for renewal //TODO: would be good to notify the user that his network configuration is //bad and that the device cannot renew below MIN_RENEWAL_TIME_SECS if (leaseDuration < MIN_RENEWAL_TIME_SECS) { leaseDuration = MIN_RENEWAL_TIME_SECS; } //Do it a bit earlier than half the lease duration time //to beat the native DHCP client and avoid extra packets //48% for one hour lease time = 29 minutes mAlarmManager.set(AlarmManager.ELAPSED_REALTIME_WAKEUP, SystemClock.elapsedRealtime() + dhcpInfoInternal.leaseDuration * 480, //in milliseconds leaseDuration * 480, //in milliseconds mDhcpRenewalIntent); mController.obtainMessage(CMD_POST_DHCP_ACTION, DHCP_SUCCESS, 0, dhcpInfoInternal) Loading Loading
core/java/android/net/DhcpStateMachine.java +18 −7 Original line number Diff line number Diff line Loading @@ -66,6 +66,9 @@ public class DhcpStateMachine extends StateMachine { private static final int DHCP_RENEW = 0; private static final String ACTION_DHCP_RENEW = "android.net.wifi.DHCP_RENEW"; //Used for sanity check on setting up renewal private static final int MIN_RENEWAL_TIME_SECS = 5 * 60; // 5 minutes private enum DhcpAction { START, RENEW Loading Loading @@ -331,12 +334,20 @@ public class DhcpStateMachine extends StateMachine { if (success) { Log.d(TAG, "DHCP succeeded on " + mInterfaceName); long leaseDuration = dhcpInfoInternal.leaseDuration; //int to long conversion //Sanity check for renewal //TODO: would be good to notify the user that his network configuration is //bad and that the device cannot renew below MIN_RENEWAL_TIME_SECS if (leaseDuration < MIN_RENEWAL_TIME_SECS) { leaseDuration = MIN_RENEWAL_TIME_SECS; } //Do it a bit earlier than half the lease duration time //to beat the native DHCP client and avoid extra packets //48% for one hour lease time = 29 minutes mAlarmManager.set(AlarmManager.ELAPSED_REALTIME_WAKEUP, SystemClock.elapsedRealtime() + dhcpInfoInternal.leaseDuration * 480, //in milliseconds leaseDuration * 480, //in milliseconds mDhcpRenewalIntent); mController.obtainMessage(CMD_POST_DHCP_ACTION, DHCP_SUCCESS, 0, dhcpInfoInternal) Loading