/*
LUFA Library
- Copyright (C) Dean Camera, 2010.
-
+ Copyright (C) Dean Camera, 2011.
+
dean [at] fourwalledcubicle [dot] com
- www.fourwalledcubicle.com
+ www.lufa-lib.org
*/
/*
- Copyright 2010 Dean Camera (dean [at] fourwalledcubicle [dot] com)
+ Copyright 2011 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
#define _UIP_MANAGEMENT_H_
/* Includes: */
- #include <LUFA/Drivers/USB/Class/RNDIS.h>
+ #include <LUFA/Drivers/USB/USB.h>
#include <uip.h>
#include <uip_arp.h>
#include <uip-split.h>
#include <timer.h>
-
+
#include "Lib/DHCPClientApp.h"
+ #include "Lib/DHCPServerApp.h"
#include "Lib/HTTPServerApp.h"
#include "Lib/TELNETServerApp.h"
-
+
/* Macros: */
/** IP address that the webserver should use once connected to a RNDIS device (when DHCP is disabled). */
- #define DEVICE_IP_ADDRESS (uint8_t[]){192, 168, 1, 10}
-
+ #define DEVICE_IP_ADDRESS (uint8_t[]){10, 0, 0, 2}
+
/** Netmask that the webserver should once connected to a RNDIS device (when DHCP is disabled). */
#define DEVICE_NETMASK (uint8_t[]){255, 255, 255, 0}
-
+
/** IP address of the default gateway the webserver should use when routing outside the local subnet
* (when DHCP is disabled).
*/
- #define DEVICE_GATEWAY (uint8_t[]){192, 168, 1, 1}
+ #define DEVICE_GATEWAY (uint8_t[]){10, 0, 0, 1}
+
+ /** Ethernet MAC address of the virtual webserver. When in device RNDIS mode, the virtual webserver requires
+ * a unique MAC address that it can use when sending packets to the RNDIS adapter, which contains a seperate
+ * MAC address as set in the RNDIS class driver configuration structure.
+ */
+ #define SERVER_MAC_ADDRESS (uint8_t[]){1, 0, 1, 0, 1, 0}
/* External Variables: */
extern struct uip_eth_addr MACAddress;
-
- extern bool HaveIPConfiguration;
-
+
/* Function Prototypes: */
void uIPManagement_Init(void);
void uIPManagement_ManageNetwork(void);
void uIPManagement_TCPCallback(void);
void uIPManagement_UDPCallback(void);
-
+
#if defined(INCLUDE_FROM_UIPMANAGEMENT_C)
static void uIPManagement_ProcessIncomingPacket(void);
static void uIPManagement_ManageConnections(void);
#endif
-
+
#endif
+