udp checksum on raw sockets
Mark Santcroos
marks at ripe.net
Tue Apr 27 11:23:51 PDT 2004
* I'm sending UDP packets on a raw socket.
* iphdr->ip_src.s_addr = INADDR_ANY;
So I don't know the IP address that will be used as src address.
So as far as I can see, I have a problem generating the checksum in
userspace.
Suggestion:
Would it make sense that if:
sysctl net.udp.checksum=1
and
udphdr->uh_sum = 0;
in a UDP packet created on a raw socket, to do the checksum in the kernel
instead of leaving it zero? If it does, I can create a patch.
Any other hints as how to do the checksum in userland are welcome too. As
that is the "ultimate" problem I try to fix.
Thanks
Mark
More information about the freebsd-net
mailing list