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.
|
|
#define SIZE_OF_NT_SIGNATURE sizeof (DWORD)
/* global macros to define header offsets into file */ /* offset to PE file signature */ #define NTSIGNATURE(a) ((LPVOID)((BYTE *)a + \
((PIMAGE_DOS_HEADER)a)->e_lfanew))
/* DOS header identifies the NT PEFile signature dword
the PEFILE header exists just after that dword */ #define PEFHDROFFSET(a) ((LPVOID)((BYTE *)a + \
((PIMAGE_DOS_HEADER)a)->e_lfanew + \ SIZE_OF_NT_SIGNATURE))
/* PE optional header is immediately after PEFile header */ #define OPTHDROFFSET(a) ((LPVOID)((BYTE *)a + \
((PIMAGE_DOS_HEADER)a)->e_lfanew + \ SIZE_OF_NT_SIGNATURE + \ sizeof (IMAGE_FILE_HEADER)))
/* section headers are immediately after PE optional header */ #define SECHDROFFSET(a) ((LPVOID) IMAGE_FIRST_SECTION(NTSIGNATURE(a)))
/* global prototypes for functions in pefile.c */ /* PE file header info */ DWORD WINAPI ImageFileType (LPVOID); BOOL WINAPI GetPEFileHeader (LPVOID, PIMAGE_FILE_HEADER);
LPVOID WINAPI GetImageBase (LPVOID); LPVOID WINAPI ImageDirectoryOffset (LPVOID, DWORD);
/* PE section header info */ int WINAPI GetSectionNames (LPVOID, HANDLE, char **); BOOL WINAPI GetSectionHdrByName (LPVOID, PIMAGE_SECTION_HEADER, char *);
/* export section info */ int WINAPI GetExportFunctionNames (LPVOID);
|