Hi,
I have been testing *flow-fanout* (v. 0.67) with spoofing (-s) for
Solaris, and I think I have found a bug.
I think the UDP checksum is miscalulated because when a packet is sent
by flow-fanout to a server running in Solaris 8/9 the call "recvfrom"
doesn't get the packet, and when you execute in that server
$ netstat -an | grep -i udp
you can see that variable udpInCksumErrs has increase in 1.
After force the Udp-checksum to 0 (no checksum), everthings works right:
**** function pdu_xmit in flow-fanout.c****
(...)
udp_hdr->uh_sum = 0;
/*
sum = fte->d_sum;
sum += udp_cksum(ip_hdr, udp_hdr, fte->buf_size+8);
sum = (sum >> 16) + (sum & 0xffff);
sum += (sum >> 16);
udp_hdr->uh_sum = ~sum;
*/
(...)
I have tested in Linux and everthing works right without this workaround
I'm sending a packet, in order to debug the problem
itaim.hi.inet -> osasuna UDP D=40001 S=61696 LEN=80
0: 0003 ba09 4205 0003 ba38 3ef8 0800 4500
....B....8>...E.
16: 0064 e74c 4000 ff11 6399 0a5f 1717 0a5f
[EMAIL PROTECTED]
32: 04ce f100 9c41 0050 335e 0005 0001 0000
.....A.P3^......
48: 0000 0000 0000 0000 0000 0000 0000 0000
................
64: 0000 0000 0000 ffff 0000 0000 0000 0000
................
80: ff00 0000 0001 0000 0001 0000 0000 ffff
................
96: 0000 0000 ff00 0000 1100 0000 ff00 0000
................
112: 0000 ..
Thanks
_______________________________________________
Flow-tools mailing list
[EMAIL PROTECTED]
http://mailman.splintered.net/mailman/listinfo/flow-tools