ReactOS
0.4.16-dev-2-g02a6913
debug.h
Go to the documentation of this file.
1
/*
2
* Copyright (c) 2001-2004 Swedish Institute of Computer Science.
3
* All rights reserved.
4
*
5
* Redistribution and use in source and binary forms, with or without modification,
6
* are permitted provided that the following conditions are met:
7
*
8
* 1. Redistributions of source code must retain the above copyright notice,
9
* this list of conditions and the following disclaimer.
10
* 2. Redistributions in binary form must reproduce the above copyright notice,
11
* this list of conditions and the following disclaimer in the documentation
12
* and/or other materials provided with the distribution.
13
* 3. The name of the author may not be used to endorse or promote products
14
* derived from this software without specific prior written permission.
15
*
16
* THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR IMPLIED
17
* WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
18
* MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT
19
* SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
20
* EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT
21
* OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
22
* INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
23
* CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING
24
* IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY
25
* OF SUCH DAMAGE.
26
*
27
* This file is part of the lwIP TCP/IP stack.
28
*
29
* Author: Adam Dunkels <adam@sics.se>
30
*
31
*/
32
#ifndef __LWIP_DEBUG_H__
33
#define __LWIP_DEBUG_H__
34
35
#include "
lwip/arch.h
"
36
#include "
lwip/opt.h
"
37
44
#define LWIP_DBG_LEVEL_ALL 0x00
45
#define LWIP_DBG_LEVEL_OFF LWIP_DBG_LEVEL_ALL
/* compatibility define only */
46
#define LWIP_DBG_LEVEL_WARNING 0x01
/* bad checksums, dropped packets, ... */
47
#define LWIP_DBG_LEVEL_SERIOUS 0x02
/* memory allocation failures, ... */
48
#define LWIP_DBG_LEVEL_SEVERE 0x03
49
#define LWIP_DBG_MASK_LEVEL 0x03
50
52
#define LWIP_DBG_ON 0x80U
54
#define LWIP_DBG_OFF 0x00U
55
57
#define LWIP_DBG_TRACE 0x40U
59
#define LWIP_DBG_STATE 0x20U
61
#define LWIP_DBG_FRESH 0x10U
63
#define LWIP_DBG_HALT 0x08U
64
65
#ifndef LWIP_NOASSERT
66
#define LWIP_ASSERT(message, assertion) do { if(!(assertion)) \
67
LWIP_PLATFORM_ASSERT(message); } while(0)
68
#else
/* LWIP_NOASSERT */
69
#define LWIP_ASSERT(message, assertion)
70
#endif
/* LWIP_NOASSERT */
71
73
#ifndef LWIP_ERROR
74
#define LWIP_ERROR(message, expression, handler) do { if (!(expression)) { \
75
LWIP_PLATFORM_ASSERT(message); handler;}} while(0)
76
#endif
/* LWIP_ERROR */
77
78
#ifdef LWIP_DEBUG
82
#define LWIP_DEBUGF(debug, message) do { \
83
if ( \
84
((debug) & LWIP_DBG_ON) && \
85
((debug) & LWIP_DBG_TYPES_ON) && \
86
((s16_t)((debug) & LWIP_DBG_MASK_LEVEL) >= LWIP_DBG_MIN_LEVEL)) { \
87
LWIP_PLATFORM_DIAG(message); \
88
if ((debug) & LWIP_DBG_HALT) { \
89
while(1); \
90
} \
91
} \
92
} while(0)
93
94
#else
/* LWIP_DEBUG */
95
#define LWIP_DEBUGF(debug, message)
96
#endif
/* LWIP_DEBUG */
97
98
#endif
/* __LWIP_DEBUG_H__ */
99
arch.h
opt.h
drivers
network
tcpip
lwip
src
include
lwip
debug.h
Generated on Thu Sep 12 2024 06:14:28 for ReactOS by
1.9.6