diff --git a/src/yggdrasil/conn.go b/src/yggdrasil/conn.go index 3df7c793..9ce5563d 100644 --- a/src/yggdrasil/conn.go +++ b/src/yggdrasil/conn.go @@ -274,6 +274,10 @@ func (c *Conn) Write(b []byte) (bytesWritten int, err error) { c.writebuf = c.writebuf[1:] } return len(b), nil + } else { + // This triggers some session keepalive traffic + // FIXME this desparately needs to be refactored, since the ping case needlessly goes through the router goroutine just to have it pass a function to the session worker when it determines that a session already exists. + c.core.router.doAdmin(c.startSearch) } var packet []byte done := make(chan struct{})