6.1.1.7. Recv Family Of System Calls
ssize_t recv (int sockfd, void *buf, size_t len, int flags);
ssize_t recvfrom (int sockfd, void *buf, size_t len, int flags,
struct sockaddr *from, socklen_t *fromlen);
ssize_t recvmsg (int sockfd, struct msghdr *msg, int flags);
struct msghdr
{
void *msg_name; // optional address
socklen_t msg_namelen; // optional address length
struct iovec *msg_iov; // array for scatter gather
size_t msg_iovlen; // array for scatter gather length
void *msg_control; // additional control data
socklen_t msg_controllen; // additional control data length
int msg_flags;
};