# HG changeset patch # User Matthew Wild # Date 1235950421 0 # Node ID edbd0d1fce931f934f140c3732ea98bc6c744f00 # Parent 5049b4512df08fcf503c07e31312ace7e6f5c488 net.server: Don't retry if client closes socket during SSL handshaking diff -r 5049b4512df0 -r edbd0d1fce93 net/server.lua --- a/net/server.lua Sat Feb 28 23:16:27 2009 +0000 +++ b/net/server.lua Sun Mar 01 23:33:41 2009 +0000 @@ -489,7 +489,7 @@ read, wrote = nil, nil _, err = client:dohandshake( ) if not err then - --out_put( "server.lua: ssl handshake done" ) + out_put( "server.lua: ssl handshake done" ) handler.readbuffer = _readbuffer -- when handshake is done, replace the handshake function with regular functions handler.sendbuffer = _sendbuffer -- return dispatch( handler ) @@ -504,12 +504,14 @@ _readlistlen = _readlistlen + 1 _readlist [ _readlistlen ] = client read = true + else + break; end --coroutine_yield( handler, nil, err ) -- handshake not finished coroutine_yield( ) end end - disconnect( handler, "max handshake attemps exceeded" ) + disconnect( handler, "ssl handshake failed" ) handler.close( true ) -- forced disconnect return false -- handshake failed end