diff --git a/installer/resources/certificates/reseed.info.crt b/installer/resources/certificates/reseed.info.crt index 31302c52bd6b87aeca9f40071cda8bfafbba7d6f..bca5984785c3289ce7694abe5a04d71c43839f52 100644 --- a/installer/resources/certificates/reseed.info.crt +++ b/installer/resources/certificates/reseed.info.crt @@ -1,20 +1,20 @@ -----BEGIN CERTIFICATE----- -MIIDRDCCAiwCCQDCm/Zrmali9zANBgkqhkiG9w0BAQUFADBkMQswCQYDVQQGEwJB -VTETMBEGA1UECBMKU29tZS1TdGF0ZTELMAkGA1UEBxMCSEgxDDAKBgNVBAoTA0ky -UDEPMA0GA1UECxMGcmVzZWVkMRQwEgYDVQQDEwtyZXNlZWQuaW5mbzAeFw0xMjEw -MjcxODU3NDNaFw0xNjEyMDUxODU3NDNaMGQxCzAJBgNVBAYTAkFVMRMwEQYDVQQI -EwpTb21lLVN0YXRlMQswCQYDVQQHEwJISDEMMAoGA1UEChMDSTJQMQ8wDQYDVQQL -EwZyZXNlZWQxFDASBgNVBAMTC3Jlc2VlZC5pbmZvMIIBIjANBgkqhkiG9w0BAQEF -AAOCAQ8AMIIBCgKCAQEAt9nz0iUvjdX4Hkhfk0FbBOeEP4i/FG3V4VrEdQfcviSF -XgzGYeRtGsvrFWP/5+6bcGnOkIy/jrKJfij3AjKJh8gTzqiNNNnV8VcHwFSNp+hZ -D4BM+UHPACV1Pjd3HQe6f0+LvcTs3HQgIkNkwUyqRuXOm/5Mk6SWSu1740aSwHCj -Kk0x1FByzI0YBvXCPX6TVk6sJqKkQyLzK0CSGSeqUq8GvGCq+jT9k62Su7ooxCwi -GzxaFjMdVYxuI8cuT5Cni+SUw1Ia8vhESnIy6slwzk37xNI80VuMvRT6rD2KcXDH -mK7ml1qL0rJWoF5AE+x/nen4V41mouv1W9rk3wTlTQIDAQABMA0GCSqGSIb3DQEB -BQUAA4IBAQAr6RBviBDW4bnPDTcdtstTDdaYX9yzoh+zzeGB0dUR26GKoOjpSItb -B9nrsW1eJ2wbblfGBUoXhcmNByKHXXHejMhmurHjdei2BuLbTsknN8DPKXu5UF9z -cg4cKQkxgzXOcNYlaF4+sfwFXDHJ4we/8vduVgkyo8R66543/Sh/nIMvq2slRT4w -wIBOVcMb2XxlbdwHW9XALAz9sto+4GH9GAC24f8ngluOpHijMnOOIo4dHibQ5hM9 -KcDpHezP0ugMTAxS2NmtVahwAqa2IjpqR7aEQ2wLvxQzDqrXo93L93+b2FKRUQXH -Duud/n/w0kVV3DaIGikOsJayoanR+9HD +MIIDMjCCAhoCCQCGQa3FtL3BhTANBgkqhkiG9w0BAQUFADBbMQswCQYDVQQGEwJB +VTETMBEGA1UECBMKU29tZS1TdGF0ZTEhMB8GA1UEChMYSW50ZXJuZXQgV2lkZ2l0 +cyBQdHkgTHRkMRQwEgYDVQQDEwt3d3cuNjltZS5kZTAeFw0xMjExMDIxMjE4NTBa +Fw0xMzExMDIxMjE4NTBaMFsxCzAJBgNVBAYTAkFVMRMwEQYDVQQIEwpTb21lLVN0 +YXRlMSEwHwYDVQQKExhJbnRlcm5ldCBXaWRnaXRzIFB0eSBMdGQxFDASBgNVBAMT +C3d3dy42OW1lLmRlMIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEA3g0m +5bhA2m3xjnJOYNDRtG5BdnHai8rybjjcTYSDEDX5OxV3Jjqtk1LLbf1fZx+s+EKw +6/+g+TLRhjE5d06puRmpyxpywllWT1OUK74QWYKCpmDY4ez2yTC+iSG9RDDNVzQf +24d2/tzyAOgETUBh3CP1HEdaLaZC+uSI+JlafIeGG5bAGYcCXTB7qUbvAkMsak/N +w18h/Sa2xa9rE1EYEb8AqpJYM3dzLlo1PdoWEq6G9h/N+3W0g/qAVGLfSZMSUFZ0 +Uc77i3oFgk2YMdnP7+sa3MImscu0rV+/UptuvuktYld9KScGMHJsUYh1q77ClEAZ +KFJBKzivpSjSRcmULQIDAQABMA0GCSqGSIb3DQEBBQUAA4IBAQAVCMB81jxN9kNv +rKGaI2Vlt82Wj1d9LmxAyTQC1f1lGwVgFBrpIkwhHzmudyEYdmag02QP9DLcQ4I/ +LNe5PdFL6Mzfl3QNoYXeaJeiAZhwkQbSM2DYEN9nGaEU/y2LJWvfAH75vcun+oIl +7CvntdQzdZYmtcK0NgjCwY/CD97DyZRkLNjJdkKUvpf1lO4Egf+NheSmzVLo5/5u +/DwTqSfPuyhfb4L2pA1e6M9gLzyAPmP4nx+gToHzY54CB/kyuYk5JOY4IJaGAW3F +YBSYr8/pwXWISCrQi6afB29Ng8WlpWiNqj/yC+X5K9eTihlh2Mun0k/cWgg6JYAm +tt0UhRK0 -----END CERTIFICATE----- diff --git a/router/java/src/net/i2p/router/transport/ntcp/EventPumper.java b/router/java/src/net/i2p/router/transport/ntcp/EventPumper.java index 98a3127e4147d37d271dd8e7bb45198cbe401d5c..6c9d2c0ce5c01c124c0b3c758847da94692ce0d0 100644 --- a/router/java/src/net/i2p/router/transport/ntcp/EventPumper.java +++ b/router/java/src/net/i2p/router/transport/ntcp/EventPumper.java @@ -692,7 +692,8 @@ class EventPumper implements Runnable { } } else { // Nothing more to write - key.interestOps(key.interestOps() & ~SelectionKey.OP_WRITE); + if (key.isValid()) + key.interestOps(key.interestOps() & ~SelectionKey.OP_WRITE); break; } } diff --git a/router/java/src/net/i2p/router/tunnel/pool/BuildRequestor.java b/router/java/src/net/i2p/router/tunnel/pool/BuildRequestor.java index 06bbaf49055139bb857ed081ece1f36a66060ee4..80bd1803afe36097e3dc6a8f9410df16a070b240 100644 --- a/router/java/src/net/i2p/router/tunnel/pool/BuildRequestor.java +++ b/router/java/src/net/i2p/router/tunnel/pool/BuildRequestor.java @@ -160,7 +160,7 @@ abstract class BuildRequestor { if (cfg.isInbound()) { if (log.shouldLog(Log.INFO)) log.info("Sending the tunnel build request " + msg.getUniqueId() + " out the tunnel " + pairedTunnel + " to " - + cfg.getPeer(0).toBase64() + " for " + cfg + " waiting for the reply of " + + cfg.getPeer(0) + " for " + cfg + " waiting for the reply of " + cfg.getReplyMessageId()); // send it out a tunnel targetting the first hop // TODO - would be nice to have a TunnelBuildFirstHopFailJob queued if the @@ -168,7 +168,7 @@ abstract class BuildRequestor { ctx.tunnelDispatcher().dispatchOutbound(msg, pairedTunnel.getSendTunnelId(0), cfg.getPeer(0)); } else { if (log.shouldLog(Log.INFO)) - log.info("Sending the tunnel build request directly to " + cfg.getPeer(1).toBase64() + log.info("Sending the tunnel build request directly to " + cfg.getPeer(1) + " for " + cfg + " waiting for the reply of " + cfg.getReplyMessageId() + " with msgId=" + msg.getUniqueId()); // send it directly to the first hop @@ -183,8 +183,8 @@ abstract class BuildRequestor { outMsg.setPriority(PRIORITY); RouterInfo peer = ctx.netDb().lookupRouterInfoLocally(cfg.getPeer(1)); if (peer == null) { - if (log.shouldLog(Log.ERROR)) - log.error("Could not find the next hop to send the outbound request to: " + cfg); + if (log.shouldLog(Log.WARN)) + log.warn("Could not find the next hop to send the outbound request to: " + cfg); exec.buildComplete(cfg, pool); return; } @@ -300,7 +300,7 @@ abstract class BuildRequestor { if (peerInfo == null) { if (log.shouldLog(Log.WARN)) log.warn("Peer selected for hop " + i + "/" + hop + " was not found locally: " - + peer.toBase64() + " for " + cfg); + + peer + " for " + cfg); return null; } else { key = peerInfo.getIdentity().getPublicKey(); @@ -343,9 +343,9 @@ abstract class BuildRequestor { * Can't do this for inbound tunnels since the msg goes out an expl. tunnel. */ private static class TunnelBuildFirstHopFailJob extends JobImpl { - final TunnelPool _pool; - final PooledTunnelCreatorConfig _cfg; - final BuildExecutor _exec; + private final TunnelPool _pool; + private final PooledTunnelCreatorConfig _cfg; + private final BuildExecutor _exec; private TunnelBuildFirstHopFailJob(RouterContext ctx, TunnelPool pool, PooledTunnelCreatorConfig cfg, BuildExecutor exec) { super(ctx); _cfg = cfg;