6LoWPAN (RFC4944)
NETIFs

## Functions

err_t | lowpan6_set_context (u8_t idx, const ip6_addr_t *context)
err_t | lowpan6_set_short_addr (u8_t addr_high, u8_t addr_low)
err_t | lowpan6_output (struct netif *netif, struct pbuf *q, const ip6_addr_t *ip6addr)
err_t | lowpan6_input (struct pbuf *p, struct netif *netif)
err_t | lowpan6_set_pan_id (u16_t pan_id)
err_t | tcpip_6lowpan_input (struct pbuf *p, struct netif *inp)

## Detailed Description

6LowPAN netif implementation

## Function Documentation

## lowpan6_input()

err_t lowpan6_input | ( | struct pbuf * | p,
|  | struct netif * | netif
| ) |  |

NETIF input function: don't free the input pbuf when returning != ERR_OK!

## lowpan6_output()

err_t lowpan6_output | ( | struct netif * | netif,
|  | struct pbuf * | q,
|  | const ip6_addr_t * | ip6addr
| ) |  |

Resolve and fill-in IEEE 802.15.4 address header for outgoing IPv6 packet.

Perform Header Compression and fragment if necessary.

Parameters

  netif | The lwIP network interface which the IP packet will be sent on.
  q | The pbuf(s) containing the IP packet to be sent.
  ip6addr | The IP address of the packet destination.

Returns
  err_t

## lowpan6_set_context()

err_t lowpan6_set_context | ( | u8_t | idx,
|  | const ip6_addr_t * | context
| ) |  |

Set context

## lowpan6_set_pan_id()

err_t lowpan6_set_pan_id | ( | u16_t | pan_id | ) |

Set PAN ID

## lowpan6_set_short_addr()

err_t lowpan6_set_short_addr | ( | u8_t | addr_high,
|  | u8_t | addr_low
| ) |  |

Set short address

## tcpip_6lowpan_input()

err_t tcpip_6lowpan_input | ( | struct pbuf * | p,
|  | struct netif * | inp
| ) |  |

Pass a received packet to tcpip_thread for input processing

Parameters

  p | the received packet, p->payload pointing to the IEEE 802.15.4 header.
  inp | the network interface on which the packet was received