#lang racket/signature udp-open-socket ;; host port -> socket udp-close ;; socket -> void udp-bind! ;; socket host port -> void udp-send-to ;; socket host port bytes -> void udp-receive/timeout ;; socket bytes seconds -> (or (list non-negative-integer host port) #f)