(index ("udp-open-socket" 0) ("udp-open-socket*" 104) ("udp-bind!" 222) ("udp-connect!" 609) ("udp-send" 895) ("udp-sendto" 1169) ("udp-recv" 1355) ("udp-recvfrom" 1588) ("udp-close-socket" 1811) ("udp-socket?" 1907) ("udp-socket-fd" 2023) ("udp-bound?" 2189) ("udp-connected?" 2321) ("udp-bound-port" 2512) ("udp-set-multicast-interface" 2635) ("udp-join-multicast-group" 2896))
(def (sig (procedure "(udp-open-socket)" (id udp-open-socket))) (p "Returns a new UDP socket object."))
(def (sig (procedure "(udp-open-socket*)" (id udp-open-socket*))) (p "Returns a new nonblocking UDP socket object."))
(def (sig (procedure "(udp-bind! SOCKET HOST PORT)" (id udp-bind!))) (p "Binds a UDP socket to an address and port as specified by " (tt "HOST") " and " (tt "PORT") ". " (tt "HOST") " may be a string consisting of an IP address or hostname, or " (tt "#f") ", in which case " (tt "INADDR_ANY") " is used.  If " (tt "PORT") " is 0, a port will be allocated by the system automatically."))
(def (sig (procedure "(udp-connect! SOCKET HOST PORT)" (id udp-connect!))) (p "Connect a socket.  In the case of UDP this does nothing more than associate a peer address with the socket in the kernel for use with later calls to " (tt "send(2)") ".  UDP is a connectionless protocol."))
(def (sig (procedure "(udp-send SOCKET STRING)" (id udp-send))) (p "Send the bytes in " (tt "STRING") " through " (tt "SOCKET") " to its peer, as specified with a previous call to " (tt "udp-connect!") ".  If the socket is not connected, the system will return an error."))
(def (sig (procedure "(udp-sendto SOCKET HOST PORT STRING)" (id udp-sendto))) (p "Send the bytes in " (tt "STRING") " through " (tt "SOCKET") " to " (tt "PORT") " on " (tt "HOST") "."))
(def (sig (procedure "(udp-recv SOCKET LENGTH)" (id udp-recv))) (p "Receive a packet and store the data in string of size " (tt "LENGTH") ".  Returns two values: the number of bytes received and the string consisting the message."))
(def (sig (procedure "(udp-recvfrom SOCKET LENGTH)" (id udp-recvfrom))) (p "Same as " (tt "udp-recv") " except that two additional values are returned: the host string and port number from which the packet was received."))
(def (sig (procedure "(udp-close-socket SOCKET)" (id udp-close-socket))) (p "Close a socket."))
(def (sig (procedure "(udp-socket? THING)" (id udp-socket?))) (p "Test whether " (tt "THING") " is a UDP socket."))
(def (sig (procedure "(udp-socket-fd THING)" (id udp-socket-fd))) (p "If " (tt "THING") " is a UDP socket, returns the file descriptor associated with the socket."))
(def (sig (procedure "(udp-bound? SOCKET)" (id udp-bound?))) (p "Test whether a UDP socket is bound to a local address and port."))
(def (sig (procedure "(udp-connected? SOCKET)" (id udp-connected?))) (p "Test whether a peer address and port has been associated with a UDP socket with a call to " (tt "udp-connect!") "."))
(def (sig (procedure "(udp-bound-port SOCKET)" (id udp-bound-port))) (p "Returns the port to which the socket is bound."))
(def (sig (procedure "(udp-set-multicast-interface SOCKET ADDRESS)" (id udp-set-multicast-interface))) (p "Specify the " (tt "ADDRESS") " of the interface to send a multicast packet. This procedure might not be needed if there is only one network interface."))
(def (sig (procedure "(udp-join-multicast-group SOCKET ADDRESS GROUP [JOIN])" (id udp-join-multicast-group))) (p "Join a multicast " (tt "GROUP") " with the interface of the " (tt "ADDRESSS") " which can be " (tt "#f") " for " (tt "INADDR_ANY") ". If the optional argument " (tt "JOIN") " is set and " (tt "#f") ", the multicast group is dropped."))
