summaryrefslogtreecommitdiff
path: root/protocol/lufa/LUFA-git/Demos/Device/ClassDriver/RNDISEthernet/Lib/ARP.h
diff options
context:
space:
mode:
authortmk <hasu@tmk-kbd.com>2015-05-13 11:13:10 +0900
committertmk <hasu@tmk-kbd.com>2015-05-13 11:13:10 +0900
commitf6d56675f9f981c5464f0ca7a1fbb0162154e8c5 (patch)
tree57c9d4b3808a26116ae0ee7956fc00b84841aa2b /protocol/lufa/LUFA-git/Demos/Device/ClassDriver/RNDISEthernet/Lib/ARP.h
parent4d116a04e94cf0d19317d5b44e4fa9f34a3e5594 (diff)
Squashed 'tmk_core/' changes from caca2c0..dc0e46e
dc0e46e Rename LUFA to LUFA-git 3bfa7fa Remove LUFA-120730 215b764 Merge commit 'afa0f22a9299686fd88f58ce09c5b521ac917e8f' as 'protocol/lufa/LUFA' afa0f22 Squashed 'protocol/lufa/LUFA/' content from commit def7fca c0c42fa Remove submodule of LUFA 30f897d Merge commit '87ced33feb74e79c3281dda36eb6d6d153399b41' as 'protocol/usb_hid/USB_Host_Shield_2.0' 87ced33 Squashed 'protocol/usb_hid/USB_Host_Shield_2.0/' content from commit aab4a69 14f6d49 Remove submodule of USB_Host_Shield_2.0 git-subtree-dir: tmk_core git-subtree-split: dc0e46eaa4367d4e218f8816e3c117895820f07c
Diffstat (limited to 'protocol/lufa/LUFA-git/Demos/Device/ClassDriver/RNDISEthernet/Lib/ARP.h')
m---------protocol/lufa/LUFA-git0
-rw-r--r--protocol/lufa/LUFA-git/Demos/Device/ClassDriver/RNDISEthernet/Lib/ARP.h76
2 files changed, 76 insertions, 0 deletions
diff --git a/protocol/lufa/LUFA-git b/protocol/lufa/LUFA-git
deleted file mode 160000
-Subproject b6c18b2a7c544653efbe12a1d4e8ba65e7d83c3
diff --git a/protocol/lufa/LUFA-git/Demos/Device/ClassDriver/RNDISEthernet/Lib/ARP.h b/protocol/lufa/LUFA-git/Demos/Device/ClassDriver/RNDISEthernet/Lib/ARP.h
new file mode 100644
index 0000000000..8535b85454
--- /dev/null
+++ b/protocol/lufa/LUFA-git/Demos/Device/ClassDriver/RNDISEthernet/Lib/ARP.h
@@ -0,0 +1,76 @@
+/*
+ LUFA Library
+ Copyright (C) Dean Camera, 2014.
+
+ dean [at] fourwalledcubicle [dot] com
+ www.lufa-lib.org
+*/
+
+/*
+ Copyright 2014 Dean Camera (dean [at] fourwalledcubicle [dot] com)
+
+ 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
+ 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
+ software without specific, written prior permission.
+
+ The author disclaims all warranties with regard to this
+ software, including all implied warranties of merchantability
+ and fitness. In no event shall the author be liable for any
+ special, indirect or consequential damages or any damages
+ whatsoever resulting from loss of use, data or profits, whether
+ in an action of contract, negligence or other tortious action,
+ arising out of or in connection with the use or performance of
+ this software.
+*/
+
+/** \file
+ *
+ * Header file for ARP.c.
+ */
+
+#ifndef _ARP_H_
+#define _ARP_H_
+
+ /* Includes: */
+ #include <avr/io.h>
+ #include <string.h>
+
+ #include "EthernetProtocols.h"
+ #include "Ethernet.h"
+ #include "ProtocolDecoders.h"
+
+ /* Macros: */
+ /** ARP header operation constant, indicating a request from a host for an address translation. */
+ #define ARP_OPERATION_REQUEST 1
+
+ /** ARP header operation constant, indicating a reply from a host giving an address translation. */
+ #define ARP_OPERATION_REPLY 2
+
+ /* Type Defines: */
+ /** Type define for an ARP packet inside an Ethernet frame. */
+ typedef struct
+ {
+ uint16_t HardwareType; /**< Hardware type constant, indicating the hardware used */
+ uint16_t ProtocolType; /**< Protocol being resolved, usually ETHERTYPE_IPV4 */
+
+ uint8_t HLEN; /**< Length in bytes of the source/destination hardware addresses */
+ uint8_t PLEN; /**< Length in bytes of the source/destination protocol addresses */
+ uint16_t Operation; /**< Type of operation, either ARP_OPERATION_REQUEST or ARP_OPERATION_REPLY */
+
+ MAC_Address_t SHA; /**< Sender's hardware address */
+ IP_Address_t SPA; /**< Sender's protocol address */
+ MAC_Address_t THA; /**< Target's hardware address */
+ IP_Address_t TPA; /**< Target's protocol address */
+ } ARP_Header_t;
+
+ /* Function Prototypes: */
+ int16_t ARP_ProcessARPPacket(void* InDataStart,
+ void* OutDataStart);
+
+#endif
+