428 end |
428 end |
429 return noread, nosend |
429 return noread, nosend |
430 end |
430 end |
431 local _readbuffer = function( ) -- this function reads data |
431 local _readbuffer = function( ) -- this function reads data |
432 local buffer, err, part = receive( socket, pattern ) -- receive buffer with "pattern" |
432 local buffer, err, part = receive( socket, pattern ) -- receive buffer with "pattern" |
433 if not err or (err == "wantread" or err == "timeout") or string_len(part) > 0 then -- received something |
433 if not err or (err == "wantread" or err == "timeout") or (part and string_len(part) > 0) then -- received something |
434 local buffer = buffer or part or "" |
434 local buffer = buffer or part or "" |
435 local len = string_len( buffer ) |
435 local len = string_len( buffer ) |
436 if len > maxreadlen then |
436 if len > maxreadlen then |
437 disconnect( handler, "receive buffer exceeded" ) |
437 disconnect( handler, "receive buffer exceeded" ) |
438 handler:close( true ) |
438 handler:close( true ) |