/** Processes an ICMP packet inside an Ethernet frame, and writes the appropriate response\r
* to the output Ethernet frame if the host is issuing a ICMP ECHO request.\r
*\r
/** Processes an ICMP packet inside an Ethernet frame, and writes the appropriate response\r
* to the output Ethernet frame if the host is issuing a ICMP ECHO request.\r
*\r
* \param InDataStart Pointer to the start of the incoming packet's ICMP header\r
* \param OutDataStart Pointer to the start of the outgoing packet's ICMP header\r
*\r
* \return The number of bytes written to the out Ethernet frame if any, NO_RESPONSE otherwise\r
*/\r
* \param InDataStart Pointer to the start of the incoming packet's ICMP header\r
* \param OutDataStart Pointer to the start of the outgoing packet's ICMP header\r
*\r
* \return The number of bytes written to the out Ethernet frame if any, NO_RESPONSE otherwise\r
*/\r
{\r
ICMP_Header_t* ICMPHeaderIN = (ICMP_Header_t*)InDataStart;\r
ICMP_Header_t* ICMPHeaderOUT = (ICMP_Header_t*)OutDataStart;\r
{\r
ICMP_Header_t* ICMPHeaderIN = (ICMP_Header_t*)InDataStart;\r
ICMP_Header_t* ICMPHeaderOUT = (ICMP_Header_t*)OutDataStart;\r
\r
/* Copy the remaining payload to the response - echo requests should echo back any sent data */\r
memcpy(&((uint8_t*)OutDataStart)[sizeof(ICMP_Header_t)],\r
\r
/* Copy the remaining payload to the response - echo requests should echo back any sent data */\r
memcpy(&((uint8_t*)OutDataStart)[sizeof(ICMP_Header_t)],\r