NetBurner 3.1
predef.h
1 /*NB_REVISION*/
2 
3 /*NB_COPYRIGHT*/
4 
5 #ifndef _PREDEF_H_
6 #define _PREDEF_H_
7 
8 /* This release Build on: $Date: 2012/03/28 14:35:22 $ */
9 /* This build revison tag: $Name: $ */
10 
11 /*
12  *****************************************************************************
13  *
14  * Features
15  * NBRTOS_PRIO_PROMOTION - Priority Inheritence upon Priority Inversion
16  * of OS_CRIT ownership
17  *
18  *****************************************************************************
19  */
20 /* #define NBRTOS_PRIO_PROMOTION (1) */
21 
22 /*
23  *****************************************************************************
24  *
25  * Debugging
26  *
27  * Use these constants to turn debug features on and off
28  * NBRTOS_STACKCHECK - Stack integrity
29  * NBRTOS_STACKOVERFLOW - Real time stack overflow protection
30  * * Reduces all stack sizes by 256 bytes, creating
31  * a canary zone which will be watched for writes
32  * * Use compiler option -fstack-check
33  * * Enable in application with EnableOSStackProtector()
34  * NBRTOS_STACKUNDERFLOW - Real time stack underflow protection
35  * * Reduces all stack sizes by 256 bytes, creating
36  * a canary zone which will be watched for writes
37  * * Use compiler option -fstack-check
38  * * Enable in application with EnableOSStackProtector()
39  *
40  * NBRTOS_TASKLIST - Task diagnostics
41  * NBRTOS_TASK_LOG - Task change callback with new prio, IRQ context.
42  * NBRTOS_TIME - Task timecounting
43  * BUFFER_DIAG - Buffer integrity and use
44  * BUFFER_DIAG_LOG - Buffer integrity and use logging, via SysLog
45  * BUFFER_SANITY - Buffer Pool sanity traps
46  * _DEBUG_PRINT - Enables DBPRINT Macros in release builds
47  * ENABLE_SMARTTRAP - Enables extra debugging information during traps
48  *****************************************************************************
49  */
50 /* #define NBRTOS_STACKCHECK (1) */
51 /* #define NBRTOS_STACKOVERFLOW (1) */
52 /* #define NBRTOS_STACKUNDERFLOW (1) */
53 /* #define NBRTOS_TASKLIST (1) */
54 /* #define NBRTOS_TASK_LOG (1) */
55 /* #define NBRTOS_TIME (1) */
56 /* #define BUFFER_DIAG (1) */
57 /* #define BUFFER_DIAG_LOG (1) */
58 /* #define BUFFER_SANITY (1) */
59 /* #define _DEBUG_PRINT (1) */
60 #define ENABLE_SMARTTRAP (1)
61 
62 /*
63  *****************************************************************************
64  *
65  * Utility
66  *
67  * Development features potentionally undesirable in final release
68  * ALLOW_NBID_REBOOT - Adds single UDP message reboot to device
69  *****************************************************************************
70  */
71 /* #define ALLOW_NBID_REBOOT (1) */
72 
73 /*
74  *****************************************************************************
75  *
76  * Multihome
77  *
78  * Uncomment to enable multihoming operation
79  *
80  *****************************************************************************
81  */
82 /* #define MULTIHOME */
83 
84 /*****************************************************************************
85  *
86  * IPv6 Config
87  *
88  * Select dual stack mode or IPv4 only mode
89  *
90  *****************************************************************************
91  */
92 #define IPV6 (1) // Dual stack IPv4/IPv6 mode
93 
94 #define IPV6_COUNTERS (1) // add coutners to IPV6
95 //#define IPV4ONLY (1) // IPv4 only mode
96 
97 /*
98  *****************************************************************************
99  *
100  * Auto-IP
101  *
102  * Comment out this line to disable the Auto-IP virtual interface
103  *
104  *****************************************************************************
105  */
106 
107 #define AUTOIP
108 
109 /*
110  *****************************************************************************
111  *
112  * Custom Ethernet Handlers
113  *
114  * Uncomment this line to enable Custom Ethernet Handlers
115  *
116  *****************************************************************************
117  */
118 /* #define ALLOW_CUSTOM_NET_DO_RX */
119 
120 /*
121  *****************************************************************************
122  *
123  * TCP No Copy Mode
124  *
125  * Uncomment these lines to enable TCP No Copy features
126  * These reduce buffer space efficiency in order to eliminate the secondary
127  * copy when performing TCP transactions.
128  *
129  *****************************************************************************
130  */
131 #define TCP_NOCOPY_TX (1)
132 
133 /*
134  *****************************************************************************
135  *
136  * Multi-home
137  *
138  * Uncomment to enable UDP fragments
139  *
140  *****************************************************************************
141  */
142 /* #define UDP_FRAGMENTS ( 4 ) */
143 
144 /*
145  *****************************************************************************
146  *
147  * Random value
148  *
149  * Comment out this line to eliminate the random value support in the
150  * library. It was commented out up until and including Rel2.4 Rc3
151  *
152  *****************************************************************************
153  */
154 #define GATHER_RANDOM (1)
155 
156 /*
157  *****************************************************************************
158  *
159  * SSL and/or SSH support
160  *
161  * Needs to be uncommented to support these features
162  *
163  *****************************************************************************
164  */
165 /*
166  * SSL Supported
167  * Should be defined when SSL is included in library
168  *
169  */
170 #define NB_SSL_SUPPORTED (1)
171 /* #define SSL_V3_DISABLED ( 1 ) */
172 
173 /*****************************************************************************
174  * Optional SSL Features
175  * SSL_TLS_SUPPORT - TLS is supported by default with SSL.
176  * WEB_CLIENT_SSL_SUPPORT - Whether the webclient library recognizes 'https://'
177  * SSL_DEFAULT_MAX_SESSION_AGE_TICKS
178  * - Maximum time to allow a sessions to be resused after it is created
179  * - A value of 0 disables forced renegotiation based on time
180  *****************************************************************************/
181 
182 #ifdef NB_SSL_SUPPORTED
183 #define SSL_TLS_SUPPORT (1)
184 #define WEB_CLIENT_SSL_SUPPORT (1)
185 #define SSL_DEFAULT_MAX_SESSION_AGE_TICKS (0 * TICKS_PER_SECOND)
186 #define TLS_CACHE_PEER_CERT_VALIDATIONS (1)
187 #endif
188 
189 /*
190  * SSL client certificate checking supported
191  * Should be defined when client certificate checking is required
192  *
193  */
194 #ifdef NB_SSL_SUPPORTED
195 /* #define NB_SSL_CLIENT_CERTIFICATE_CHECKING_ENABLED ( 1 ) */
196 #endif /* #ifdef NB_SSL_SUPPORTED */
197 
198 /*
199  * SSH Supported
200  * Should be defined when SSH is included in library
201  *
202  * NOTE: Not currently supported in NNDK 3.0
203  */
204 
205 /* #define NB_SSH_SUPPORTED ( 1 ) */
206 
207 /*
208  * Security Random Number Support is required for SSL and SSH
209  *
210  */
211 #if defined(NB_SSL_SUPPORTED) || defined(NB_SSH_SUPPORTED)
212 #ifndef GATHER_RANDOM
213 #define GATHER_RANDOM (1)
214 #endif
215 #endif
216 
217 /*
218  *****************************************************************************
219  *
220  * User QSPI driver
221  *
222  * Uncomment to enable user QSPI driver defined in qspi.h
223  * Enabling the user QSPI driver disables the joint use of the QSPI by
224  * WLAN and SD/MMC.
225  *
226  *****************************************************************************
227  */
228 #define NB_ENABLE_USER_QSPI (1)
229 
230 /*
231  *****************************************************************************
232  *
233  * Enable Legacy config records for the primary uinterface
234  *
235  * Uncomment to enable
236  *
237  *****************************************************************************
238  */
239 #define SUPPORT_LEGACY_FIND (1)
240 
241 /*
242  *****************************************************************************
243  *
244  * Disable Symetric Routing
245  *
246  * Uncomment to prevent all non-local incoming packet routes from being put
247  * in the arp cache.
248  *
249  *****************************************************************************
250  */
251 /* #define NO_SYMETRIC_ROUTING (1) */
252 
253 /*
254  *****************************************************************************
255  *
256  * FEC ISR Error Counters
257  *
258  * Uncomment to enable FEC error counters in ethernet.cpp and etherprint.cpp
259  *
260  *****************************************************************************
261  */
262 /*#define FEC_ISR_ERROR_COUNTERS (1) */
263 
264 /*
265  *****************************************************************************
266  *
267  * Library Constants
268  *
269  * Please do not modify any definitions below this comment.
270  *
271  *****************************************************************************
272  */
273 /*
274  * Library Versions
275  *
276  */
277 
278 #define NNDK_MAJOR
279 #define NNDK_MINOR
280 #define NNDK_PATCH
281 
282 // Old defines preserved, use major/minor/patch defines above
283 #define NB_VERSION_1_5
284 #define NB_VERSION_1_6
285 #define NB_VERSION_1_7
286 #define NB_VERSION_1_8
287 #define NB_VERSION_1_9
288 #define NB_VERSION_2_0
289 #define NB_VERSION_2_7
290 #define NB_MINOR_VERSION (7)
291 #define NB_VERSION_TEXT "2.7"
292 
293 #endif /* #ifndef _PREDEF_H_ */