Merge branch 'for-davem' of git://git.kernel.org/pub/scm/linux/kernel/git/viro/vfs
More iov_iter work from Al Viro. Signed-off-by: David S. Miller <davem@davemloft.net>
This commit is contained in:
@@ -163,8 +163,7 @@ int ping_v6_sendmsg(struct kiocb *iocb, struct sock *sk, struct msghdr *msg,
|
||||
pfh.icmph.checksum = 0;
|
||||
pfh.icmph.un.echo.id = inet->inet_sport;
|
||||
pfh.icmph.un.echo.sequence = user_icmph.icmp6_sequence;
|
||||
/* XXX: stripping const */
|
||||
pfh.iov = (struct iovec *)msg->msg_iter.iov;
|
||||
pfh.msg = msg;
|
||||
pfh.wcheck = 0;
|
||||
pfh.family = AF_INET6;
|
||||
|
||||
|
@@ -609,7 +609,7 @@ out:
|
||||
return err;
|
||||
}
|
||||
|
||||
static int rawv6_send_hdrinc(struct sock *sk, void *from, int length,
|
||||
static int rawv6_send_hdrinc(struct sock *sk, struct msghdr *msg, int length,
|
||||
struct flowi6 *fl6, struct dst_entry **dstp,
|
||||
unsigned int flags)
|
||||
{
|
||||
@@ -648,7 +648,7 @@ static int rawv6_send_hdrinc(struct sock *sk, void *from, int length,
|
||||
skb->ip_summed = CHECKSUM_NONE;
|
||||
|
||||
skb->transport_header = skb->network_header;
|
||||
err = memcpy_fromiovecend((void *)iph, from, 0, length);
|
||||
err = memcpy_from_msg(iph, msg, length);
|
||||
if (err)
|
||||
goto error_fault;
|
||||
|
||||
@@ -886,8 +886,7 @@ static int rawv6_sendmsg(struct kiocb *iocb, struct sock *sk,
|
||||
|
||||
back_from_confirm:
|
||||
if (inet->hdrincl)
|
||||
/* XXX: stripping const */
|
||||
err = rawv6_send_hdrinc(sk, (struct iovec *)msg->msg_iter.iov, len, &fl6, &dst, msg->msg_flags);
|
||||
err = rawv6_send_hdrinc(sk, msg, len, &fl6, &dst, msg->msg_flags);
|
||||
else {
|
||||
lock_sock(sk);
|
||||
err = ip6_append_data(sk, raw6_getfrag, &rfv,
|
||||
|
Reference in New Issue
Block a user