Updates: Fail fast if HTTP proxy is not running (ticket #1530)

Covers router, unsigned router, plugin, and news updates
This commit is contained in:
zzz
2015-04-24 16:08:08 +00:00
parent 37c6ac3a88
commit aecc95825b
9 changed files with 127 additions and 9 deletions

View File

@@ -36,6 +36,7 @@ import static net.i2p.update.UpdateMethod.*;
import net.i2p.util.EepGet;
import net.i2p.util.FileUtil;
import net.i2p.util.Log;
import net.i2p.util.PortMapper;
import net.i2p.util.ReusableGZIPInputStream;
import net.i2p.util.SecureFileOutputStream;
import net.i2p.util.SSLEepGet;
@@ -82,6 +83,13 @@ class NewsFetcher extends UpdateRunner {
boolean shouldProxy = _context.getProperty(ConfigUpdateHandler.PROP_SHOULD_PROXY_NEWS, ConfigUpdateHandler.DEFAULT_SHOULD_PROXY_NEWS);
String proxyHost = _context.getProperty(ConfigUpdateHandler.PROP_PROXY_HOST, ConfigUpdateHandler.DEFAULT_PROXY_HOST);
int proxyPort = ConfigUpdateHandler.proxyPort(_context);
if (shouldProxy && proxyPort == ConfigUpdateHandler.DEFAULT_PROXY_PORT_INT &&
proxyHost.equals(ConfigUpdateHandler.DEFAULT_PROXY_HOST) &&
_context.portMapper().getPort(PortMapper.SVC_HTTP_PROXY) < 0) {
if (_log.shouldWarn())
_log.warn("Cannot fetch news - HTTP client tunnel not running");
return;
}
for (URI uri : _urls) {
_currentURI = uri;