struct msghdr
{
void *msg_name;
socklen_t msg_namelen;
struct iovec *msg_iov;
int msg_iovlen, __pad1;
void *msg_control;
socklen_t msg_controllen, __pad2;
int msg_flags;
};
struct cmsghdr
socklen_t cmsg_len;
int __pad1;
int cmsg_level;
int cmsg_type;