43 |
#include "lwip/pbuf.h" |
#include "lwip/pbuf.h" |
44 |
#include "lwip/dhcp.h" |
#include "lwip/dhcp.h" |
45 |
|
|
46 |
/** must be the maximum of all used hardware address lengths */ |
/** must be the maximum of all used hardware address lengths |
47 |
|
across all types of interfaces in use */ |
48 |
#define NETIF_HWADDR_LEN 6 |
#define NETIF_HWADDR_LEN 6 |
49 |
|
|
50 |
/** whether the network interface is 'up'. this is |
/** whether the network interface is 'up'. this is |
51 |
* a software flag used to control whether this network |
* a software flag used to control whether this network |
52 |
* interface is enabled. */ |
* interface is enabled and processes traffic */ |
53 |
#define NETIF_FLAGS_UP 1 |
#define NETIF_FLAG_UP 1 |
54 |
/** if set, the netif has broadcast capability */ |
/** if set, the netif has broadcast capability */ |
55 |
#define NETIF_FLAGS_BROADCAST 2 |
#define NETIF_FLAG_BROADCAST 2 |
56 |
/** if set, the netif is one end of a point-to-point connection */ |
/** if set, the netif is one end of a point-to-point connection */ |
57 |
#define NETIF_FLAGS_POINTTOPOINT 4 |
#define NETIF_FLAG_POINTTOPOINT 4 |
58 |
/** if set, the interface is configured using DHCP */ |
/** if set, the interface is configured using DHCP */ |
59 |
#define NETIF_FLAGS_DHCP 8 |
#define NETIF_FLAG_DHCP 8 |
60 |
|
|
61 |
/** |
/** generic data structure used for all lwIP network interfaces */ |
|
* generic data structure used for all lwIP network interfaces */ |
|
62 |
struct netif { |
struct netif { |
63 |
/** pointer to next in linked list */ |
/** pointer to next in linked list */ |
64 |
struct netif *next; |
struct netif *next; |
65 |
/** The following two fields should be filled in by the |
/** The following fields should be filled in by the |
66 |
initialization function for the device driver. */ |
initialization function for the device driver. */ |
67 |
char name[2]; |
char name[2]; |
68 |
/** number of this interface */ |
/** number of this interface */ |
69 |
u8_t num; |
u8_t num; |
70 |
|
/** NETIF_FLAG_* */ |
71 |
u8_t flags; |
u8_t flags; |
72 |
/** maximum transfer unit (in bytes) */ |
/** maximum transfer unit (in bytes) */ |
73 |
u16_t mtu; |
u16_t mtu; |
94 |
to state information for the device. */ |
to state information for the device. */ |
95 |
void *state; |
void *state; |
96 |
/** the DHCP client state information for this netif */ |
/** the DHCP client state information for this netif */ |
97 |
struct dhcp_state *dhcp; |
struct dhcp *dhcp; |
98 |
|
/** number of bytes used in hwaddr */ |
99 |
|
unsigned char hwaddr_len; |
100 |
/** link level hardware address of this interface */ |
/** link level hardware address of this interface */ |
101 |
unsigned char hwaddr[NETIF_HWADDR_LEN]; |
unsigned char hwaddr[NETIF_HWADDR_LEN]; |
102 |
}; |
}; |