Hello,
I found some some bugs in processIpPkt() of pbuf.c.
After calulate tcpUdpLen, it compares with tcp/udp header size.
If the length is smaller than header size, the code presume it's malformed pkts and
show error messages.
But IP fragmented packet have no tcp/udp header, so it can be smaller than header size
anytime.
So checking if routines of
line 2943
if(tcpUdpLen < sizeof(struct tcphdr)) {
line 3071
if(tcpUdpLen < sizeof(struct udphdr)) {
line 3285
if(tcpUdpLen < sizeof(struct icmp)) {
have to be deleted.
Otherwise, set the fragmented flag before checking header size.
Cheers,
- Zaharang
---------------------------------------------------------
SeungMin Lee
Iworld Networking, Inc.
Phone: +82-2-3440-6661
e-mail: [EMAIL PROTECTED]
_______________________________________________
Ntop-dev mailing list
[EMAIL PROTECTED]
http://listmanager.unipi.it/mailman/listinfo/ntop-dev