forked from I2P_Developers/i2p.i2p
* Console:
- config.jsp now cause graceful restart * UPnP: - Tweak to help startup problems * UDP: - Only save IP when it changes
This commit is contained in:
@ -215,16 +215,16 @@ public class ConfigNetHandler extends FormHandler {
|
|||||||
if (switchRequired) {
|
if (switchRequired) {
|
||||||
_context.router().setConfigSetting(PROP_HIDDEN, "" + _hiddenMode);
|
_context.router().setConfigSetting(PROP_HIDDEN, "" + _hiddenMode);
|
||||||
if (_hiddenMode)
|
if (_hiddenMode)
|
||||||
addFormNotice("Gracefully restarting into Hidden Router Mode. Make sure you have no 0-1 length "
|
addFormError("Gracefully restarting into Hidden Router Mode");
|
||||||
+ "<a href=\"configtunnels.jsp\">tunnels!</a>");
|
|
||||||
else
|
else
|
||||||
addFormNotice("Gracefully restarting to exit Hidden Router Mode");
|
addFormError("Gracefully restarting to exit Hidden Router Mode");
|
||||||
}
|
}
|
||||||
|
|
||||||
_context.router().setConfigSetting(Router.PROP_DYNAMIC_KEYS, "" + _dynamicKeys);
|
_context.router().setConfigSetting(Router.PROP_DYNAMIC_KEYS, "" + _dynamicKeys);
|
||||||
|
|
||||||
if (Boolean.valueOf(_context.getProperty(TransportManager.PROP_ENABLE_UPNP)).booleanValue() !=
|
if (Boolean.valueOf(_context.getProperty(TransportManager.PROP_ENABLE_UPNP)).booleanValue() !=
|
||||||
_upnp) {
|
_upnp) {
|
||||||
|
// This is minor, don't set restartRequired
|
||||||
if (_upnp)
|
if (_upnp)
|
||||||
addFormNotice("Enabling UPnP, restart required to take effect");
|
addFormNotice("Enabling UPnP, restart required to take effect");
|
||||||
else
|
else
|
||||||
@ -240,9 +240,11 @@ public class ConfigNetHandler extends FormHandler {
|
|||||||
}
|
}
|
||||||
|
|
||||||
// Time sync enable, means NOT disabled
|
// Time sync enable, means NOT disabled
|
||||||
_context.router().setConfigSetting(Timestamper.PROP_DISABLED, "false");
|
// Hmm router sets this at startup, not required here
|
||||||
|
//_context.router().setConfigSetting(Timestamper.PROP_DISABLED, "false");
|
||||||
|
|
||||||
LoadTestManager.setEnableLoadTesting(_context, _enableLoadTesting);
|
// Hidden in the GUI
|
||||||
|
//LoadTestManager.setEnableLoadTesting(_context, _enableLoadTesting);
|
||||||
}
|
}
|
||||||
|
|
||||||
boolean saved = _context.router().saveConfig();
|
boolean saved = _context.router().saveConfig();
|
||||||
@ -256,14 +258,24 @@ public class ConfigNetHandler extends FormHandler {
|
|||||||
if (switchRequired) {
|
if (switchRequired) {
|
||||||
hiddenSwitch();
|
hiddenSwitch();
|
||||||
} else if (restartRequired) {
|
} else if (restartRequired) {
|
||||||
|
// Wow this dumps all conns immediately and really isn't nice
|
||||||
//addFormNotice("Performing a soft restart");
|
//addFormNotice("Performing a soft restart");
|
||||||
//_context.router().restart();
|
//_context.router().restart();
|
||||||
//addFormNotice("Soft restart complete");
|
//addFormNotice("Soft restart complete");
|
||||||
|
|
||||||
// Most of the time we aren't changing addresses, just enabling or disabling
|
// Most of the time we aren't changing addresses, just enabling or disabling
|
||||||
// things, so let's try just a new routerInfo and see how that works.
|
// things, so let's try just a new routerInfo and see how that works.
|
||||||
// Maybe we should restart if we change addresses though?
|
// Maybe we should restart if we change addresses though?
|
||||||
_context.router().rebuildRouterInfo();
|
// No, this doesn't work well, really need to call SSU Transport externalAddressReceived(),
|
||||||
addFormNotice("Router Info rebuilt");
|
// but that's hard to get to, and doesn't handle port changes, etc.
|
||||||
|
// So don't do this...
|
||||||
|
//_context.router().rebuildRouterInfo();
|
||||||
|
//addFormNotice("Router Info rebuilt");
|
||||||
|
|
||||||
|
// There's a few changes that don't really require restart (e.g. enabling inbound TCP)
|
||||||
|
// But it would be hard to get right, so just do a restart.
|
||||||
|
addFormError("Gracefully restarting I2P to change published router address");
|
||||||
|
_context.router().shutdownGracefully(Router.EXIT_GRACEFUL_RESTART);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -115,7 +115,7 @@
|
|||||||
%>
|
%>
|
||||||
<br />
|
<br />
|
||||||
<input type="radio" name="udpAutoIP" value="hidden" <%=nethelper.getUdpAutoIPChecked(2) %> />
|
<input type="radio" name="udpAutoIP" value="hidden" <%=nethelper.getUdpAutoIPChecked(2) %> />
|
||||||
Hidden mode - do not publish IP <i>(prevents participating traffic; change restarts router)</i><br />
|
Hidden mode - do not publish IP <i>(prevents participating traffic)</i><br />
|
||||||
</p><p>
|
</p><p>
|
||||||
<b>UDP Configuration:</b><br />
|
<b>UDP Configuration:</b><br />
|
||||||
UDP port:
|
UDP port:
|
||||||
@ -142,7 +142,7 @@
|
|||||||
<input type="radio" name="ntcpAutoIP" value="false" <%=nethelper.getTcpAutoIPChecked(0) %> />
|
<input type="radio" name="ntcpAutoIP" value="false" <%=nethelper.getTcpAutoIPChecked(0) %> />
|
||||||
Disable inbound (Firewalled)<br />
|
Disable inbound (Firewalled)<br />
|
||||||
<input type="radio" name="ntcpAutoIP" value="disabled" <%=nethelper.getTcpAutoIPChecked(4) %> />
|
<input type="radio" name="ntcpAutoIP" value="disabled" <%=nethelper.getTcpAutoIPChecked(4) %> />
|
||||||
Completely disable <i>(select only if behind a firewall that throttles or blocks outbound TCP - change requires restart)</i><br />
|
Completely disable <i>(select only if behind a firewall that throttles or blocks outbound TCP)</i><br />
|
||||||
</p><p>
|
</p><p>
|
||||||
Externally reachable TCP port:<br />
|
Externally reachable TCP port:<br />
|
||||||
<input type="radio" name="ntcpAutoPort" value="2" <%=nethelper.getTcpAutoPortChecked(2) %> />
|
<input type="radio" name="ntcpAutoPort" value="2" <%=nethelper.getTcpAutoPortChecked(2) %> />
|
||||||
@ -151,8 +151,7 @@
|
|||||||
<input type="radio" name="ntcpAutoPort" value="1" <%=nethelper.getTcpAutoPortChecked(1) %> />
|
<input type="radio" name="ntcpAutoPort" value="1" <%=nethelper.getTcpAutoPortChecked(1) %> />
|
||||||
Specify Port:
|
Specify Port:
|
||||||
<input name ="ntcpport" type="text" size="5" maxlength="5" value="<jsp:getProperty name="nethelper" property="ntcpport" />" /><br />
|
<input name ="ntcpport" type="text" size="5" maxlength="5" value="<jsp:getProperty name="nethelper" property="ntcpport" />" /><br />
|
||||||
</p><p><b>Note: changing any of these settings will terminate all of your connections and effectively
|
</p><p><b>Note: Changing these settings will restart your router.</b>
|
||||||
restart your router.</b>
|
|
||||||
</p>
|
</p>
|
||||||
<input type="submit" name="save" value="Save changes" /> <input type="reset" value="Cancel" /><br />
|
<input type="submit" name="save" value="Save changes" /> <input type="reset" value="Cancel" /><br />
|
||||||
<hr />
|
<hr />
|
||||||
|
@ -30,7 +30,7 @@ public class UPnPManager {
|
|||||||
private RouterContext _context;
|
private RouterContext _context;
|
||||||
private UPnP _upnp;
|
private UPnP _upnp;
|
||||||
private UPnPCallback _upnpCallback;
|
private UPnPCallback _upnpCallback;
|
||||||
private boolean _isRunning;
|
private volatile boolean _isRunning;
|
||||||
private InetAddress _detectedAddress;
|
private InetAddress _detectedAddress;
|
||||||
private TransportManager _manager;
|
private TransportManager _manager;
|
||||||
/**
|
/**
|
||||||
|
@ -477,9 +477,12 @@ public class UDPTransport extends TransportImpl implements TimedWeightedPriority
|
|||||||
// queue a country code lookup of the new IP
|
// queue a country code lookup of the new IP
|
||||||
_context.commSystem().queueLookup(ourIP);
|
_context.commSystem().queueLookup(ourIP);
|
||||||
// store these for laptop-mode (change ident on restart... or every time... when IP changes)
|
// store these for laptop-mode (change ident on restart... or every time... when IP changes)
|
||||||
_context.router().setConfigSetting(PROP_IP, _externalListenHost.getHostAddress());
|
String oldIP = _context.getProperty(PROP_IP);
|
||||||
_context.router().setConfigSetting(PROP_IP_CHANGE, "" + _context.clock().now());
|
if (!_externalListenHost.getHostAddress().equals(oldIP)) {
|
||||||
_context.router().saveConfig();
|
_context.router().setConfigSetting(PROP_IP, _externalListenHost.getHostAddress());
|
||||||
|
_context.router().setConfigSetting(PROP_IP_CHANGE, "" + _context.clock().now());
|
||||||
|
_context.router().saveConfig();
|
||||||
|
}
|
||||||
_context.router().rebuildRouterInfo();
|
_context.router().rebuildRouterInfo();
|
||||||
}
|
}
|
||||||
_testEvent.forceRun();
|
_testEvent.forceRun();
|
||||||
|
Reference in New Issue
Block a user