Title: udp_read()

If there is a packet in the udp file descriptor's read queue and the packet has not expired, udp_read() sends the packet to the process that requested the read. If the packet cannot be delivered (either because the packet has expired or it hasn't arrived yet), udp_read() suspends the read operation (i.e., returns NW_SUSPEND to sr_rwio() and sets the UFF_READ_IP flag). If the packet has expired, all packets in the read queue of the udp file descriptor are discarded.