diff options
Diffstat (limited to 'Demos/Device/LowLevel/RNDISEthernet/Lib/ICMP.c')
-rw-r--r-- | Demos/Device/LowLevel/RNDISEthernet/Lib/ICMP.c | 21 |
1 files changed, 11 insertions, 10 deletions
diff --git a/Demos/Device/LowLevel/RNDISEthernet/Lib/ICMP.c b/Demos/Device/LowLevel/RNDISEthernet/Lib/ICMP.c index 7e4be9c3d..3bf01cd4b 100644 --- a/Demos/Device/LowLevel/RNDISEthernet/Lib/ICMP.c +++ b/Demos/Device/LowLevel/RNDISEthernet/Lib/ICMP.c @@ -1,7 +1,7 @@ /* LUFA Library Copyright (C) Dean Camera, 2010. - + dean [at] fourwalledcubicle [dot] com www.fourwalledcubicle.com */ @@ -9,13 +9,13 @@ /* Copyright 2010 Dean Camera (dean [at] fourwalledcubicle [dot] com) - Permission to use, copy, modify, distribute, and sell this + Permission to use, copy, modify, distribute, and sell this software and its documentation for any purpose is hereby granted - without fee, provided that the above copyright notice appear in + without fee, provided that the above copyright notice appear in all copies and that both that the copyright notice and this - permission notice and warranty disclaimer appear in supporting - documentation, and that the name of the author not be used in - advertising or publicity pertaining to distribution of the + permission notice and warranty disclaimer appear in supporting + documentation, and that the name of the author not be used in + advertising or publicity pertaining to distribution of the software without specific, written prior permission. The author disclaim all warranties with regard to this @@ -34,7 +34,7 @@ * Echo requests from the host, to indicate a successful network connection between the host * and the virtual server. */ - + #include "ICMP.h" /** Processes an ICMP packet inside an Ethernet frame, and writes the appropriate response @@ -62,9 +62,9 @@ int16_t ICMP_ProcessICMPPacket(void* InDataStart, ICMPHeaderOUT->Checksum = 0; ICMPHeaderOUT->Id = ICMPHeaderIN->Id; ICMPHeaderOUT->Sequence = ICMPHeaderIN->Sequence; - + intptr_t DataSize = FrameIN.FrameLength - ((((intptr_t)InDataStart + sizeof(ICMP_Header_t)) - (intptr_t)FrameIN.FrameData)); - + /* Copy the remaining payload to the response - echo requests should echo back any sent data */ memmove(&((uint8_t*)OutDataStart)[sizeof(ICMP_Header_t)], &((uint8_t*)InDataStart)[sizeof(ICMP_Header_t)], @@ -75,6 +75,7 @@ int16_t ICMP_ProcessICMPPacket(void* InDataStart, /* Return the size of the response so far */ return (DataSize + sizeof(ICMP_Header_t)); } - + return NO_RESPONSE; } + |