Prusa MINI Firmware overview
Main Page
Modules
Classes
Files
File List
File Members
lowpan6.h
Go to the documentation of this file.
1
/**
2
* @file
3
*
4
* 6LowPAN output for IPv6. Uses ND tables for link-layer addressing. Fragments packets to 6LowPAN units.
5
*/
6
7
/*
8
* Copyright (c) 2015 Inico Technologies Ltd.
9
* All rights reserved.
10
*
11
* Redistribution and use in source and binary forms, with or without modification,
12
* are permitted provided that the following conditions are met:
13
*
14
* 1. Redistributions of source code must retain the above copyright notice,
15
* this list of conditions and the following disclaimer.
16
* 2. Redistributions in binary form must reproduce the above copyright notice,
17
* this list of conditions and the following disclaimer in the documentation
18
* and/or other materials provided with the distribution.
19
* 3. The name of the author may not be used to endorse or promote products
20
* derived from this software without specific prior written permission.
21
*
22
* THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR IMPLIED
23
* WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
24
* MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT
25
* SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
26
* EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT
27
* OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
28
* INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
29
* CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING
30
* IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY
31
* OF SUCH DAMAGE.
32
*
33
* This file is part of the lwIP TCP/IP stack.
34
*
35
* Author: Ivan Delamer <delamer@inicotech.com>
36
*
37
*
38
* Please coordinate changes and requests with Ivan Delamer
39
* <delamer@inicotech.com>
40
*/
41
42
#ifndef LWIP_HDR_LOWPAN6_H
43
#define LWIP_HDR_LOWPAN6_H
44
45
#include "
netif/lowpan6_opts.h
"
46
47
#if LWIP_IPV6 && LWIP_6LOWPAN
/* don't build if not configured for use in lwipopts.h */
48
49
#include "
lwip/pbuf.h
"
50
#include "
lwip/ip.h
"
51
#include "
lwip/ip_addr.h
"
52
#include "
lwip/netif.h
"
53
54
#ifdef __cplusplus
55
extern
"C"
{
56
#endif
57
58
/** 1 second period */
59
#define LOWPAN6_TMR_INTERVAL 1000
60
61
void
lowpan6_tmr(
void
);
62
63
err_t
lowpan6_set_context(
u8_t
index,
const
ip6_addr_t * context);
64
err_t
lowpan6_set_short_addr(
u8_t
addr_high,
u8_t
addr_low);
65
66
#if LWIP_IPV4
67
err_t
lowpan4_output(
struct
netif
*
netif
,
struct
pbuf
*q,
const
ip4_addr_t *
ipaddr
);
68
#endif
/* LWIP_IPV4 */
69
err_t
lowpan6_output(
struct
netif
*
netif
,
struct
pbuf
*q,
const
ip6_addr_t *ip6addr);
70
err_t
lowpan6_input(
struct
pbuf
* p,
struct
netif
*
netif
);
71
err_t
lowpan6_if_init(
struct
netif
*
netif
);
72
73
/* pan_id in network byte order. */
74
err_t
lowpan6_set_pan_id(
u16_t
pan_id);
75
76
#if !NO_SYS
77
err_t
tcpip_6lowpan_input(
struct
pbuf
*p,
struct
netif
*inp);
78
#endif
/* !NO_SYS */
79
80
#ifdef __cplusplus
81
}
82
#endif
83
84
#endif
/* LWIP_IPV6 && LWIP_6LOWPAN */
85
86
#endif
/* LWIP_HDR_LOWPAN6_H */
ipaddr
ip4_addr_t ipaddr
Definition:
lwip.c:73
pbuf.h
u16_t
uint16_t u16_t
Definition:
arch.h:121
netif.h
u8_t
uint8_t u8_t
Definition:
arch.h:119
netif
Definition:
netif.h:225
lowpan6_opts.h
err_t
s8_t err_t
Definition:
err.h:57
ip.h
pbuf
Definition:
pbuf.h:142
ip_addr.h
Prusa-Firmware-Buddy-Private1
lib
Middlewares
Third_Party
LwIP
src
include
netif
lowpan6.h
Generated by
1.8.16