Hi, > as I'd read out of previous Messages other people already had the same > error in 1.6.7 W32. Is there a work-around, Bugfix available? The following code is working reliably for me in 1.6.6 mswin32, and (I think!!!!!!!) 1.6.7 mswin32. (Unfortunately the machine running 1.6.7 went down last night and I can't prove it has 1.6.7, but I'm pretty sure it does, I installed it a couple days ago.) Anyway for what it's worth here's the code. I notice there are a couple differences which may or may not be relevant in comparison to your example. (I'm not doing connect. I am doing select...) UDP_RECV_TIMEOUT = 3 # seconds def q2cmd(str) resp, sock = nil, nil begin cmd = "\377\377\377\377#{str}\0" sock = UDPSocket.open sock.send(cmd, 0, @server_addr, @server_port) resp = if select([sock], nil, nil, UDP_RECV_TIMEOUT) sock.recvfrom(65536) end if resp resp[0] = resp[0][4..-1] # trim leading 0xffffffff end rescue IOError, SystemCallError ensure sock.close if sock end resp end > Script: > > require "socket" > > $address = "217.10.140.222" > $port = 12203 > $command = "\xff\xff\xff\xff\x02getstatus\n" > > sock = UDPSocket.open > sock.connect($address, $port) > sock.send($command,0) > $result = sock.recvfrom(10,0) > puts $result Hope this helps, Bill P.S. What version of quake is yours for? <grin>