Added new driver 'packet', ported from the Windows Packet Capture Driver project.
[reactos.git] / reactos / drivers / net / packet / debug.h
1 /*
2 * Copyright (c) 1999, 2000
3 * Politecnico di Torino. All rights reserved.
4 *
5 * Redistribution and use in source and binary forms, with or without
6 * modification, are permitted provided that: (1) source code distributions
7 * retain the above copyright notice and this paragraph in its entirety, (2)
8 * distributions including binary code include the above copyright notice and
9 * this paragraph in its entirety in the documentation or other materials
10 * provided with the distribution, and (3) all advertising materials mentioning
11 * features or use of this software display the following acknowledgement:
12 * ``This product includes software developed by the Politecnico
13 * di Torino, and its contributors.'' Neither the name of
14 * the University nor the names of its contributors may be used to endorse
15 * or promote products derived from this software without specific prior
16 * written permission.
17 * THIS SOFTWARE IS PROVIDED ``AS IS'' AND WITHOUT ANY EXPRESS OR IMPLIED
18 * WARRANTIES, INCLUDING, WITHOUT LIMITATION, THE IMPLIED WARRANTIES OF
19 * MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE.
20 */
21
22
23
24 #if DBG
25
26 #define IF_PACKETDEBUG(f) if (PacketDebugFlag & (f))
27 extern ULONG PacketDebugFlag;
28
29 #define PACKET_DEBUG_LOUD 0x00000001 // debugging info
30 #define PACKET_DEBUG_VERY_LOUD 0x00000002 // excessive debugging info
31
32 #define PACKET_DEBUG_INIT 0x00000100 // init debugging info
33
34 //
35 // Macro for deciding whether to dump lots of debugging information.
36 //
37
38 #define IF_LOUD(A) IF_PACKETDEBUG( PACKET_DEBUG_LOUD ) { A }
39 #define IF_VERY_LOUD(A) IF_PACKETDEBUG( PACKET_DEBUG_VERY_LOUD ) { A }
40 #define IF_INIT_LOUD(A) IF_PACKETDEBUG( PACKET_DEBUG_INIT ) { A }
41
42 #else
43
44 #define IF_LOUD(A)
45 #define IF_VERY_LOUD(A)
46 #define IF_INIT_LOUD(A)
47
48 #endif