Leaked source code of windows server 2003
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
 
 
 

211 lines
5.6 KiB

/*++
Copyright (c) 2002 Microsoft Corporation
Module Name:
debug.h
Abstract:
This header provides debugging support prototypes and macros
Author:
Neil Sandlin (neilsa) Jan 1 2002
Revision History:
--*/
#if !defined(_DEBUG_)
#define DEBUG
#if DBG
//
// Debug mask flags
//
#define SDBUS_DEBUG_ALL 0x0FFFFFFF
#define SDBUS_DEBUG_FAIL 0x00000001
#define SDBUS_DEBUG_WARNING 0x00000002
#define SDBUS_DEBUG_INFO 0x00000004
#define SDBUS_DEBUG_ENUM 0x00000010
#define SDBUS_DEBUG_TUPLES 0x00000020
#define SDBUS_DEBUG_PNP 0x00000040
#define SDBUS_DEBUG_POWER 0x00000080
#define SDBUS_DEBUG_INTERFACE 0x00000100
#define SDBUS_DEBUG_IOCTL 0x00000200
#define SDBUS_DEBUG_WORKENG 0x00000400
#define SDBUS_DEBUG_WORKPROC 0x00000800
#define SDBUS_DEBUG_EVENT 0x00001000
#define SDBUS_DEBUG_CARD_EVT 0x00002000
#define SDBUS_DEBUG_DEVICE 0x00010000
#define SDBUS_DEBUG_DUMP_REGS 0x00020000
#define SDBUS_DEBUG_BREAK 0x10000000
#define SDBUS_DEBUG_LOG 0x20000000
#define DBGLOGWIDTH 128
#define DBGLOGCOUNT 500
typedef struct _SDBUS_STRING_MAP {
ULONG Id;
PCHAR String;
} SDBUS_STRING_MAP, *PSDBUS_STRING_MAP;
//
// Debug globals
//
extern ULONG SdbusDebugMask;
extern SDBUS_STRING_MAP SdbusDbgPnpIrpStringMap[];
extern SDBUS_STRING_MAP SdbusDbgPoIrpStringMap[];
extern SDBUS_STRING_MAP SdbusDbgDeviceRelationStringMap[];
extern SDBUS_STRING_MAP SdbusDbgSystemPowerStringMap[];
extern SDBUS_STRING_MAP SdbusDbgDevicePowerStringMap[];
extern PSDBUS_STRING_MAP SdbusDbgStatusStringMap;
extern SDBUS_STRING_MAP SdbusDbgFdoPowerWorkerStringMap[];
extern SDBUS_STRING_MAP SdbusDbgPdoPowerWorkerStringMap[];
extern SDBUS_STRING_MAP SdbusDbgSocketPowerWorkerStringMap[];
extern SDBUS_STRING_MAP SdbusDbgConfigurationWorkerStringMap[];
extern SDBUS_STRING_MAP SdbusDbgTupleStringMap[];
extern SDBUS_STRING_MAP SdbusDbgWakeStateStringMap[];
extern SDBUS_STRING_MAP SdbusDbgEventStringMap[];
extern SDBUS_STRING_MAP SdbusDbgWPFunctionStringMap[];
extern SDBUS_STRING_MAP SdbusDbgWorkerStateStringMap[];
extern SDBUS_STRING_MAP SdbusDbgSocketStateStringMap[];
//
// Debug prototypes
//
PCHAR
SdbusDbgLookupString(
IN PSDBUS_STRING_MAP Map,
IN ULONG Id
);
VOID
SdbusDebugPrint(
ULONG DebugMask,
PCCHAR DebugMessage,
...
);
VOID
SdbusDumpDbgLog(
);
VOID
SdbusPrintLogEntry(
LONG index
);
VOID
SdbusClearDbgLog(
);
VOID
SdbusInitializeDbgLog(
PUCHAR buffer
);
VOID
SdbusDebugDumpCsd(
PSD_CSD pSdCsd
);
VOID
SdbusDebugDumpCid(
PSD_CID pSdCid
);
VOID
DebugDumpSdResponse(
PULONG pResp,
UCHAR ResponseType
);
//
// Debug macros
//
#define DebugPrint(X) SdbusDebugPrint X
#define STATUS_STRING(_Status) \
(_Status) == STATUS_SUCCESS ? \
"STATUS_SUCCESS" : SdbusDbgLookupString(SdbusDbgStatusStringMap, (_Status))
#define PNP_IRP_STRING(_Irp) \
SdbusDbgLookupString(SdbusDbgPnpIrpStringMap, (_Irp))
#define PO_IRP_STRING(_Irp) \
SdbusDbgLookupString(SdbusDbgPoIrpStringMap, (_Irp))
#define RELATION_STRING(_Relation) \
SdbusDbgLookupString(SdbusDbgDeviceRelationStringMap, (_Relation))
#define SYSTEM_POWER_STRING(_State) \
SdbusDbgLookupString(SdbusDbgSystemPowerStringMap, (_State))
#define DEVICE_POWER_STRING(_State) \
SdbusDbgLookupString(SdbusDbgDevicePowerStringMap, (_State))
#define FDO_POWER_WORKER_STRING(_State) \
SdbusDbgLookupString(SdbusDbgFdoPowerWorkerStringMap, (_State))
#define PDO_POWER_WORKER_STRING(_State) \
SdbusDbgLookupString(SdbusDbgPdoPowerWorkerStringMap, (_State))
#define SOCKET_POWER_WORKER_STRING(_State) \
SdbusDbgLookupString(SdbusDbgSocketPowerWorkerStringMap, (_State))
#define TUPLE_STRING(_Tuple) \
SdbusDbgLookupString(SdbusDbgTupleStringMap, (_Tuple))
#define WAKESTATE_STRING(_State) \
SdbusDbgLookupString(SdbusDbgWakeStateStringMap, (_State))
#define EVENT_STRING(_State) \
SdbusDbgLookupString(SdbusDbgEventStringMap, (_State))
#define WP_FUNC_STRING(_State) \
SdbusDbgLookupString(SdbusDbgWPFunctionStringMap, (_State))
#define WORKER_STATE_STRING(_State) \
SdbusDbgLookupString(SdbusDbgWorkerStateStringMap, (_State))
#define SOCKET_STATE_STRING(_State) \
SdbusDbgLookupString(SdbusDbgSocketStateStringMap, (_State))
//
// Structures
//
#else
//
// !defined DBG
//
#define DebugPrint(X)
#define SdbusDumpDbgLog()
#define DebugDumpSdResponse(x, y)
#define DUMP_SOCKET(Socket)
#define PDO_TRACE(PdoExt, Context)
#define STATUS_STRING(_Status) ""
#define PNP_IRP_STRING(_Irp) ""
#define PO_IRP_STRING(_Irp) ""
#define RELATION_STRING(_Relation) ""
#define SYSTEM_POWER_STRING(_State) ""
#define DEVICE_POWER_STRING(_State) ""
#endif // DBG
#endif