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
}