I2P Address: [http://git.idk.i2p]

Skip to content
Snippets Groups Projects
Unverified Commit 8ac78af2 authored by zzz's avatar zzz
Browse files

Console: Require full restart on transport enable/disable

Don't do soft restart if full restart required
parent e44eeaf5
No related branches found
No related tags found
No related merge requests found
...@@ -170,6 +170,7 @@ public class ConfigNetHandler extends FormHandler { ...@@ -170,6 +170,7 @@ public class ConfigNetHandler extends FormHandler {
*/ */
private void saveChanges() { private void saveChanges() {
boolean restartRequired = false; boolean restartRequired = false;
boolean fullRestartRequired = false;
boolean error = false; boolean error = false;
List<String> removes = new ArrayList<String>(); List<String> removes = new ArrayList<String>();
...@@ -260,6 +261,7 @@ public class ConfigNetHandler extends FormHandler { ...@@ -260,6 +261,7 @@ public class ConfigNetHandler extends FormHandler {
if (_ntcpHostname == null) _ntcpHostname = ""; if (_ntcpHostname == null) _ntcpHostname = "";
if (_ntcpPort == null) _ntcpPort = ""; if (_ntcpPort == null) _ntcpPort = "";
if (_ntcpAutoIP == null) _ntcpAutoIP = "true"; if (_ntcpAutoIP == null) _ntcpAutoIP = "true";
boolean oldNTCPEnabled = _context.getBooleanPropertyDefaultTrue(TransportManager.PROP_ENABLE_NTCP);
if ((!oldAutoHost.equals(_ntcpAutoIP)) || ! oldNHost.equalsIgnoreCase(_ntcpHostname)) { if ((!oldAutoHost.equals(_ntcpAutoIP)) || ! oldNHost.equalsIgnoreCase(_ntcpHostname)) {
boolean valid = true; boolean valid = true;
...@@ -282,8 +284,11 @@ public class ConfigNetHandler extends FormHandler { ...@@ -282,8 +284,11 @@ public class ConfigNetHandler extends FormHandler {
} }
if (valid) { if (valid) {
changes.put(ConfigNetHelper.PROP_I2NP_NTCP_AUTO_IP, _ntcpAutoIP); changes.put(ConfigNetHelper.PROP_I2NP_NTCP_AUTO_IP, _ntcpAutoIP);
changes.put(TransportManager.PROP_ENABLE_NTCP, Boolean.toString(!"disabled".equals(_ntcpAutoIP))); boolean ntcpEnabled = !"disabled".equals(_ntcpAutoIP);
changes.put(TransportManager.PROP_ENABLE_NTCP, Boolean.toString(ntcpEnabled));
restartRequired = true; restartRequired = true;
if (oldNTCPEnabled != ntcpEnabled)
fullRestartRequired = true;
} }
} }
if (oldAutoPort != _ntcpAutoPort || ! oldNPort.equals(_ntcpPort)) { if (oldAutoPort != _ntcpAutoPort || ! oldNPort.equals(_ntcpPort)) {
...@@ -356,7 +361,7 @@ public class ConfigNetHandler extends FormHandler { ...@@ -356,7 +361,7 @@ public class ConfigNetHandler extends FormHandler {
addFormNotice(_t("Enabling UPnP")); addFormNotice(_t("Enabling UPnP"));
else else
addFormNotice(_t("Disabling UPnP")); addFormNotice(_t("Disabling UPnP"));
addFormNotice(_t("Restart required to take effect")); fullRestartRequired = true;
} }
changes.put(TransportManager.PROP_ENABLE_UPNP, Boolean.toString(_upnp)); changes.put(TransportManager.PROP_ENABLE_UPNP, Boolean.toString(_upnp));
...@@ -396,7 +401,7 @@ public class ConfigNetHandler extends FormHandler { ...@@ -396,7 +401,7 @@ public class ConfigNetHandler extends FormHandler {
addFormNotice(_t("Disabling UDP")); addFormNotice(_t("Disabling UDP"));
else else
addFormNotice(_t("Enabling UDP")); addFormNotice(_t("Enabling UDP"));
restartRequired = true; fullRestartRequired = true;
} }
changes.put(TransportManager.PROP_ENABLE_UDP, Boolean.toString(!_udpDisabled)); changes.put(TransportManager.PROP_ENABLE_UDP, Boolean.toString(!_udpDisabled));
...@@ -424,6 +429,8 @@ public class ConfigNetHandler extends FormHandler { ...@@ -424,6 +429,8 @@ public class ConfigNetHandler extends FormHandler {
if (saved && !error) { if (saved && !error) {
if (switchRequired) { if (switchRequired) {
hiddenSwitch(); hiddenSwitch();
} else if (fullRestartRequired) {
addFormNotice(_t("Restart required to take effect"));
} else if (restartRequired) { } else if (restartRequired) {
//if (_context.hasWrapper()) { //if (_context.hasWrapper()) {
// Wow this dumps all conns immediately and really isn't nice // Wow this dumps all conns immediately and really isn't nice
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment