forked from I2P_Developers/i2p.i2p
I2CP Multisession - Work in progress:
Stub out hardcoded list of DSA-only destinations Tweak client name length in summary bar Force initial leaseset request for subsession Send SessionStatus msg before LS request for subsession
This commit is contained in:
@ -401,7 +401,7 @@ class ClientManager {
|
||||
public void requestLeaseSet(Destination dest, LeaseSet set, long timeout, Job onCreateJob, Job onFailedJob) {
|
||||
ClientConnectionRunner runner = getRunner(dest);
|
||||
if (runner == null) {
|
||||
if (_log.shouldLog(Log.ERROR))
|
||||
if (_log.shouldLog(Log.WARN))
|
||||
_log.warn("Cannot request the lease set, as we can't find a client runner for "
|
||||
+ dest.calculateHash().toBase64() + ". disconnected?");
|
||||
_ctx.jobQueue().addJob(onFailedJob);
|
||||
@ -424,6 +424,10 @@ class ClientManager {
|
||||
if (runner != null) {
|
||||
// no need to fire off any jobs...
|
||||
runner.requestLeaseSet(dest, ls, REQUEST_LEASESET_TIMEOUT, null, null);
|
||||
} else {
|
||||
if (_log.shouldLog(Log.WARN))
|
||||
_log.warn("Cannot request the lease set, as we can't find a client runner for "
|
||||
+ dest + ". disconnected?");
|
||||
}
|
||||
}
|
||||
|
||||
|
@ -289,16 +289,19 @@ class ClientMessageEventListener implements I2CPMessageReader.I2CPMessageEventLi
|
||||
if (pcfg != null) {
|
||||
ClientTunnelSettings settings = new ClientTunnelSettings(dest.calculateHash());
|
||||
settings.readFromProperties(props);
|
||||
// addAlias() sends the create lease set msg, so we have to send the SMS first
|
||||
sendStatusMessage(id, status);
|
||||
boolean ok = _context.tunnelManager().addAlias(dest, settings, pcfg.getDestination());
|
||||
if (!ok) {
|
||||
_log.error("Add alias failed");
|
||||
status = SessionStatusMessage.STATUS_REFUSED;
|
||||
// FIXME cleanup
|
||||
}
|
||||
} else {
|
||||
_log.error("no primary config?");
|
||||
status = SessionStatusMessage.STATUS_INVALID;
|
||||
sendStatusMessage(id, status);
|
||||
// FIXME cleanup
|
||||
}
|
||||
sendStatusMessage(id, status);
|
||||
}
|
||||
}
|
||||
|
||||
|
@ -34,6 +34,7 @@ public class AliasedTunnelPool extends TunnelPool {
|
||||
if (_log.shouldLog(Log.INFO))
|
||||
_log.info(toString() + ": Startup() called, was already alive? " + _alive, new Exception());
|
||||
_alive = true;
|
||||
super.refreshLeaseSet();
|
||||
}
|
||||
|
||||
@Override
|
||||
|
@ -607,7 +607,7 @@ public class TunnelPool {
|
||||
if (_settings.isInbound() && !_settings.isExploratory()) {
|
||||
if (_log.shouldLog(Log.DEBUG))
|
||||
_log.debug(toString() + ": refreshing leaseSet on tunnel expiration (but prior to grace timeout)");
|
||||
LeaseSet ls = null;
|
||||
LeaseSet ls;
|
||||
synchronized (_tunnels) {
|
||||
ls = locked_buildNewLeaseSet();
|
||||
}
|
||||
|
Reference in New Issue
Block a user