Toggle navigation
Documentation
The friendly Operating System for the Internet of Things
Loading...
Searching...
No Matches
conf.h
Go to the documentation of this file.
1
/*
2
* Copyright (C) 2017 Freie Universität Berlin
3
*
4
* This file is subject to the terms and conditions of the GNU Lesser
5
* General Public License v2.1. See the file LICENSE in the top level
6
* directory for more details.
7
*/
8
21
#ifndef NET_GNRC_IPV6_NIB_CONF_H
22
#define NET_GNRC_IPV6_NIB_CONF_H
23
24
#include "
modules.h
"
25
26
#ifdef __cplusplus
27
extern
"C"
{
28
#endif
29
30
/* Apply configurations only if not using Kconfig for this module */
31
#if !IS_ACTIVE(CONFIG_KCONFIG_MODULE_GNRC_IPV6_NIB) || defined(DOXYGEN)
32
33
/* some pseudo-module based configuration, doc: see below */
34
#ifdef MODULE_GNRC_IPV6_NIB_6LBR
35
#ifndef CONFIG_GNRC_IPV6_NIB_6LBR
36
#define CONFIG_GNRC_IPV6_NIB_6LBR 1
37
#endif
38
#ifndef CONFIG_GNRC_IPV6_NIB_NUMOF
39
#define CONFIG_GNRC_IPV6_NIB_NUMOF (16)
40
#endif
41
#endif
42
43
#ifdef MODULE_GNRC_IPV6_NIB_6LR
44
#ifndef CONFIG_GNRC_IPV6_NIB_6LR
45
#define CONFIG_GNRC_IPV6_NIB_6LR 1
46
#endif
47
#endif
48
49
#ifdef MODULE_GNRC_IPV6_NIB_6LN
50
#ifndef CONFIG_GNRC_IPV6_NIB_6LN
51
#define CONFIG_GNRC_IPV6_NIB_6LN 1
52
#endif
53
54
/* We are only a 6lo node with no 'classic' IPv6 interface */
55
#ifndef MODULE_GNRC_IPV6_CLASSIC
56
#ifndef CONFIG_GNRC_IPV6_NIB_QUEUE_PKT
57
#define CONFIG_GNRC_IPV6_NIB_QUEUE_PKT 0
58
#endif
59
#ifndef CONFIG_GNRC_IPV6_NIB_SLAAC
60
#define CONFIG_GNRC_IPV6_NIB_SLAAC 0
61
#endif
62
#if !CONFIG_GNRC_IPV6_NIB_6LR
63
# ifndef CONFIG_GNRC_IPV6_NIB_ARSM
64
# define CONFIG_GNRC_IPV6_NIB_ARSM 0
65
# endif
66
# ifndef CONFIG_GNRC_IPV6_NIB_NUMOF
67
/* only needs to store default router */
68
# define CONFIG_GNRC_IPV6_NIB_NUMOF (1)
69
# endif
70
#endif
71
#endif
72
#endif
73
74
#ifdef MODULE_GNRC_IPV6_NIB_ROUTER
75
#define CONFIG_GNRC_IPV6_NIB_ROUTER 1
76
#endif
77
78
#ifdef MODULE_GNRC_IPV6_NIB_DNS
79
#define CONFIG_GNRC_IPV6_NIB_DNS 1
80
#endif
81
90
#ifndef CONFIG_GNRC_IPV6_NIB_6LBR
91
#define CONFIG_GNRC_IPV6_NIB_6LBR 0
92
#endif
93
97
#ifndef CONFIG_GNRC_IPV6_NIB_6LR
98
#if CONFIG_GNRC_IPV6_NIB_6LBR
99
#define CONFIG_GNRC_IPV6_NIB_6LR 1
100
#else
101
#define CONFIG_GNRC_IPV6_NIB_6LR 0
102
#endif
103
#endif
104
108
#ifndef CONFIG_GNRC_IPV6_NIB_6LN
109
#if CONFIG_GNRC_IPV6_NIB_6LR
110
#define CONFIG_GNRC_IPV6_NIB_6LN 1
111
#else
112
#define CONFIG_GNRC_IPV6_NIB_6LN 0
113
#endif
114
#endif
115
119
#ifndef CONFIG_GNRC_IPV6_NIB_ROUTER
120
#if CONFIG_GNRC_IPV6_NIB_6LR
121
#define CONFIG_GNRC_IPV6_NIB_ROUTER 1
122
#else
123
#define CONFIG_GNRC_IPV6_NIB_ROUTER 0
124
#endif
125
#endif
126
130
#ifndef CONFIG_GNRC_IPV6_NIB_ADV_ROUTER
131
#define CONFIG_GNRC_IPV6_NIB_ADV_ROUTER 0
132
#endif
133
146
#ifndef CONFIG_GNRC_IPV6_NIB_ADD_RIO_IN_RA
147
#define CONFIG_GNRC_IPV6_NIB_ADD_RIO_IN_RA 0
148
#endif
149
157
#ifndef CONFIG_GNRC_IPV6_NIB_ADD_RIO_IN_LAST_RA
158
#if IS_USED(MODULE_GNRC_IPV6_AUTO_SUBNETS)
159
#define CONFIG_GNRC_IPV6_NIB_ADD_RIO_IN_LAST_RA 1
160
#else
161
#define CONFIG_GNRC_IPV6_NIB_ADD_RIO_IN_LAST_RA 0
162
#endif
163
#endif
164
168
#ifndef CONFIG_GNRC_IPV6_NIB_ARSM
169
#define CONFIG_GNRC_IPV6_NIB_ARSM 1
170
#endif
171
175
#ifndef CONFIG_GNRC_IPV6_NIB_QUEUE_PKT
176
#define CONFIG_GNRC_IPV6_NIB_QUEUE_PKT 1
177
#endif
178
185
#ifndef CONFIG_GNRC_IPV6_NIB_SLAAC
186
#define CONFIG_GNRC_IPV6_NIB_SLAAC 1
187
#endif
188
192
#ifndef CONFIG_GNRC_IPV6_NIB_REDIRECT
193
#define CONFIG_GNRC_IPV6_NIB_REDIRECT 0
194
#endif
195
199
#ifndef CONFIG_GNRC_IPV6_NIB_DC
200
#if CONFIG_GNRC_IPV6_NIB_REDIRECT
201
#define CONFIG_GNRC_IPV6_NIB_DC 1
202
#else
203
#define CONFIG_GNRC_IPV6_NIB_DC 0
204
#endif
205
#endif
206
212
#ifndef CONFIG_GNRC_IPV6_NIB_DNS
213
#define CONFIG_GNRC_IPV6_NIB_DNS 0
214
#endif
215
221
#ifndef CONFIG_GNRC_IPV6_NIB_MULTIHOP_P6C
222
#if CONFIG_GNRC_IPV6_NIB_6LR
223
#define CONFIG_GNRC_IPV6_NIB_MULTIHOP_P6C 1
224
#else
225
#define CONFIG_GNRC_IPV6_NIB_MULTIHOP_P6C 0
226
#endif
227
#endif
228
234
#ifndef CONFIG_GNRC_IPV6_NIB_MULTIHOP_DAD
235
#define CONFIG_GNRC_IPV6_NIB_MULTIHOP_DAD 0
236
#endif
244
#ifndef CONFIG_GNRC_IPV6_NIB_REACH_TIME_RESET
245
#define CONFIG_GNRC_IPV6_NIB_REACH_TIME_RESET (7200000U)
246
#endif
247
253
#ifndef CONFIG_GNRC_IPV6_NIB_NO_RTR_SOL
254
#define CONFIG_GNRC_IPV6_NIB_NO_RTR_SOL 0
255
#endif
256
260
#ifndef CONFIG_GNRC_IPV6_NIB_L2ADDR_MAX_LEN
261
#define CONFIG_GNRC_IPV6_NIB_L2ADDR_MAX_LEN (8U)
262
#endif
263
270
#ifndef CONFIG_GNRC_IPV6_NIB_DEFAULT_ROUTER_NUMOF
271
#define CONFIG_GNRC_IPV6_NIB_DEFAULT_ROUTER_NUMOF (1)
272
#endif
273
280
#ifndef CONFIG_GNRC_IPV6_NIB_NUMOF
281
#define CONFIG_GNRC_IPV6_NIB_NUMOF (4)
282
#endif
283
292
#ifndef CONFIG_GNRC_IPV6_NIB_NBR_QUEUE_CAP
293
#define CONFIG_GNRC_IPV6_NIB_NBR_QUEUE_CAP (16)
294
#endif
295
302
#ifndef CONFIG_GNRC_IPV6_NIB_OFFL_NUMOF
303
#define CONFIG_GNRC_IPV6_NIB_OFFL_NUMOF (8)
304
#endif
305
306
#if CONFIG_GNRC_IPV6_NIB_MULTIHOP_P6C || defined(DOXYGEN)
310
#ifndef CONFIG_GNRC_IPV6_NIB_ABR_NUMOF
311
#define CONFIG_GNRC_IPV6_NIB_ABR_NUMOF (1)
312
#endif
313
#endif
314
315
#endif
/* !CONFIG_KCONFIG_MODULE_GNRC_IPV6_NIB || DOXYGEN */
316
317
#ifdef __cplusplus
318
}
319
#endif
320
321
#endif
/* NET_GNRC_IPV6_NIB_CONF_H */
modules.h
Common macros and compiler attributes/pragmas configuration.
Generated on Tue Nov 19 2024 19:13:40 by
1.9.8