Hello!

I'm hacking on (my already hacked) pktgen, trying to get it to send TCP frames.

And, having issues getting checksums to work properly.

I'm trying this:
        struct iphdr *iph = ip_hdr(skb);
        struct net_device *odev = pkt_dev->odev;

        if (pkt_dev->flags & F_TCP) {
                if (odev->features & NETIF_F_V4_CSUM) {
                        skb->ip_summed = CHECKSUM_PARTIAL;
                } else {
                        skb->ip_summed = CHECKSUM_NONE;
                }
                skb->csum = 0;
                __tcp_v4_send_check(skb, iph->saddr, iph->daddr);

I added an export so I could call that __tcp_v4_send_check method
w/out having to put a fake socket struct on the stack.

But, the receiving NIC reports 100% checksum failure, so obviously
I'm not doing it correct.

Any suggestions on what I might be doing wrong or the proper method(s)
to call?

Thanks,
Ben


--
Ben Greear <gree...@candelatech.com>
Candela Technologies Inc  http://www.candelatech.com

--
To unsubscribe from this list: send the line "unsubscribe netdev" in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html

Reply via email to