android: Use configured NAT-T keepalive interval
This commit is contained in:
+1
@@ -250,6 +250,7 @@ public class CharonVpnService extends VpnService implements Runnable, VpnStateSe
|
|||||||
SettingsWriter writer = new SettingsWriter();
|
SettingsWriter writer = new SettingsWriter();
|
||||||
writer.setValue("global.language", Locale.getDefault().getLanguage());
|
writer.setValue("global.language", Locale.getDefault().getLanguage());
|
||||||
writer.setValue("global.mtu", mCurrentProfile.getMTU());
|
writer.setValue("global.mtu", mCurrentProfile.getMTU());
|
||||||
|
writer.setValue("global.nat_keepalive", mCurrentProfile.getNATKeepAlive());
|
||||||
writer.setValue("connection.type", mCurrentProfile.getVpnType().getIdentifier());
|
writer.setValue("connection.type", mCurrentProfile.getVpnType().getIdentifier());
|
||||||
writer.setValue("connection.server", mCurrentProfile.getGateway());
|
writer.setValue("connection.server", mCurrentProfile.getGateway());
|
||||||
writer.setValue("connection.port", mCurrentProfile.getPort());
|
writer.setValue("connection.port", mCurrentProfile.getPort());
|
||||||
|
|||||||
@@ -420,6 +420,11 @@ static void initiate(settings_t *settings)
|
|||||||
"charon.fragment_size",
|
"charon.fragment_size",
|
||||||
settings->get_int(settings, "global.mtu",
|
settings->get_int(settings, "global.mtu",
|
||||||
ANDROID_DEFAULT_MTU));
|
ANDROID_DEFAULT_MTU));
|
||||||
|
/* use configured interval, or an increased default to save battery power */
|
||||||
|
lib->settings->set_int(lib->settings,
|
||||||
|
"charon.keep_alive",
|
||||||
|
settings->get_int(settings, "global.nat_keepalive",
|
||||||
|
ANDROID_KEEPALIVE_INTERVAL));
|
||||||
|
|
||||||
this->creds->clear(this->creds);
|
this->creds->clear(this->creds);
|
||||||
DESTROY_IF(this->service);
|
DESTROY_IF(this->service);
|
||||||
@@ -476,9 +481,6 @@ static void set_options(char *logfile)
|
|||||||
"charon.retransmit_timeout", ANDROID_RETRANSMIT_TIMEOUT);
|
"charon.retransmit_timeout", ANDROID_RETRANSMIT_TIMEOUT);
|
||||||
lib->settings->set_double(lib->settings,
|
lib->settings->set_double(lib->settings,
|
||||||
"charon.retransmit_base", ANDROID_RETRANSMIT_BASE);
|
"charon.retransmit_base", ANDROID_RETRANSMIT_BASE);
|
||||||
/* increase NAT-T keepalive interval a bit to save battery power */
|
|
||||||
lib->settings->set_time(lib->settings,
|
|
||||||
"charon.keep_alive", ANDROID_KEEPALIVE_INTERVAL);
|
|
||||||
lib->settings->set_bool(lib->settings,
|
lib->settings->set_bool(lib->settings,
|
||||||
"charon.initiator_only", TRUE);
|
"charon.initiator_only", TRUE);
|
||||||
lib->settings->set_bool(lib->settings,
|
lib->settings->set_bool(lib->settings,
|
||||||
|
|||||||
Reference in New Issue
Block a user