Contiki 2.6
|
Data Structures | |
struct | uip_fw_netif |
Representation of a uIP network interface. More... | |
Files | |
file | uip-fw.c |
uIP packet forwarding. | |
file | uip-fw.h |
uIP packet forwarding header file. | |
Defines | |
#define | UIP_FW_NETIF(ip1, ip2, ip3, ip4, nm1, nm2, nm3, nm4, outputfunc) |
Instantiating macro for a uIP network interface. | |
#define | uip_fw_setipaddr(netif, addr) |
Set the IP address of a network interface. | |
#define | uip_fw_setnetmask(netif, addr) |
Set the netmask of a network interface. | |
#define | UIP_FW_LOCAL |
A non-error message that indicates that a packet should be processed locally. | |
#define | UIP_FW_OK |
A non-error message that indicates that something went OK. | |
#define | UIP_FW_FORWARDED |
A non-error message that indicates that a packet was forwarded. | |
#define | UIP_FW_ZEROLEN |
A non-error message that indicates that a zero-length packet transmission was attempted, and that no packet was sent. | |
#define | UIP_FW_TOOLARGE |
An error message that indicates that a packet that was too large for the outbound network interface was detected. | |
#define | UIP_FW_NOROUTE |
An error message that indicates that no suitable interface could be found for an outbound packet. | |
#define | UIP_FW_DROPPED |
An error message that indicates that a packet that should be forwarded or output was dropped. | |
Functions | |
void | uip_fw_init (void) |
Initialize the uIP packet forwarding module. | |
uint8_t | uip_fw_output (void) |
Output an IP packet on the correct network interface. | |
uint8_t | uip_fw_forward (void) |
Forward an IP packet in the uip_buf buffer. | |
void | uip_fw_register (struct uip_fw_netif *netif) |
Register a network interface with the forwarding module. | |
void | uip_fw_default (struct uip_fw_netif *netif) |
Register a default network interface. | |
void | uip_fw_periodic (void) |
Perform periodic processing. |
#define UIP_FW_NETIF | ( | ip1, | |
ip2, | |||
ip3, | |||
ip4, | |||
nm1, | |||
nm2, | |||
nm3, | |||
nm4, | |||
outputfunc | |||
) |
Instantiating macro for a uIP network interface.
Example:
struct uip_fw_netif slipnetif = {UIP_FW_NETIF(192,168,76,1, 255,255,255,0, slip_output)};
ip1,ip2,ip3,ip4 | The IP address of the network interface. |
nm1,nm2,nm3,nm4 | The netmask of the network interface. |
outputfunc | A pointer to the output function of the network interface. |
#define uip_fw_setipaddr | ( | netif, | |
addr | |||
) |
Set the IP address of a network interface.
netif | A pointer to the uip_fw_netif structure for the network interface. |
addr | A pointer to an IP address. |
#define uip_fw_setnetmask | ( | netif, | |
addr | |||
) |
Set the netmask of a network interface.
netif | A pointer to the uip_fw_netif structure for the network interface. |
addr | A pointer to an IP address representing the netmask. |
void uip_fw_default | ( | struct uip_fw_netif * | netif | ) |
uint8_t uip_fw_forward | ( | void | ) |
Forward an IP packet in the uip_buf buffer.
Definition at line 404 of file uip-fw.c.
References uip_appdata, UIP_FW_FORWARDED, UIP_FW_LOCAL, uip_fw_output(), UIP_HTONS, uip_ipaddr_cmp, uip_len, UIP_LLH_LEN, and UIP_REASSEMBLY.
uint8_t uip_fw_output | ( | void | ) |
Output an IP packet on the correct network interface.
The IP packet should be present in the uip_buf buffer and its length in the global uip_len variable.
UIP_FW_ZEROLEN | Indicates that a zero-length packet transmission was attempted and that no packet was sent. |
UIP_FW_NOROUTE | No suitable network interface could be found for the outbound packet, and the packet was not sent. |
Definition at line 355 of file uip-fw.c.
References uip_fw_netif::next, NULL, uip_fw_netif::output, UIP_FW_NOROUTE, UIP_FW_OK, UIP_FW_ZEROLEN, uip_ipaddr_cmp, and uip_len.
Referenced by uip_fw_forward().
void uip_fw_register | ( | struct uip_fw_netif * | netif | ) |
Register a network interface with the forwarding module.
netif | A pointer to the network interface that is to be registered. |
Definition at line 499 of file uip-fw.c.
References uip_fw_netif::next.
Referenced by main().