X-Git-Url: http://git.onelab.eu/?a=blobdiff_plain;f=net%2Fipv6%2Fraw.c;h=447b142d63274b3a505af52d808b84ca56841d2a;hb=3e3ff47c8527c5ba0be4e9f358d49e4b076bd6ef;hp=03198961193241259d277e063ecd9d11e8ea5759;hpb=a91482bdcc2e0f6035702e46f1b99043a0893346;p=linux-2.6.git diff --git a/net/ipv6/raw.c b/net/ipv6/raw.c index 031989611..447b142d6 100644 --- a/net/ipv6/raw.c +++ b/net/ipv6/raw.c @@ -419,10 +419,7 @@ static int rawv6_recvmsg(struct kiocb *iocb, struct sock *sk, if (np->rxopt.all) datagram_recv_ctl(sk, msg, skb); - err = copied; - if (flags & MSG_TRUNC) - err = skb->len; out_free: skb_free_datagram(sk, skb); @@ -538,7 +535,7 @@ static int rawv6_send_hdrinc(struct sock *sk, void *from, int length, if (err) goto error_fault; - IP6_INC_STATS(IPSTATS_MIB_OUTREQUESTS); + IP6_INC_STATS(OutRequests); err = NF_HOOK(PF_INET6, NF_IP6_LOCAL_OUT, skb, NULL, rt->u.dst.dev, dst_output); if (err > 0) @@ -552,7 +549,7 @@ error_fault: err = -EFAULT; kfree_skb(skb); error: - IP6_INC_STATS(IPSTATS_MIB_OUTDISCARDS); + IP6_INC_STATS(OutDiscards); return err; } static int rawv6_sendmsg(struct kiocb *iocb, struct sock *sk, @@ -919,7 +916,7 @@ static int rawv6_init_sk(struct sock *sk) struct proto rawv6_prot = { .name = "RAW", .close = rawv6_close, - .connect = ip6_datagram_connect, + .connect = udpv6_connect, .disconnect = udp_disconnect, .ioctl = rawv6_ioctl, .init = rawv6_init_sk,