HOWTO: NdisWan Debug Tracing

ID: Q229660


The information in this article applies to:


SUMMARY

This article describes how to enable different levels of debug trace information within NdisWAN. It is helpful to have as much information as possible from the NdisWAN when debugging NdisWAN 4.0 drivers. Furthermore, enabling any one of several levels of DbgPrint statements within NdisWAN provides enough additional information to successfully debug most NdisWAN driver problems. It is important to note, however, that by enabling the trace levels within the wrapper you may adversely affect timing and performance parameters that can cause or contribute to additional failures.


MORE INFORMATION

WARNING: Using Registry Editor incorrectly can cause serious problems that may require you to reinstall your operating system. Microsoft cannot guarantee that problems resulting from the incorrect use of Registry Editor can be solved. Use Registry Editor at your own risk.

For information about how to edit the registry, view the "Changing Keys and Values" Help topic in Registry Editor (Regedit.exe) or the "Add and Delete Information in the Registry" and "Edit Registry Data" Help topics in Regedt32.exe. Note that you should back up the registry before you edit it. If you are running Windows NT, you should also update your Emergency Repair Disk (ERD).


This process requires a CHECKED version of NDIS. To enable tracing, add the following values to the registry:


HKLM\System\CurrentControlSet\Services\NdisWan\Parameters key in the registry:
REG_DWORD DebugIdentifier
REG_DWORD DebugLevel 
DebugIdentifier, determines which NdisWAN component(s) are affected by the second variable, DebugLevel. DebugLevel determines the level, or amount of tracing in the selected component. Acceptable values for both variables are as follows:



// 
// DebugLevel
// 
#define	DBG_DEATH                               1
#define DBG_CRITICAL_ERROR                      2
#define	DBG_FAILURE                             4
#define	DBG_INFO                                6
#define	DBG_TRACE                               8
#define	DBG_VERBOSE                             10

// 
// DebugIdentifier
// 
#define	DBG_INIT				0x00000001
#define DBG_MINIPORT			        0x00000002
#define	DBG_PROTOCOL			        0x00000004
#define DBG_SEND				0x00000008
#define DBG_RECEIVE				0x00000010
#define DBG_IO					0x00000020
#define DBG_MEMORY				0x00000040
#define DBG_VJ					0x00000080
#define DBG_TAPI				0x00000100
#define DBG_CCP					0x00000200
#define DBG_LOOPBACK			        0x00000400
#define DBG_MULTILINK_RECV		        0x00000800
#define DBG_MULTILINK_SEND		        0x00001000
#define DBG_SEND_VJ				0x00002000
#define DBG_RECV_VJ				0x00004000
#define	DBG_ALL				        0xFFFFFFFF
 


REFERENCES

It is important to note that by enabling the trace levels within the wrapper, you may adversely affect timing and performance parameters that can cause or contribute to additional failures.

Additional query words:


Keywords          : kbDDK kbNDIS kbNTOS400sp3 kbNTOS400sp4 kbNetTrace kbGrpNTDDK 
Version           : winnt:
Platform          : winnt 
Issue type        : kbhowto 

Last Reviewed: April 22, 1999