Originally Posted By: Khaled
That said, I have not been able to reproduce this issue here.

Wims left out the core cause of the problem, which is that the server sends a packet to the client. This slightly extended version should be able to reproduce the actual issue:

Code:
alias pacutest {
  ; a server is started
  sockudp -k pacuserv 8000
  ; sometime later, a client sends a request
  sockudp -kn pacuclient 127.0.0.1 8000 This is a request
  ; but for whatever reason, the client socket is closed without waiting for the response
  sockclose pacuclient
}
on *:udpread:pacuserv:{
  ; this response will arrive at the client side after the socket has been closed, prompting an ICMP message
  sockudp -k pacuserv $sock(pacuserv).saddr $sock(pacuserv).sport This is a response
}
on *:sockclose:pacuserv:{
  echo -s SERVER UDP SOCKCLOSE $sockerr -- $sock(pacuserv).wsmsg
  ; the server socket is now gone as a result of getting the ICMP message
  ; thus, one client can make the entire server unavailable, which is highly undesirable
}


See my post in the previous thread for possible solutions..


Saturn, QuakeNet staff