Hi, How can I determine if a TCPSocket has been closed? I have written this tool which acts as a proxy and displays everything that passes thru it. I have a pop3 server running, and set my e-mail client to connect to my TCPServer that listens on port 555. I can see the whole pop3-e-mail-check transaction. But when the e-mail client is finished, and the pop3 server says good bye, socket.closed? still returns false. Is it a bad idea to use the IO class ".closed?" ? Script follows. Thanks in advance. -Lars ############################################### require 'socket' server = TCPServer.open('localhost', 555) loop do outlook = server.accept socket = TCPSocket.open('localhost', 110) shouldQuit = false Thread.new do loop do data = socket.sysread(500) print data outlook.syswrite(data) end end Thread.new do loop do data = outlook.sysread(500) print data socket.syswrite(data) end end while not outlook.closed? end socket.close end server.close ###############################################