}
if(hdr->ID != (Uint16)~hdr->Sequence) {
Warning("[ICMP ] ID and Sequence values do not match");
- return ;
+ //return ;
}
gICMP_PingSlots[hdr->ID].bArrived = 1;
break;
Log("[ICMP ] Destination Unreachable (Code %i)", hdr->Code);
break;
}
+// IPv4_Unreachable( Interface, hdr->Code, htons(hdr->Length)-sizeof(tICMPHeader), hdr->Data );
break;
// -- 8: Echo Request
{
if(gICMP_PingSlots[i].Interface == NULL) break;
}
- if(gICMP_PingSlots[i].Interface == NULL) break;
+ if( i < PING_SLOTS ) break;
Threads_Yield();
}
gICMP_PingSlots[i].Interface = Interface;