/*++ Copyright (c) 1985 - 1999, Microsoft Corporation Module Name: kdexts.c Abstract: This file contains the generic routines and initialization code for the kernel debugger extensions dll. Author: Wesley Witt (wesw) 26-Aug-1993 Environment: User Mode --*/ #include "precomp.h" #pragma hdrstop #include #include #include #include // // globals // EXT_API_VERSION ApiVersion = { VER_PRODUCTVERSION_W >> 8, VER_PRODUCTVERSION_W & 0xff, EXT_API_VERSION_NUMBER64, 0 }; WINDBG_EXTENSION_APIS ExtensionApis; USHORT SavedMajorVersion; USHORT SavedMinorVersion; BOOL bDebuggingChecked; DllInit( HANDLE hModule, DWORD dwReason, DWORD dwReserved ) { UNREFERENCED_PARAMETER(hModule); UNREFERENCED_PARAMETER(dwReserved); switch (dwReason) { case DLL_THREAD_ATTACH: break; case DLL_THREAD_DETACH: break; case DLL_PROCESS_DETACH: break; case DLL_PROCESS_ATTACH: break; } return TRUE; } VOID WinDbgExtensionDllInit( WINDBG_EXTENSION_APIS *lpExtensionApis, USHORT MajorVersion, USHORT MinorVersion ) { ExtensionApis = *lpExtensionApis; SavedMajorVersion = MajorVersion; SavedMinorVersion = MinorVersion; bDebuggingChecked = (SavedMajorVersion == 0x0c); return; } DECLARE_API( version ) { #if DBG PCHAR DebuggerType = "Checked"; #else PCHAR DebuggerType = "Free"; #endif UNREFERENCED_PARAMETER(args); UNREFERENCED_PARAMETER(dwProcessor); UNREFERENCED_PARAMETER(dwCurrentPc); UNREFERENCED_PARAMETER(hCurrentThread); UNREFERENCED_PARAMETER(hCurrentProcess); dprintf( "%s Extension dll for Build %d debugging %s kernel for Build %d\n", DebuggerType, VER_PRODUCTBUILD, SavedMajorVersion == 0x0c ? "Checked" : "Free", SavedMinorVersion ); } LPEXT_API_VERSION ExtensionApiVersion( VOID ) { return &ApiVersion; }