Implement sendmsg() (XCC)
[akaros.git] / tools / compilers / gcc-glibc / glibc-2.19-akaros / sysdeps / akaros / sendmsg.c
1 /* Copyright (c) 2015-2016 Google Inc.
2  * Barret Rhoden <brho@cs.berkeley.edu>
3  * See LICENSE for details.
4  *
5  * sendmsg(), on top of sendto(). */
6
7 #include <sys/types.h>
8 #include <sys/socket.h>
9 #include <errno.h>
10
11 /* In sendto.c */
12 ssize_t __sendto_iov(int fd, const struct iovec *iov, int iovcnt,
13                      int flags, __CONST_SOCKADDR_ARG to, socklen_t tolen);
14
15 /* Send a message described MSG on socket FD.  Returns the number of bytes
16  * sent, or -1 for errors.  */
17 ssize_t __sendmsg(int fd, const struct msghdr *msg, int flags)
18 {
19         return __sendto_iov(fd, msg->msg_iov, msg->msg_iovlen, flags, msg->msg_name,
20                             msg->msg_namelen);
21 }
22 weak_alias(__sendmsg, sendmsg)