• Home
  • History
  • Annotate
  • Raw
  • Download
  • only in /macosx-10.9.5/xnu-2422.115.4/bsd/kern/

Lines Matching refs:msg

639 sock_receive_internal(socket_t sock, struct msghdr *msg, mbuf_t *data,
647 char uio_buf[ UIO_SIZEOF((msg != NULL) ? msg->msg_iovlen : 0) ];
652 auio = uio_createwithbuffer(((msg != NULL) ? msg->msg_iovlen : 0),
654 if (msg != NULL && data == NULL) {
656 struct iovec *tempp = msg->msg_iov;
658 for (i = 0; i < msg->msg_iovlen; i++) {
675 data, (msg && msg->msg_control) ? &control : NULL, &flags);
681 if (msg != NULL) {
682 msg->msg_flags = flags;
684 if (msg->msg_name != NULL) {
686 salen = msg->msg_namelen;
687 if (msg->msg_namelen > 0 && fromsa != NULL) {
689 memcpy(msg->msg_name, fromsa,
690 msg->msg_namelen > fromsa->sa_len ?
691 fromsa->sa_len : msg->msg_namelen);
695 if (msg->msg_control != NULL) {
697 u_char *ctlbuf = msg->msg_control;
698 int clen = msg->msg_controllen;
700 msg->msg_controllen = 0;
708 msg->msg_flags |= MSG_CTRUNC;
716 msg->msg_controllen =
717 (uintptr_t)ctlbuf - (uintptr_t)msg->msg_control;
730 sock_receive(socket_t sock, struct msghdr *msg, int flags, size_t *recvdlen)
732 if ((msg == NULL) || (msg->msg_iovlen < 1) ||
733 (msg->msg_iov[0].iov_len == 0) ||
734 (msg->msg_iov[0].iov_base == NULL))
737 return (sock_receive_internal(sock, msg, NULL, flags, recvdlen));
741 sock_receivembuf(socket_t sock, struct msghdr *msg, mbuf_t *data, int flags,
744 if (data == NULL || recvlen == 0 || *recvlen <= 0 || (msg != NULL &&
745 (msg->msg_iov != NULL || msg->msg_iovlen != 0)))
748 return (sock_receive_internal(sock, msg, data, flags, recvlen));
752 sock_send_internal(socket_t sock, const struct msghdr *msg, mbuf_t data,
759 char uio_buf[ UIO_SIZEOF((msg != NULL ? msg->msg_iovlen : 1)) ];
766 if (data == NULL && msg != NULL) {
767 struct iovec *tempp = msg->msg_iov;
769 auio = uio_createwithbuffer(msg->msg_iovlen, 0,
774 for (i = 0; i < msg->msg_iovlen; i++) {
795 if (msg != NULL && msg->msg_control) {
796 if ((size_t)msg->msg_controllen < sizeof (struct cmsghdr)) {
801 if ((size_t)msg->msg_controllen > MLEN) {
811 memcpy(mtod(control, caddr_t), msg->msg_control,
812 msg->msg_controllen);
813 control->m_len = msg->msg_controllen;
816 error = sock->so_proto->pr_usrreqs->pru_sosend(sock, msg != NULL ?
817 (struct sockaddr *)msg->msg_name : NULL, auio, data,
856 sock_send(socket_t sock, const struct msghdr *msg, int flags, size_t *sentlen)
858 if (msg == NULL || msg->msg_iov == NULL || msg->msg_iovlen < 1)
861 return (sock_send_internal(sock, msg, NULL, flags, sentlen));
865 sock_sendmbuf(socket_t sock, const struct msghdr *msg, mbuf_t data,
868 if (data == NULL || (msg != NULL && (msg->msg_iov != NULL ||
869 msg->msg_iovlen != 0))) {
874 return (sock_send_internal(sock, msg, data, flags, sentlen));