This function receives a message on a socket.
It attempts to receive LENGTH
bytes of data into variable SCALAR from
the specified SOCKET filehandle. The function returns the address of
the sender, or the undefined value if there's an error. SCALAR will
be grown or shrunk to the length actually read. The function takes
the same flags as recv(2). See the section "Sockets" in Chapter 6.