]> git.karo-electronics.de Git - karo-tx-linux.git/blobdiff - net/iucv/af_iucv.c
Merge tag 'firewire-updates' of git://git.kernel.org/pub/scm/linux/kernel/git/ieee139...
[karo-tx-linux.git] / net / iucv / af_iucv.c
index a089b6b91650b9c17e786e1045cbeac537612dd1..2e9953b2db8402dd71c88691f263db00f2cba3e2 100644 (file)
@@ -1070,9 +1070,7 @@ static int iucv_sock_sendmsg(struct kiocb *iocb, struct socket *sock,
        txmsg.class = 0;
 
        /* iterate over control messages */
-       for (cmsg = CMSG_FIRSTHDR(msg); cmsg;
-               cmsg = CMSG_NXTHDR(msg, cmsg)) {
-
+       for_each_cmsghdr(cmsg, msg) {
                if (!CMSG_OK(msg, cmsg)) {
                        err = -EINVAL;
                        goto out;
@@ -1122,7 +1120,7 @@ static int iucv_sock_sendmsg(struct kiocb *iocb, struct socket *sock,
        }
        if (iucv->transport == AF_IUCV_TRANS_HIPER)
                skb_reserve(skb, sizeof(struct af_iucv_trans_hdr) + ETH_HLEN);
-       if (memcpy_fromiovec(skb_put(skb, len), msg->msg_iov, len)) {
+       if (memcpy_from_msg(skb_put(skb, len), msg, len)) {
                err = -EFAULT;
                goto fail;
        }
@@ -1355,7 +1353,7 @@ static int iucv_sock_recvmsg(struct kiocb *iocb, struct socket *sock,
                sk->sk_shutdown = sk->sk_shutdown | RCV_SHUTDOWN;
 
        cskb = skb;
-       if (skb_copy_datagram_iovec(cskb, offset, msg->msg_iov, copied)) {
+       if (skb_copy_datagram_msg(cskb, offset, msg, copied)) {
                if (!(flags & MSG_PEEK))
                        skb_queue_head(&sk->sk_receive_queue, skb);
                return -EFAULT;