lwIP network interface abstraction
#include "lwip/opt.h"
#include "lwip/def.h"
#include "lwip/ip_addr.h"
#include "lwip/netif.h"
#include "lwip/tcp_impl.h"
#include "lwip/snmp.h"
#include "lwip/igmp.h"
#include "netif/etharp.h"
#include "lwip/stats.h"
Macros | |
#define | NETIF_LINK_CALLBACK(n) |
#define | NETIF_STATUS_CALLBACK(n) |
Functions | |
struct netif * | netif_add (struct netif *netif, ip_addr_t *ipaddr, ip_addr_t *netmask, ip_addr_t *gw, void *state, netif_init_fn init, netif_input_fn input) |
Add a network interface to the list of lwIP netifs. More... | |
struct netif * | netif_find (char *name) |
Find a network interface by searching for its name. More... | |
void | netif_init (void) |
void | netif_remove (struct netif *netif) |
Remove a network interface from the list of lwIP netifs. More... | |
void | netif_set_addr (struct netif *netif, ip_addr_t *ipaddr, ip_addr_t *netmask, ip_addr_t *gw) |
Change IP address configuration for a network interface (including netmask and default gateway). More... | |
void | netif_set_default (struct netif *netif) |
Set a network interface as the default network interface (used to output all packets for which no specific route is found) More... | |
void | netif_set_down (struct netif *netif) |
Bring an interface down, disabling any traffic processing. More... | |
void | netif_set_gw (struct netif *netif, ip_addr_t *gw) |
Change the default gateway for a network interface. More... | |
void | netif_set_ipaddr (struct netif *netif, ip_addr_t *ipaddr) |
Change the IP address of a network interface. More... | |
void | netif_set_link_down (struct netif *netif) |
Called by a driver when its link goes down. More... | |
void | netif_set_link_up (struct netif *netif) |
Called by a driver when its link goes up. More... | |
void | netif_set_netmask (struct netif *netif, ip_addr_t *netmask) |
Change the netmask of a network interface. More... | |
void | netif_set_up (struct netif *netif) |
Bring an interface up, available for processing traffic. More... | |
Variables | |
struct netif * | netif_default |
The default network interface. More... | |
struct netif * | netif_list |
The list of network interfaces. More... | |
static u8_t | netif_num |
#define NETIF_LINK_CALLBACK | ( | n | ) |
Referenced by netif_set_link_down(), and netif_set_link_up().
#define NETIF_STATUS_CALLBACK | ( | n | ) |
Referenced by netif_set_down(), and netif_set_up().
struct netif* netif_add | ( | struct netif * | netif, |
ip_addr_t * | ipaddr, | ||
ip_addr_t * | netmask, | ||
ip_addr_t * | gw, | ||
void * | state, | ||
netif_init_fn | init, | ||
netif_input_fn | input | ||
) |
Add a network interface to the list of lwIP netifs.
netif | a pre-allocated netif structure |
ipaddr | IP address for the new netif |
netmask | network mask for the new netif |
gw | default gateway IP address for the new netif |
state | opaque data passed to the new netif |
init | callback function that initializes the interface |
input | callback function that is called to pass ingress packets up in the protocol layer stack. |
Referenced by netif_init().
struct netif* netif_find | ( | char * | name | ) |
Find a network interface by searching for its name.
name | the name of the netif (like netif->name) plus concatenated number in ascii representation (e.g. 'en0') |
void netif_init | ( | void | ) |
Referenced by lwip_init().
void netif_remove | ( | struct netif * | netif | ) |
Remove a network interface from the list of lwIP netifs.
netif | the network interface to remove |
void netif_set_addr | ( | struct netif * | netif, |
ip_addr_t * | ipaddr, | ||
ip_addr_t * | netmask, | ||
ip_addr_t * | gw | ||
) |
Change IP address configuration for a network interface (including netmask and default gateway).
netif | the network interface to change |
ipaddr | the new IP address |
netmask | the new netmask |
gw | the new default gateway |
Referenced by netif_add().
void netif_set_default | ( | struct netif * | netif | ) |
Set a network interface as the default network interface (used to output all packets for which no specific route is found)
netif | the default network interface |
Referenced by netif_remove().
void netif_set_down | ( | struct netif * | netif | ) |
Bring an interface down, disabling any traffic processing.
Referenced by netif_remove().
Change the default gateway for a network interface.
netif | the network interface to change |
gw | the new default gateway |
Referenced by netif_set_addr().
Change the IP address of a network interface.
netif | the network interface to change |
ipaddr | the new IP address |
Referenced by netif_set_addr().
void netif_set_link_down | ( | struct netif * | netif | ) |
Called by a driver when its link goes down.
void netif_set_link_up | ( | struct netif * | netif | ) |
Called by a driver when its link goes up.
Change the netmask of a network interface.
netif | the network interface to change |
netmask | the new netmask |
Referenced by netif_set_addr().
void netif_set_up | ( | struct netif * | netif | ) |
Bring an interface up, available for processing traffic.
Referenced by netif_init().
struct netif* netif_default |
The default network interface.
Referenced by ip_route().
struct netif* netif_list |
The list of network interfaces.
Referenced by ip_input(), ip_route(), and netif_add().
|
static |
Referenced by netif_add().