merge of '9e658a1b1e62b486a399a162ceb27fe3461a9eb0'

and 'fe3561146f8172bdb86292eade40a031b7dee4fb'
This commit is contained in:
zzz
2010-02-06 18:53:18 +00:00
5 changed files with 30 additions and 5 deletions

View File

@@ -662,10 +662,10 @@ public class I2PSnarkServlet extends HttpServlet {
client = "Azureus";
else if ("CwsL".equals(ch))
client = "I2PSnarkXL";
else if ("ZV".equals(ch.substring(2,4)))
client = "Robert";
else if ("VUZP".equals(ch))
else if ("ZV".equals(ch.substring(2,4)) || "VUZP".equals(ch))
client = "Robert";
else if (ch.startsWith("LV")) // LVCS 1.0.2?; LVRS 1.0.4
client = "Transmission";
else
client = _("Unknown") + " (" + ch + ')';
out.write(client + "  " + peer.toString().substring(5, 9));

View File

@@ -124,6 +124,7 @@ public class ConfigUpdateHandler extends FormHandler {
}
if ( (_trustedKeys != null) && (_trustedKeys.length() > 0) ) {
_trustedKeys = _trustedKeys.replaceAll("\r\n", ",").replaceAll("\n", ",");
String oldKeys = new TrustedUpdate(_context).getTrustedKeysString();
if ( (oldKeys == null) || (!_trustedKeys.equals(oldKeys)) ) {
_context.router().setConfigSetting(PROP_TRUSTED_KEYS, _trustedKeys);

View File

@@ -1,5 +1,7 @@
<!--
<i2p.news date="$Date: 2010-01-22 00:00:00 $">
<i2p.release version="0.7.10" date="2010/01/22" minVersion="0.6"/>
-->
<h4><ul><li>Congratulations on getting I2P installed!</li></ul></h4>
<p>
<b>Welcome to I2P!</b>
@@ -47,5 +49,4 @@ Verbinde deinen IRC Klienten mit dem Server auf <b>localhost:6668</b> und sage H
<p>
<b>Не забудьте заглянуть</b> в наш <a href="http://www.i2p2.i2p/faq_ru.html">FAQ</a>.
</p>
</i2p.news>

View File

@@ -1,5 +1,7 @@
<!--
<i2p.news date="$Date: 2010-01-22 00:00:00 $">
<i2p.release version="0.7.10" date="2010/01/22" minVersion="0.6" />
-->
<h4><ul><li>2010-01-22: <b>0.7.10 <a href="http://www.i2p2.i2p/release-0.7.10.html">Released</a></b></li></ul></h4>
<p>
0.7.10 closes some recently-discovered vulnerabilities related to the
@@ -17,4 +19,3 @@ or <a href="http://www.i2p2.i2p/donate.html">donate</a>!
We are still looking for help on new and existing translations.
Please volunteer on <a href="irc://127.0.0.1:6668/i2p">IRC #i2p</a>.
</p>
</i2p.news>

View File

@@ -421,7 +421,18 @@ public class NTCPTransport extends TransportImpl {
private static final int NUM_CONCURRENT_READERS = 3;
private static final int NUM_CONCURRENT_WRITERS = 3;
/**
* Called by TransportManager.
* Caller should stop the transport first, then
* verify stopped with isAlive()
* Unfortunately TransportManager doesn't do that, so we
* check here to prevent two pumpers.
* @return appears to be ignored by caller
*/
public synchronized RouterAddress startListening() {
// try once again to prevent two pumpers which is fatal
if (_pumper.isAlive())
return _myAddress != null ? _myAddress.toRouterAddress() : null;
if (_log.shouldLog(Log.WARN)) _log.warn("Starting ntcp transport listening");
_finisher.start();
_pumper.startPumping();
@@ -433,7 +444,17 @@ public class NTCPTransport extends TransportImpl {
return bindAddress();
}
/**
* Only called by CSFI.
* Caller should stop the transport first, then
* verify stopped with isAlive()
* @return appears to be ignored by caller
*/
public synchronized RouterAddress restartListening(RouterAddress addr) {
// try once again to prevent two pumpers which is fatal
// we could just return null since the return value is ignored
if (_pumper.isAlive())
return _myAddress != null ? _myAddress.toRouterAddress() : null;
if (_log.shouldLog(Log.WARN)) _log.warn("Restarting ntcp transport listening");
_finisher.start();
_pumper.startPumping();
@@ -452,6 +473,7 @@ public class NTCPTransport extends TransportImpl {
return _pumper.isAlive();
}
/** call from synchronized method */
private RouterAddress bindAddress() {
if (_myAddress != null) {
try {