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.
 
 
 
 
 
 

63 lines
1.7 KiB

//----------------------------------------------------------------------------
//
// Source file lookup and management.
//
// Copyright (C) Microsoft Corporation, 1997-2002.
//
//----------------------------------------------------------------------------
#ifndef _SOURCE_H_
#define _SOURCE_H_
#define SRCOPT_STEP_SOURCE 0x00000001
#define SRCOPT_LIST_LINE 0x00000002
#define SRCOPT_LIST_SOURCE 0x00000004
#define SRCOPT_LIST_SOURCE_ONLY 0x00000008
extern ULONG g_SrcOptions;
extern PSTR g_SrcPath;
extern ULONG g_OciSrcBefore, g_OciSrcAfter;
typedef struct _SRCFILE
{
struct _SRCFILE *Next;
LPSTR File;
ULONG Lines;
LPSTR *LineText;
LPSTR RawText;
} SRCFILE, *PSRCFILE;
void UnloadSrcFiles(void);
void OutputSrcLines(PSRCFILE File, ULONG First, ULONG Last, ULONG Mark);
BOOL OutputSrcLinesAroundAddr(ULONG64 Offset, ULONG Before, ULONG After);
enum
{
// Information was found.
LINE_FOUND,
// No information was found.
LINE_NOT_FOUND,
// A specific module was referenced and it did
// not contain the requested line.
LINE_NOT_FOUND_IN_MODULE,
};
ULONG GetOffsetFromLine(PSTR FileLine, PULONG64 Offset);
void ParseSrcOptCmd(CHAR Cmd);
void ParseSrcLoadCmd(void);
void ParseSrcListCmd(CHAR Cmd);
void ParseOciSrcCmd(void);
void DotLines(PDOT_COMMAND Cmd, DebugClient* Client);
BOOL FindSrcFileOnPath(ULONG StartElement,
LPSTR File,
ULONG Flags,
PSTR Found,
ULONG FoundSize,
PSTR* MatchPart,
PULONG FoundElement);
#endif // #ifndef _SOURCE_H_