-/**\r
- * \addtogroup uip\r
- * @{\r
- */\r
-\r
-/**\r
- * \addtogroup uiparp\r
- * @{\r
- */\r
- \r
-/**\r
- * \file\r
- * Macros and definitions for the ARP module.\r
- * \author Adam Dunkels <adam@dunkels.com>\r
- */\r
- \r
-\r
-/*\r
- * Copyright (c) 2001-2003, Adam Dunkels.\r
- * All rights reserved.\r
- *\r
- * Redistribution and use in source and binary forms, with or without\r
- * modification, are permitted provided that the following conditions\r
- * are met:\r
- * 1. Redistributions of source code must retain the above copyright\r
- * notice, this list of conditions and the following disclaimer.\r
- * 2. Redistributions in binary form must reproduce the above copyright\r
- * notice, this list of conditions and the following disclaimer in the\r
- * documentation and/or other materials provided with the distribution.\r
- * 3. The name of the author may not be used to endorse or promote\r
- * products derived from this software without specific prior\r
- * written permission.\r
- *\r
- * THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS\r
- * OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED\r
- * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE\r
- * ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY\r
- * DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL\r
- * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE\r
- * GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS\r
- * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,\r
- * WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING\r
- * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS\r
- * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.\r
- *\r
- * This file is part of the uIP TCP/IP stack.\r
- *\r
- * $Id: uip_arp.h,v 1.2 2006/08/26 23:58:45 oliverschmidt Exp $\r
- *\r
- */\r
-\r
-#ifndef __UIP_ARP_H__\r
-#define __UIP_ARP_H__\r
-\r
-#include "uip.h"\r
-\r
-\r
-extern struct uip_eth_addr uip_ethaddr;\r
-\r
-/**\r
- * The Ethernet header.\r
- */\r
-struct uip_eth_hdr {\r
- struct uip_eth_addr dest;\r
- struct uip_eth_addr src;\r
- u16_t type;\r
-};\r
-\r
-#define UIP_ETHTYPE_ARP 0x0806\r
-#define UIP_ETHTYPE_IP 0x0800\r
-#define UIP_ETHTYPE_IPV6 0x86dd\r
-\r
-\r
-/* The uip_arp_init() function must be called before any of the other\r
- ARP functions. */\r
-void uip_arp_init(void);\r
-\r
-/* The uip_arp_ipin() function should be called whenever an IP packet\r
- arrives from the Ethernet. This function refreshes the ARP table or\r
- inserts a new mapping if none exists. The function assumes that an\r
- IP packet with an Ethernet header is present in the uip_buf buffer\r
- and that the length of the packet is in the uip_len variable. */\r
-/*void uip_arp_ipin(void);*/\r
-#define uip_arp_ipin()\r
-\r
-/* The uip_arp_arpin() should be called when an ARP packet is received\r
- by the Ethernet driver. This function also assumes that the\r
- Ethernet frame is present in the uip_buf buffer. When the\r
- uip_arp_arpin() function returns, the contents of the uip_buf\r
- buffer should be sent out on the Ethernet if the uip_len variable\r
- is > 0. */\r
-void uip_arp_arpin(void);\r
-\r
-/* The uip_arp_out() function should be called when an IP packet\r
- should be sent out on the Ethernet. This function creates an\r
- Ethernet header before the IP header in the uip_buf buffer. The\r
- Ethernet header will have the correct Ethernet MAC destination\r
- address filled in if an ARP table entry for the destination IP\r
- address (or the IP address of the default router) is present. If no\r
- such table entry is found, the IP packet is overwritten with an ARP\r
- request and we rely on TCP to retransmit the packet that was\r
- overwritten. In any case, the uip_len variable holds the length of\r
- the Ethernet frame that should be transmitted. */\r
-void uip_arp_out(void);\r
-\r
-/* The uip_arp_timer() function should be called every ten seconds. It\r
- is responsible for flushing old entries in the ARP table. */\r
-void uip_arp_timer(void);\r
-\r
-/** @} */\r
-\r
-/**\r
- * \addtogroup uipconffunc\r
- * @{\r
- */\r
-\r
-\r
-/**\r
- * Specifiy the Ethernet MAC address.\r
- *\r
- * The ARP code needs to know the MAC address of the Ethernet card in\r
- * order to be able to respond to ARP queries and to generate working\r
- * Ethernet headers.\r
- *\r
- * \note This macro only specifies the Ethernet MAC address to the ARP\r
- * code. It cannot be used to change the MAC address of the Ethernet\r
- * card.\r
- *\r
- * \param eaddr A pointer to a struct uip_eth_addr containing the\r
- * Ethernet MAC address of the Ethernet card.\r
- *\r
- * \hideinitializer\r
- */\r
-#define uip_setethaddr(eaddr) do {uip_ethaddr.addr[0] = eaddr.addr[0]; \\r
- uip_ethaddr.addr[1] = eaddr.addr[1];\\r
- uip_ethaddr.addr[2] = eaddr.addr[2];\\r
- uip_ethaddr.addr[3] = eaddr.addr[3];\\r
- uip_ethaddr.addr[4] = eaddr.addr[4];\\r
- uip_ethaddr.addr[5] = eaddr.addr[5];} while(0)\r
-\r
-/** @} */\r
-\r
-\r
-#endif /* __UIP_ARP_H__ */\r
-/** @} */\r
+/**
+ * \addtogroup uip
+ * @{
+ */
+
+/**
+ * \addtogroup uiparp
+ * @{
+ */
+
+/**
+ * \file
+ * Macros and definitions for the ARP module.
+ * \author Adam Dunkels <adam@dunkels.com>
+ */
+
+
+/*
+ * Copyright (c) 2001-2003, Adam Dunkels.
+ * All rights reserved.
+ *
+ * Redistribution and use in source and binary forms, with or without
+ * modification, are permitted provided that the following conditions
+ * are met:
+ * 1. Redistributions of source code must retain the above copyright
+ * notice, this list of conditions and the following disclaimer.
+ * 2. Redistributions in binary form must reproduce the above copyright
+ * notice, this list of conditions and the following disclaimer in the
+ * documentation and/or other materials provided with the distribution.
+ * 3. The name of the author may not be used to endorse or promote
+ * products derived from this software without specific prior
+ * written permission.
+ *
+ * THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS
+ * OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
+ * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
+ * ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY
+ * DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
+ * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE
+ * GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
+ * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
+ * WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING
+ * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
+ * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+ *
+ * This file is part of the uIP TCP/IP stack.
+ *
+ * $Id: uip_arp.h,v 1.2 2006/08/26 23:58:45 oliverschmidt Exp $
+ *
+ */
+
+#ifndef __UIP_ARP_H__
+#define __UIP_ARP_H__
+
+#include "uip.h"
+
+
+extern struct uip_eth_addr uip_ethaddr;
+
+/**
+ * The Ethernet header.
+ */
+struct uip_eth_hdr {
+ struct uip_eth_addr dest;
+ struct uip_eth_addr src;
+ u16_t type;
+};
+
+#define UIP_ETHTYPE_ARP 0x0806
+#define UIP_ETHTYPE_IP 0x0800
+#define UIP_ETHTYPE_IPV6 0x86dd
+
+
+/* The uip_arp_init() function must be called before any of the other
+ ARP functions. */
+void uip_arp_init(void);
+
+/* The uip_arp_ipin() function should be called whenever an IP packet
+ arrives from the Ethernet. This function refreshes the ARP table or
+ inserts a new mapping if none exists. The function assumes that an
+ IP packet with an Ethernet header is present in the uip_buf buffer
+ and that the length of the packet is in the uip_len variable. */
+/*void uip_arp_ipin(void);*/
+#define uip_arp_ipin()
+
+/* The uip_arp_arpin() should be called when an ARP packet is received
+ by the Ethernet driver. This function also assumes that the
+ Ethernet frame is present in the uip_buf buffer. When the
+ uip_arp_arpin() function returns, the contents of the uip_buf
+ buffer should be sent out on the Ethernet if the uip_len variable
+ is > 0. */
+void uip_arp_arpin(void);
+
+/* The uip_arp_out() function should be called when an IP packet
+ should be sent out on the Ethernet. This function creates an
+ Ethernet header before the IP header in the uip_buf buffer. The
+ Ethernet header will have the correct Ethernet MAC destination
+ address filled in if an ARP table entry for the destination IP
+ address (or the IP address of the default router) is present. If no
+ such table entry is found, the IP packet is overwritten with an ARP
+ request and we rely on TCP to retransmit the packet that was
+ overwritten. In any case, the uip_len variable holds the length of
+ the Ethernet frame that should be transmitted. */
+void uip_arp_out(void);
+
+/* The uip_arp_timer() function should be called every ten seconds. It
+ is responsible for flushing old entries in the ARP table. */
+void uip_arp_timer(void);
+
+/** @} */
+
+/**
+ * \addtogroup uipconffunc
+ * @{
+ */
+
+
+/**
+ * Specifiy the Ethernet MAC address.
+ *
+ * The ARP code needs to know the MAC address of the Ethernet card in
+ * order to be able to respond to ARP queries and to generate working
+ * Ethernet headers.
+ *
+ * \note This macro only specifies the Ethernet MAC address to the ARP
+ * code. It cannot be used to change the MAC address of the Ethernet
+ * card.
+ *
+ * \param eaddr A pointer to a struct uip_eth_addr containing the
+ * Ethernet MAC address of the Ethernet card.
+ *
+ * \hideinitializer
+ */
+#define uip_setethaddr(eaddr) do {uip_ethaddr.addr[0] = eaddr.addr[0]; \
+ uip_ethaddr.addr[1] = eaddr.addr[1];\
+ uip_ethaddr.addr[2] = eaddr.addr[2];\
+ uip_ethaddr.addr[3] = eaddr.addr[3];\
+ uip_ethaddr.addr[4] = eaddr.addr[4];\
+ uip_ethaddr.addr[5] = eaddr.addr[5];} while(0)
+
+/** @} */
+
+
+#endif /* __UIP_ARP_H__ */
+/** @} */