diff --git a/apps/i2ptunnel/java/src/net/i2p/i2ptunnel/I2PTunnelClientBase.java b/apps/i2ptunnel/java/src/net/i2p/i2ptunnel/I2PTunnelClientBase.java
index 335833276a9637092a785cb7f598caff20a938a4..a0a68aa43b5429eb2a76a023a9a1e07f0d8da2a9 100644
--- a/apps/i2ptunnel/java/src/net/i2p/i2ptunnel/I2PTunnelClientBase.java
+++ b/apps/i2ptunnel/java/src/net/i2p/i2ptunnel/I2PTunnelClientBase.java
@@ -491,6 +491,8 @@ public abstract class I2PTunnelClientBase extends I2PTunnelTask implements Runna
                     // FIXME there is a loop in buildSocketManager(), do we really need another one here?
                     // no matter, buildSocketManager() now throws an IllegalArgumentException
                     try { Thread.sleep(10*1000); } catch (InterruptedException ie) {}
+                } else {
+                    l.log("Tunnels ready for client: " + _handlerName);
                 }
             }
             // can't be null unless we limit the loop above
@@ -498,7 +500,6 @@ public abstract class I2PTunnelClientBase extends I2PTunnelTask implements Runna
             //    l.log("Invalid I2CP configuration");
             //    throw new IllegalArgumentException("Socket manager could not be created");
             //}
-            l.log("Tunnels ready for client: " + _handlerName);
 
         } // else delay creating session until createI2PSocket() is called
         startup();
@@ -720,6 +721,7 @@ public abstract class I2PTunnelClientBase extends I2PTunnelTask implements Runna
             }
             if (open) {
                 _log.error("Error listening for connections on " + addr + " port " + localPort, ex);
+                l.log("Error listening for connections on " + addr + " port " + localPort + ": " + ex);
                 notifyEvent("openBaseClientResult", "error");
                 close(true);
             }