Hi I'm implementing mobility support for IPv6. For this purpose, I need to add a routing header to the outgoing packets. This routing header is given type 2 (as per Mipv6 Draft - 17) and I have made changes to function ipv6_routing header to incorporate type 0 and type 2 routing headers. I'm checking this for UDP packets and packet creation seems to be working well. I check the packet at the recevier, before and after processing of routing header and the things look fine. But the UDP recvmsg returns -EHOSTUNREACH. I traced the code, and found that this is a checksum error. The checksum calculation in udpv6_rcv() is passed without a hitch but skb_copy_and_csum_datagram_iovec() in udpv6_recvmsg() returns -EINVAL. I'm not able to trace out the reason for this. What have I done wrong here... any pointers? regards, suvidh -- Kernelnewbies: Help each other learn about the Linux kernel. Archive: http://mail.nl.linux.org/kernelnewbies/ FAQ: http://kernelnewbies.org/faq/