propagate from branch 'i2p.i2p' (head 36eae7cbb8817fb68bb042e8207c6c955264f393)

to branch 'i2p.i2p.zzz.test' (head 33f78a361bfef38b120fdf55d9e9535f3be96d6e)
This commit is contained in:
zzz
2012-02-25 17:49:09 +00:00
30 changed files with 5955 additions and 5146 deletions

View File

@@ -60,6 +60,14 @@ public abstract class I2PTunnelTask extends EventDispatcherImpl {
public abstract boolean close(boolean forced);
/**
* For tasks that don't call I2PTunnel.addSession() directly
* @since 0.8.13
*/
public void connected(I2PSession session) {
getTunnel().addSession(session);
}
public void disconnected(I2PSession session) {
routerDisconnected();
getTunnel().removeSession(session);

View File

@@ -107,6 +107,7 @@ import net.i2p.util.Log;
try {
ByteArrayInputStream in = new ByteArrayInputStream(key);
_session = client.createSession(in, tunnel.getClientOptions());
connected(_session);
} catch(Exception exc) {
throw new RuntimeException("failed to create session", exc);
}

View File

@@ -103,6 +103,7 @@ public class I2PTunnelUDPServerBase extends I2PTunnelTask implements Source, Sin
try {
_session = client.createSession(privData, getTunnel().getClientOptions());
connected(_session);
} catch(I2PSessionException exc) {
throw new RuntimeException("failed to create session", exc);
}

View File

@@ -342,7 +342,8 @@ public class IndexBean {
String pk = cur.getPrivKeyFile();
if (pk == null)
pk = _privKeyFile;
if (pk != null && pk.startsWith("i2ptunnel") && pk.endsWith("-privKeys.dat")) {
if (pk != null && pk.startsWith("i2ptunnel") && pk.endsWith("-privKeys.dat") &&
((!isClient(cur.getType())) || cur.getPersistentClientKey())) {
File pkf = new File(_context.getConfigDir(), pk);
if (pkf.exists()) {
String name = cur.getName();