winedump: Win64 printf format warning fixes.

This commit is contained in:
Michael Stefaniuc 2006-09-29 21:32:57 +02:00 committed by Alexandre Julliard
parent d2d330174f
commit ba123abf57
7 changed files with 175 additions and 176 deletions

View File

@ -3,7 +3,6 @@ TOPOBJDIR = ../..
SRCDIR = @srcdir@
VPATH = @srcdir@
EXEEXT = @EXEEXT@
DEFS = -DWINE_NO_LONG_AS_INT
PROGRAMS = winedump$(EXEEXT)
MANPAGES = winedump.man

View File

@ -424,9 +424,9 @@ static void dump_codeview_headers(unsigned long base, unsigned long len)
const struct {DWORD TimeStamp; DWORD Dunno; char Name[1];} *pdb_data;
pdb_data = (const void *)(signature + 1);
printf(" TimeStamp: %08lX (%s)\n",
printf(" TimeStamp: %08X (%s)\n",
pdb_data->TimeStamp, get_time_str(pdb_data->TimeStamp));
printf(" Dunno: %08lX\n", pdb_data->Dunno);
printf(" Dunno: %08X\n", pdb_data->Dunno);
printf(" Filename: %s\n", pdb_data->Name);
return;
}
@ -544,7 +544,7 @@ void dump_coff(unsigned long coffbase, unsigned long len, const void* pmt)
*/
nampnt = get_coff_name( coff_sym, coff_strtab );
printf("%05d | %02d:%08lx [%08lx] | %s\n", i, coff_sym->SectionNumber - 1, coff_sym->Value - base, coff_sym->Value, nampnt);
printf("%05d | %02d:%08x [%08x] | %s\n", i, coff_sym->SectionNumber - 1, coff_sym->Value - base, coff_sym->Value, nampnt);
i += naux;
continue;
}
@ -559,7 +559,7 @@ void dump_coff(unsigned long coffbase, unsigned long len, const void* pmt)
/* FIXME: add code to find out the file this symbol belongs to,
* see winedbg */
printf("%05d | %02d:%08lx [%08lx] | %s\n", i, coff_sym->SectionNumber - 1, coff_sym->Value - base, coff_sym->Value, nampnt);
printf("%05d | %02d:%08x [%08x] | %s\n", i, coff_sym->SectionNumber - 1, coff_sym->Value - base, coff_sym->Value, nampnt);
i += naux;
continue;
}

View File

@ -96,7 +96,7 @@ static void dump_le_header( const IMAGE_VXD_HEADER *le )
le->e32_border == 0 ? "little-indian" : "big-endian");
printf( " Word order: %s\n",
le->e32_worder == 0 ? "little-indian" : "big-endian");
printf( " Executable format level: %ld\n",
printf( " Executable format level: %d\n",
le->e32_level);
printf( " CPU type: %s\n",
le->e32_cpu == 0x01 ? "Intel 80286" :
@ -115,9 +115,9 @@ static void dump_le_header( const IMAGE_VXD_HEADER *le )
le->e32_os == 0x03 ? "DOS 4.x" :
le->e32_os == 0x04 ? "Windows 386" :
"Unknown");
printf( " Module version: %ld\n",
printf( " Module version: %d\n",
le->e32_ver);
printf( " Module type flags: %08lx\n",
printf( " Module type flags: %08x\n",
le->e32_mflags);
if (le->e32_mflags & 0x8000)
{
@ -140,85 +140,85 @@ static void dump_le_header( const IMAGE_VXD_HEADER *le )
if (le->e32_mflags & 0x8000)
printf( " Module is DLL\n");
}
printf( " Number of memory pages: %ld\n",
printf( " Number of memory pages: %d\n",
le->e32_mpages);
printf( " Initial object CS number: %08lx\n",
printf( " Initial object CS number: %08x\n",
le->e32_startobj);
printf( " Initial EIP: %08lx\n",
printf( " Initial EIP: %08x\n",
le->e32_eip);
printf( " Initial object SS number: %08lx\n",
printf( " Initial object SS number: %08x\n",
le->e32_stackobj);
printf( " Initial ESP: %08lx\n",
printf( " Initial ESP: %08x\n",
le->e32_esp);
printf( " Memory page size: %ld\n",
printf( " Memory page size: %d\n",
le->e32_pagesize);
printf( " Bytes on last page: %ld\n",
printf( " Bytes on last page: %d\n",
le->e32_lastpagesize);
printf( " Fix-up section size: %ld\n",
printf( " Fix-up section size: %d\n",
le->e32_fixupsize);
printf( " Fix-up section checksum: %08lx\n",
printf( " Fix-up section checksum: %08x\n",
le->e32_fixupsum);
printf( " Loader section size: %ld\n",
printf( " Loader section size: %d\n",
le->e32_ldrsize);
printf( " Loader section checksum: %08lx\n",
printf( " Loader section checksum: %08x\n",
le->e32_ldrsum);
printf( " Offset of object table: %08lx\n",
printf( " Offset of object table: %08x\n",
le->e32_objtab);
printf( " Object table entries: %ld\n",
printf( " Object table entries: %d\n",
le->e32_objcnt);
printf( " Object page map offset: %08lx\n",
printf( " Object page map offset: %08x\n",
le->e32_objmap);
printf( " Object iterate data map offset: %08lx\n",
printf( " Object iterate data map offset: %08x\n",
le->e32_itermap);
printf( " Resource table offset: %08lx\n",
printf( " Resource table offset: %08x\n",
le->e32_rsrctab);
printf( " Resource table entries: %ld\n",
printf( " Resource table entries: %d\n",
le->e32_rsrccnt);
printf( " Resident names table offset: %08lx\n",
printf( " Resident names table offset: %08x\n",
le->e32_restab);
printf( " Entry table offset: %08lx\n",
printf( " Entry table offset: %08x\n",
le->e32_enttab);
printf( " Module directives table offset: %08lx\n",
printf( " Module directives table offset: %08x\n",
le->e32_dirtab);
printf( " Module directives entries: %ld\n",
printf( " Module directives entries: %d\n",
le->e32_dircnt);
printf( " Fix-up page table offset: %08lx\n",
printf( " Fix-up page table offset: %08x\n",
le->e32_fpagetab);
printf( " Fix-up record table offset: %08lx\n",
printf( " Fix-up record table offset: %08x\n",
le->e32_frectab);
printf( " Imported modules name table offset: %08lx\n",
printf( " Imported modules name table offset: %08x\n",
le->e32_impmod);
printf( " Imported modules count: %ld\n",
printf( " Imported modules count: %d\n",
le->e32_impmodcnt);
printf( " Imported procedure name table offset: %08lx\n",
printf( " Imported procedure name table offset: %08x\n",
le->e32_impproc);
printf( " Per-page checksum table offset: %08lx\n",
printf( " Per-page checksum table offset: %08x\n",
le->e32_pagesum);
printf( " Data pages offset from top of table: %08lx\n",
printf( " Data pages offset from top of table: %08x\n",
le->e32_datapage);
printf( " Preload page count: %08lx\n",
printf( " Preload page count: %08x\n",
le->e32_preload);
printf( " Non-resident names table offset: %08lx\n",
printf( " Non-resident names table offset: %08x\n",
le->e32_nrestab);
printf( " Non-resident names table length: %ld\n",
printf( " Non-resident names table length: %d\n",
le->e32_cbnrestab);
printf( " Non-resident names table checksum: %08lx\n",
printf( " Non-resident names table checksum: %08x\n",
le->e32_nressum);
printf( " Automatic data object: %08lx\n",
printf( " Automatic data object: %08x\n",
le->e32_autodata);
printf( " Debug information offset: %08lx\n",
printf( " Debug information offset: %08x\n",
le->e32_debuginfo);
printf( " Debug information length: %ld\n",
printf( " Debug information length: %d\n",
le->e32_debuglen);
printf( " Preload instance pages number: %ld\n",
printf( " Preload instance pages number: %d\n",
le->e32_instpreload);
printf( " Demand instance pages number: %ld\n",
printf( " Demand instance pages number: %d\n",
le->e32_instdemand);
printf( " Extra heap allocation: %ld\n",
printf( " Extra heap allocation: %d\n",
le->e32_heapsize);
printf( " VxD resource table offset: %08lx\n",
printf( " VxD resource table offset: %08x\n",
le->e32_winresoff);
printf( " Size of VxD resource table: %ld\n",
printf( " Size of VxD resource table: %d\n",
le->e32_winreslen);
printf( " VxD identifier: %x\n",
le->e32_devid);

View File

@ -266,17 +266,17 @@ static int dump_location(int fd)
printf("Location\n");
printf("--------\n\n");
printf("Total size = %ld\n", loc->dwTotalSize);
printf("Header size = %ld\n", loc->dwHeaderSize);
printf("Flags = %08lx\n", loc->dwFlags);
printf("Total size = %d\n", loc->dwTotalSize);
printf("Header size = %d\n", loc->dwHeaderSize);
printf("Flags = %08x\n", loc->dwFlags);
/* dump out information about the volume the link points to */
printf("Volume ofs = %08lx ", loc->dwVolTableOfs);
printf("Volume ofs = %08x ", loc->dwVolTableOfs);
if (loc->dwVolTableOfs && (loc->dwVolTableOfs<loc->dwTotalSize))
{
LOCAL_VOLUME_INFO *vol = (LOCAL_VOLUME_INFO *) &p[loc->dwVolTableOfs];
printf("size %ld type %ld serial %08lx label %ld ",
printf("size %d type %d serial %08x label %d ",
vol->dwSize, vol->dwType, vol->dwVolSerial, vol->dwVolLabelOfs);
if(vol->dwVolLabelOfs)
printf("(\"%s\")", &p[loc->dwVolTableOfs + vol->dwVolLabelOfs]);
@ -284,13 +284,13 @@ static int dump_location(int fd)
printf("\n");
/* dump out the path the link points to */
printf("LocalPath ofs = %08lx ", loc->dwLocalPathOfs);
printf("LocalPath ofs = %08x ", loc->dwLocalPathOfs);
if( loc->dwLocalPathOfs && (loc->dwLocalPathOfs < loc->dwTotalSize) )
printf("(\"%s\")", &p[loc->dwLocalPathOfs]);
printf("\n");
printf("Net Path ofs = %08lx\n", loc->dwNetworkVolTableOfs);
printf("Final Path = %08lx ", loc->dwFinalPathOfs);
printf("Net Path ofs = %08x\n", loc->dwNetworkVolTableOfs);
printf("Final Path = %08x ", loc->dwFinalPathOfs);
if( loc->dwFinalPathOfs && (loc->dwFinalPathOfs < loc->dwTotalSize) )
printf("(\"%s\")", &p[loc->dwFinalPathOfs]);
printf("\n");
@ -348,7 +348,7 @@ static int dump_advertise_info(int fd, const char *type)
printf("Advertise Info\n");
printf("--------------\n\n");
printf("magic = %lx\n", avt->magic);
printf("magic = %x\n", avt->magic);
printf("%s = %s\n", type, avt->bufA);
if (avt->magic == 0xa0000006)
{
@ -402,19 +402,19 @@ static int dump_lnk_fd(int fd)
printf("Header\n");
printf("------\n\n");
printf("Size: %04lx\n", hdr->dwSize);
printf("Size: %04x\n", hdr->dwSize);
printf("GUID: %s\n", guid);
printf("FileAttr: %08lx\n", hdr->dwFileAttr);
printf("FileLength: %08lx\n", hdr->dwFileLength);
printf("nIcon: %ld\n", hdr->nIcon);
printf("Startup: %ld\n", hdr->fStartup);
printf("HotKey: %08lx\n", hdr->wHotKey);
printf("Unknown5: %08lx\n", hdr->Unknown5);
printf("Unknown6: %08lx\n", hdr->Unknown6);
printf("FileAttr: %08x\n", hdr->dwFileAttr);
printf("FileLength: %08x\n", hdr->dwFileLength);
printf("nIcon: %d\n", hdr->nIcon);
printf("Startup: %d\n", hdr->fStartup);
printf("HotKey: %08x\n", hdr->wHotKey);
printf("Unknown5: %08x\n", hdr->Unknown5);
printf("Unknown6: %08x\n", hdr->Unknown6);
/* dump out all the flags */
printf("Flags: %04lx ( ", hdr->dwFlags);
printf("Flags: %04x ( ", hdr->dwFlags);
#define FLAG(x) if(hdr->dwFlags & SCF_##x) printf("%s ",#x);
FLAG(PIDL)
FLAG(LOCATION)
@ -429,7 +429,7 @@ static int dump_lnk_fd(int fd)
#undef FLAG
printf(")\n");
printf("Length: %04lx\n", hdr->dwFileLength);
printf("Length: %04x\n", hdr->dwFileLength);
printf("\n");
if (hdr->dwFlags & SCF_PIDL)

View File

@ -72,20 +72,20 @@ void mdmp_dump(void)
return;
}
printf("Signature: %lu (%.4s)\n", hdr->Signature, (const char*)&hdr->Signature);
printf("Version: %lx\n", hdr->Version);
printf("NumberOfStreams: %lu\n", hdr->NumberOfStreams);
printf("StreamDirectoryRva: %lu\n", hdr->StreamDirectoryRva);
printf("CheckSum: %lu\n", hdr->CheckSum);
printf("Signature: %u (%.4s)\n", hdr->Signature, (const char*)&hdr->Signature);
printf("Version: %x\n", hdr->Version);
printf("NumberOfStreams: %u\n", hdr->NumberOfStreams);
printf("StreamDirectoryRva: %u\n", hdr->StreamDirectoryRva);
printf("CheckSum: %u\n", hdr->CheckSum);
printf("TimeDateStamp: %s\n", get_time_str(hdr->u.TimeDateStamp));
printf("Flags: %lx%08lx\n", (DWORD)(hdr->Flags >> 32), (DWORD)hdr->Flags);
printf("Flags: %x%08x\n", (DWORD)(hdr->Flags >> 32), (DWORD)hdr->Flags);
for (idx = 0; idx <= LastReservedStream; idx++)
{
if (!(dir = get_mdmp_dir(hdr, idx))) continue;
stream = PRD(dir->Location.Rva, dir->Location.DataSize);
printf("Directory [%lu]: ", ndir++);
printf("Directory [%u]: ", ndir++);
switch (dir->StreamType)
{
case ThreadListStream:
@ -94,16 +94,16 @@ void mdmp_dump(void)
const MINIDUMP_THREAD* mt = &mtl->Threads[0];
unsigned int i;
printf("Threads: %lu\n", mtl->NumberOfThreads);
printf("Threads: %u\n", mtl->NumberOfThreads);
for (i = 0; i < mtl->NumberOfThreads; i++, mt++)
{
printf(" Thread: #%d\n", i);
printf(" ThreadId: %lu\n", mt->ThreadId);
printf(" SuspendCount: %lu\n", mt->SuspendCount);
printf(" PriorityClass: %lu\n", mt->PriorityClass);
printf(" Priority: %lu\n", mt->Priority);
printf(" Teb: 0x%lx%08lx\n", (DWORD)(mt->Teb >> 32), (DWORD)mt->Teb);
printf(" Stack: 0x%lx%08lx-0x%lx%08lx\n",
printf(" ThreadId: %u\n", mt->ThreadId);
printf(" SuspendCount: %u\n", mt->SuspendCount);
printf(" PriorityClass: %u\n", mt->PriorityClass);
printf(" Priority: %u\n", mt->Priority);
printf(" Teb: 0x%x%08x\n", (DWORD)(mt->Teb >> 32), (DWORD)mt->Teb);
printf(" Stack: 0x%x%08x-0x%x%08x\n",
(DWORD)(mt->Stack.StartOfMemoryRange >> 32),
(DWORD)mt->Stack.StartOfMemoryRange,
(DWORD)((mt->Stack.StartOfMemoryRange + mt->Stack.Memory.DataSize) >> 32),
@ -123,23 +123,23 @@ void mdmp_dump(void)
const char* p1;
const char* p2;
printf("Modules (%s): %lu\n",
printf("Modules (%s): %u\n",
dir->StreamType == ModuleListStream ? "PE" : "ELF",
mml->NumberOfModules);
for (i = 0; i < mml->NumberOfModules; i++, mm++)
{
printf(" Module #%d:\n", i);
printf(" BaseOfImage: 0x%lx%08lx\n",
printf(" BaseOfImage: 0x%x%08x\n",
(DWORD)(mm->BaseOfImage >> 32), (DWORD) mm->BaseOfImage);
printf(" SizeOfImage: %lu\n", mm->SizeOfImage);
printf(" CheckSum: %lu\n", mm->CheckSum);
printf(" SizeOfImage: %u\n", mm->SizeOfImage);
printf(" CheckSum: %u\n", mm->CheckSum);
printf(" TimeDateStamp: %s\n", get_time_str(mm->TimeDateStamp));
printf(" ModuleName: ");
dump_mdmp_string(mm->ModuleNameRva);
printf("\n");
printf(" VersionInfo:\n");
printf(" dwSignature: %lx\n", mm->VersionInfo.dwSignature);
printf(" dwStrucVersion: %lx\n",
printf(" dwSignature: %x\n", mm->VersionInfo.dwSignature);
printf(" dwStrucVersion: %x\n",
mm->VersionInfo.dwStrucVersion);
printf(" dwFileVersion: %d,%d,%d,%d\n",
HIWORD(mm->VersionInfo.dwFileVersionMS),
@ -151,7 +151,7 @@ void mdmp_dump(void)
LOWORD(mm->VersionInfo.dwProductVersionMS),
HIWORD(mm->VersionInfo.dwProductVersionLS),
LOWORD(mm->VersionInfo.dwProductVersionLS));
printf(" dwFileFlagsMask: %lu\n",
printf(" dwFileFlagsMask: %u\n",
mm->VersionInfo.dwFileFlagsMask);
printf(" dwFileFlags: %s%s%s%s%s%s\n",
mm->VersionInfo.dwFileFlags & VS_FF_DEBUG ? "Debug " : "",
@ -195,17 +195,17 @@ void mdmp_dump(void)
default: p1 = "---"; break;
}
printf(" dwFileType: %s\n", p1);
printf(" dwFileSubtype: %lu\n",
printf(" dwFileSubtype: %u\n",
mm->VersionInfo.dwFileSubtype);
printf(" dwFileDate: %lx%08lx\n",
printf(" dwFileDate: %x%08x\n",
mm->VersionInfo.dwFileDateMS, mm->VersionInfo.dwFileDateLS);
printf(" CvRecord: <%lu>\n", mm->CvRecord.DataSize);
printf(" CvRecord: <%u>\n", mm->CvRecord.DataSize);
dump_mdmp_data(&mm->CvRecord, " ");
printf(" MiscRecord: <%lu>\n", mm->MiscRecord.DataSize);
printf(" MiscRecord: <%u>\n", mm->MiscRecord.DataSize);
dump_mdmp_data(&mm->MiscRecord, " ");
printf(" Reserved0: 0x%lx%08lx\n",
printf(" Reserved0: 0x%x%08x\n",
(DWORD)(mm->Reserved0 >> 32), (DWORD)mm->Reserved0);
printf(" Reserved1: 0x%lx%08lx\n",
printf(" Reserved1: 0x%x%08x\n",
(DWORD)(mm->Reserved1 >> 32), (DWORD)mm->Reserved1);
}
}
@ -216,11 +216,11 @@ void mdmp_dump(void)
const MINIDUMP_MEMORY_DESCRIPTOR* mmd = &mml->MemoryRanges[0];
unsigned int i;
printf("Memory Ranges: %lu\n", mml->NumberOfMemoryRanges);
printf("Memory Ranges: %u\n", mml->NumberOfMemoryRanges);
for (i = 0; i < mml->NumberOfMemoryRanges; i++, mmd++)
{
printf(" Memory Range #%d:\n", i);
printf(" Range: 0x%lx%08lx-0x%lx%08lx\n",
printf(" Range: 0x%x%08x-0x%x%08x\n",
(DWORD)(mmd->StartOfMemoryRange >> 32),
(DWORD)mmd->StartOfMemoryRange,
(DWORD)((mmd->StartOfMemoryRange + mmd->Memory.DataSize) >> 32),
@ -305,21 +305,21 @@ void mdmp_dump(void)
break;
default: str = "???"; break;
}
printf(" Version: Windows %s (%lu)\n", str, msi->BuildNumber);
printf(" PlatformId: %lu\n", msi->PlatformId);
printf(" Version: Windows %s (%u)\n", str, msi->BuildNumber);
printf(" PlatformId: %u\n", msi->PlatformId);
printf(" CSD: ");
dump_mdmp_string(msi->CSDVersionRva);
printf("\n");
printf(" Reserved1: %lu\n", msi->u1.Reserved1);
printf(" Reserved1: %u\n", msi->u1.Reserved1);
if (msi->ProcessorArchitecture == PROCESSOR_ARCHITECTURE_INTEL)
{
printf(" x86.VendorId: %.12s\n",
(const char*)&msi->Cpu.X86CpuInfo.VendorId[0]);
printf(" x86.VersionInformation: %lx\n",
printf(" x86.VersionInformation: %x\n",
msi->Cpu.X86CpuInfo.VersionInformation);
printf(" x86.FeatureInformation: %lx\n",
printf(" x86.FeatureInformation: %x\n",
msi->Cpu.X86CpuInfo.FeatureInformation);
printf(" x86.AMDExtendedCpuFeatures: %lu\n",
printf(" x86.AMDExtendedCpuFeatures: %u\n",
msi->Cpu.X86CpuInfo.AMDExtendedCpuFeatures);
}
}
@ -329,17 +329,17 @@ void mdmp_dump(void)
const MINIDUMP_MISC_INFO* mmi = (const MINIDUMP_MISC_INFO*)stream;
printf("Misc Information\n");
printf(" Size: %lu\n", mmi->SizeOfInfo);
printf(" Size: %u\n", mmi->SizeOfInfo);
printf(" Flags: %s%s\n",
mmi->Flags1 & MINIDUMP_MISC1_PROCESS_ID ? "ProcessId " : "",
mmi->Flags1 & MINIDUMP_MISC1_PROCESS_TIMES ? "ProcessTimes " : "");
if (mmi->Flags1 & MINIDUMP_MISC1_PROCESS_ID)
printf(" ProcessId: %lu\n", mmi->ProcessId);
printf(" ProcessId: %u\n", mmi->ProcessId);
if (mmi->Flags1 & MINIDUMP_MISC1_PROCESS_TIMES)
{
printf(" ProcessCreateTime: %lu\n", mmi->ProcessCreateTime);
printf(" ProcessUserTime: %lu\n", mmi->ProcessUserTime);
printf(" ProcessKernelTime: %lu\n", mmi->ProcessKernelTime);
printf(" ProcessCreateTime: %u\n", mmi->ProcessCreateTime);
printf(" ProcessUserTime: %u\n", mmi->ProcessUserTime);
printf(" ProcessKernelTime: %u\n", mmi->ProcessKernelTime);
}
}
break;
@ -349,21 +349,21 @@ void mdmp_dump(void)
unsigned int i;
printf("Exception:\n");
printf(" ThreadId: %08lx\n", mes->ThreadId);
printf(" ThreadId: %08x\n", mes->ThreadId);
printf(" ExceptionRecord:\n");
printf(" ExceptionCode: %lu\n", mes->ExceptionRecord.ExceptionCode);
printf(" ExceptionFlags: %lu\n", mes->ExceptionRecord.ExceptionFlags);
printf(" ExceptionRecord: 0x%lx%08lx\n",
printf(" ExceptionCode: %u\n", mes->ExceptionRecord.ExceptionCode);
printf(" ExceptionFlags: %u\n", mes->ExceptionRecord.ExceptionFlags);
printf(" ExceptionRecord: 0x%x%08x\n",
(DWORD)(mes->ExceptionRecord.ExceptionRecord >> 32),
(DWORD)mes->ExceptionRecord.ExceptionRecord);
printf(" ExceptionAddress: 0x%lx%08lx\n",
printf(" ExceptionAddress: 0x%x%08x\n",
(DWORD)(mes->ExceptionRecord.ExceptionAddress >> 32),
(DWORD)(mes->ExceptionRecord.ExceptionAddress));
printf(" ExceptionNumberParameters: %lu\n",
printf(" ExceptionNumberParameters: %u\n",
mes->ExceptionRecord.NumberParameters);
for (i = 0; i < mes->ExceptionRecord.NumberParameters; i++)
{
printf(" [%d]: 0x%lx%08lx\n", i,
printf(" [%d]: 0x%x%08x\n", i,
(DWORD)(mes->ExceptionRecord.ExceptionInformation[i] >> 32),
(DWORD)mes->ExceptionRecord.ExceptionInformation[i]);
}
@ -373,9 +373,9 @@ void mdmp_dump(void)
break;
default:
printf("NIY %ld\n", dir->StreamType);
printf(" RVA: %lu\n", dir->Location.Rva);
printf(" Size: %lu\n", dir->Location.DataSize);
printf("NIY %d\n", dir->StreamType);
printf(" RVA: %u\n", dir->Location.Rva);
printf(" Size: %u\n", dir->Location.DataSize);
dump_mdmp_data(&dir->Location, " ");
break;
}

View File

@ -73,7 +73,7 @@ static void dump_ne_header( const IMAGE_OS2_HEADER *ne )
printf( "File header:\n" );
printf( "Linker version: %d.%d\n", ne->ne_ver, ne->ne_rev );
printf( "Entry table: %x len %d\n", ne->ne_enttab, ne->ne_cbenttab );
printf( "Checksum: %08lx\n", ne->ne_crc );
printf( "Checksum: %08x\n", ne->ne_crc );
printf( "Flags: %04x\n", ne->ne_flags );
printf( "Auto data segment: %x\n", ne->ne_autodata );
printf( "Heap size: %d bytes\n", ne->ne_heap );
@ -87,7 +87,7 @@ static void dump_ne_header( const IMAGE_OS2_HEADER *ne )
printf( "Resident name table: %x\n", ne->ne_restab );
printf( "Module table: %x\n", ne->ne_modtab );
printf( "Import table: %x\n", ne->ne_imptab );
printf( "Non-resident table: %lx\n", ne->ne_nrestab );
printf( "Non-resident table: %x\n", ne->ne_nrestab );
printf( "Exe type: %x\n", ne->ne_exetyp );
printf( "Other flags: %x\n", ne->ne_flagsothers );
printf( "Fast load area: %x-%x\n", ne->ne_pretthunks << ne->ne_align,

View File

@ -159,7 +159,7 @@ static inline void print_word(const char *title, WORD value)
static inline void print_dword(const char *title, DWORD value)
{
printf(" %-34s 0x%-8lx %lu\n", title, value, value);
printf(" %-34s 0x%-8x %u\n", title, value, value);
}
static inline void print_longlong(const char *title, ULONGLONG value)
@ -208,11 +208,11 @@ static inline void print_datadirectory(DWORD n, const IMAGE_DATA_DIRECTORY *dire
{
unsigned i;
printf("Data Directory\n");
printf("%ld\n", n * sizeof(IMAGE_DATA_DIRECTORY));
printf("%d\n", n * sizeof(IMAGE_DATA_DIRECTORY));
for (i = 0; i < n && i < 16; i++)
{
printf(" %-12s rva: 0x%-8lX size: %8lu\n",
printf(" %-12s rva: 0x%-8X size: %8u\n",
DirectoryNames[i], directory[i].VirtualAddress,
directory[i].Size);
}
@ -299,11 +299,11 @@ static void dump_pe_header(void)
printf(" Machine: %04X (%s)\n",
fileHeader->Machine, get_machine_str(fileHeader->Machine));
printf(" Number of Sections: %d\n", fileHeader->NumberOfSections);
printf(" TimeDateStamp: %08lX (%s) offset %lu\n",
printf(" TimeDateStamp: %08X (%s) offset %lu\n",
fileHeader->TimeDateStamp, get_time_str(fileHeader->TimeDateStamp),
Offset(&(fileHeader->TimeDateStamp)));
printf(" PointerToSymbolTable: %08lX\n", fileHeader->PointerToSymbolTable);
printf(" NumberOfSymbols: %08lX\n", fileHeader->NumberOfSymbols);
printf(" PointerToSymbolTable: %08X\n", fileHeader->PointerToSymbolTable);
printf(" NumberOfSymbols: %08X\n", fileHeader->NumberOfSymbols);
printf(" SizeOfOptionalHeader: %04X\n", fileHeader->SizeOfOptionalHeader);
printf(" Characteristics: %04X\n", fileHeader->Characteristics);
#define X(f,s) if (fileHeader->Characteristics & f) printf(" %s\n", s)
@ -350,16 +350,16 @@ static void dump_sections(const void* addr, unsigned num_sect)
printf("Section Table\n");
for (i = 0; i < num_sect; i++, sectHead++)
{
printf(" %02d %-8.8s VirtSize: %-8lu VirtAddr: %-8lu 0x%08lx\n",
printf(" %02d %-8.8s VirtSize: %-8u VirtAddr: %-8u 0x%08x\n",
i + 1, sectHead->Name, sectHead->Misc.VirtualSize, sectHead->VirtualAddress,
sectHead->VirtualAddress);
printf(" raw data offs: %-8lu raw data size: %-8lu\n",
printf(" raw data offs: %-8u raw data size: %-8u\n",
sectHead->PointerToRawData, sectHead->SizeOfRawData);
printf(" relocation offs: %-8lu relocations: %-8u\n",
printf(" relocation offs: %-8u relocations: %-8u\n",
sectHead->PointerToRelocations, sectHead->NumberOfRelocations);
printf(" line # offs: %-8lu line #'s: %-8u\n",
printf(" line # offs: %-8u line #'s: %-8u\n",
sectHead->PointerToLinenumbers, sectHead->NumberOfLinenumbers);
printf(" characteristics: 0x%08lx\n", sectHead->Characteristics);
printf(" characteristics: 0x%08x\n", sectHead->Characteristics);
printf(" ");
#define X(b,s) if (sectHead->Characteristics & b) printf(s " ")
/* #define IMAGE_SCN_TYPE_REG 0x00000000 - Reserved */
@ -429,16 +429,16 @@ static void dump_dir_exported_functions(void)
printf("Exports table:\n");
printf("\n");
printf(" Name: %s\n", (const char*)RVA(exportDir->Name, sizeof(DWORD)));
printf(" Characteristics: %08lx\n", exportDir->Characteristics);
printf(" TimeDateStamp: %08lX %s\n",
printf(" Characteristics: %08x\n", exportDir->Characteristics);
printf(" TimeDateStamp: %08X %s\n",
exportDir->TimeDateStamp, get_time_str(exportDir->TimeDateStamp));
printf(" Version: %u.%02u\n", exportDir->MajorVersion, exportDir->MinorVersion);
printf(" Ordinal base: %lu\n", exportDir->Base);
printf(" # of functions: %lu\n", exportDir->NumberOfFunctions);
printf(" # of Names: %lu\n", exportDir->NumberOfNames);
printf("Addresses of functions: %08lX\n", exportDir->AddressOfFunctions);
printf("Addresses of name ordinals: %08lX\n", exportDir->AddressOfNameOrdinals);
printf("Addresses of names: %08lX\n", exportDir->AddressOfNames);
printf(" Ordinal base: %u\n", exportDir->Base);
printf(" # of functions: %u\n", exportDir->NumberOfFunctions);
printf(" # of Names: %u\n", exportDir->NumberOfNames);
printf("Addresses of functions: %08X\n", exportDir->AddressOfFunctions);
printf("Addresses of name ordinals: %08X\n", exportDir->AddressOfNameOrdinals);
printf("Addresses of names: %08X\n", exportDir->AddressOfNames);
printf("\n");
printf(" Entry Pt Ordn Name\n");
@ -462,7 +462,7 @@ static void dump_dir_exported_functions(void)
name = (const char*)RVA(*pName, sizeof(DWORD));
if (name && globals.do_demangle)
{
printf(" %08lX %4lu ", pFunc[*pOrdl], exportDir->Base + *pOrdl);
printf(" %08X %4u ", pFunc[*pOrdl], exportDir->Base + *pOrdl);
symbol_init(&symbol, name);
if (symbol_demangle(&symbol) == -1)
@ -475,7 +475,7 @@ static void dump_dir_exported_functions(void)
}
else
{
printf(" %08lX %4lu %s", pFunc[*pOrdl], exportDir->Base + *pOrdl, name);
printf(" %08X %4u %s", pFunc[*pOrdl], exportDir->Base + *pOrdl, name);
}
/* check for forwarded function */
if ((const char *)RVA(pFunc[*pOrdl],sizeof(void*)) >= (const char *)exportDir &&
@ -489,7 +489,7 @@ static void dump_dir_exported_functions(void)
{
if (pFunc[i] && !(map[i / 32] & (1 << (i % 32))))
{
printf(" %08lX %4lu <by ordinal>\n", pFunc[i], exportDir->Base + i);
printf(" %08X %4u <by ordinal>\n", pFunc[i], exportDir->Base + i);
}
}
free(map);
@ -503,14 +503,14 @@ static void dump_image_thunk_data64(const IMAGE_THUNK_DATA64 *il)
for (; il->u1.Ordinal; il++)
{
if (IMAGE_SNAP_BY_ORDINAL64(il->u1.Ordinal))
printf(" %4lu <by ordinal>\n", (DWORD)IMAGE_ORDINAL64(il->u1.Ordinal));
printf(" %4u <by ordinal>\n", (DWORD)IMAGE_ORDINAL64(il->u1.Ordinal));
else
{
iibn = RVA((DWORD)il->u1.AddressOfData, sizeof(DWORD));
if (!iibn)
printf("Can't grab import by name info, skipping to next ordinal\n");
else
printf(" %4u %s %lx\n", iibn->Hint, iibn->Name, (DWORD)il->u1.AddressOfData);
printf(" %4u %s %x\n", iibn->Hint, iibn->Name, (DWORD)il->u1.AddressOfData);
}
}
}
@ -521,14 +521,14 @@ static void dump_image_thunk_data32(const IMAGE_THUNK_DATA32 *il)
for (; il->u1.Ordinal; il++)
{
if (IMAGE_SNAP_BY_ORDINAL32(il->u1.Ordinal))
printf(" %4lu <by ordinal>\n", IMAGE_ORDINAL32(il->u1.Ordinal));
printf(" %4u <by ordinal>\n", IMAGE_ORDINAL32(il->u1.Ordinal));
else
{
iibn = RVA((DWORD)il->u1.AddressOfData, sizeof(DWORD));
if (!iibn)
printf("Can't grab import by name info, skipping to next ordinal\n");
else
printf(" %4u %s %lx\n", iibn->Hint, iibn->Name, (DWORD)il->u1.AddressOfData);
printf(" %4u %s %x\n", iibn->Hint, iibn->Name, (DWORD)il->u1.AddressOfData);
}
}
}
@ -550,7 +550,7 @@ static void dump_dir_imported_functions(void)
directorySize = opt->DataDirectory[IMAGE_FILE_IMPORT_DIRECTORY].Size;
}
printf("Import Table size: %08lx\n", directorySize);/* FIXME */
printf("Import Table size: %08x\n", directorySize);/* FIXME */
for (;;)
{
@ -559,11 +559,11 @@ static void dump_dir_imported_functions(void)
if (!importDesc->Name || !importDesc->FirstThunk) break;
printf(" offset %08lx %s\n", Offset(importDesc), (const char*)RVA(importDesc->Name, sizeof(DWORD)));
printf(" Hint/Name Table: %08lX\n", (DWORD)importDesc->u.OriginalFirstThunk);
printf(" TimeDataStamp: %08lX (%s)\n",
printf(" Hint/Name Table: %08X\n", (DWORD)importDesc->u.OriginalFirstThunk);
printf(" TimeDataStamp: %08X (%s)\n",
importDesc->TimeDateStamp, get_time_str(importDesc->TimeDateStamp));
printf(" ForwarderChain: %08lX\n", importDesc->ForwarderChain);
printf(" First thunk RVA: %08lX\n", (DWORD)importDesc->FirstThunk);
printf(" ForwarderChain: %08X\n", importDesc->ForwarderChain);
printf(" First thunk RVA: %08X\n", (DWORD)importDesc->FirstThunk);
printf(" Ordn Name\n");
@ -613,7 +613,7 @@ static void dump_dir_delay_imported_functions(void)
directorySize = opt->DataDirectory[IMAGE_DIRECTORY_ENTRY_DELAY_IMPORT].Size;
}
printf("Delay Import Table size: %08lx\n", directorySize); /* FIXME */
printf("Delay Import Table size: %08x\n", directorySize); /* FIXME */
for (;;)
{
@ -622,10 +622,10 @@ static void dump_dir_delay_imported_functions(void)
if (!importDesc->szName || !importDesc->pIAT || !importDesc->pINT) break;
printf(" grAttrs %08lx offset %08lx %s\n", importDesc->grAttrs, Offset(importDesc),
printf(" grAttrs %08x offset %08lx %s\n", importDesc->grAttrs, Offset(importDesc),
use_rva ? (const char *)RVA(importDesc->szName, sizeof(DWORD)) : (char *)importDesc->szName);
printf(" Hint/Name Table: %08lx\n", importDesc->pINT);
printf(" TimeDataStamp: %08lX (%s)\n",
printf(" Hint/Name Table: %08x\n", importDesc->pINT);
printf(" TimeDataStamp: %08X (%s)\n",
importDesc->dwTimeStamp, get_time_str(importDesc->dwTimeStamp));
printf(" Ordn Name\n");
@ -652,8 +652,8 @@ static void dump_dir_debug_dir(const IMAGE_DEBUG_DIRECTORY* idd, int idx)
const char* str;
printf("Directory %02u\n", idx + 1);
printf(" Characteristics: %08lX\n", idd->Characteristics);
printf(" TimeDateStamp: %08lX %s\n",
printf(" Characteristics: %08X\n", idd->Characteristics);
printf(" TimeDateStamp: %08X %s\n",
idd->TimeDateStamp, get_time_str(idd->TimeDateStamp));
printf(" Version %u.%02u\n", idd->MajorVersion, idd->MinorVersion);
switch (idd->Type)
@ -671,10 +671,10 @@ static void dump_dir_debug_dir(const IMAGE_DEBUG_DIRECTORY* idd, int idx)
case IMAGE_DEBUG_TYPE_BORLAND: str = "BORLAND"; break;
case IMAGE_DEBUG_TYPE_RESERVED10: str = "RESERVED10"; break;
}
printf(" Type: %lu (%s)\n", idd->Type, str);
printf(" SizeOfData: %lu\n", idd->SizeOfData);
printf(" AddressOfRawData: %08lX\n", idd->AddressOfRawData);
printf(" PointerToRawData: %08lX\n", idd->PointerToRawData);
printf(" Type: %u (%s)\n", idd->Type, str);
printf(" SizeOfData: %u\n", idd->SizeOfData);
printf(" AddressOfRawData: %08X\n", idd->AddressOfRawData);
printf(" PointerToRawData: %08X\n", idd->PointerToRawData);
switch (idd->Type)
{
@ -694,10 +694,10 @@ static void dump_dir_debug_dir(const IMAGE_DEBUG_DIRECTORY* idd, int idx)
{
const IMAGE_DEBUG_MISC* misc = PRD(idd->PointerToRawData, idd->SizeOfData);
if (!misc) {printf("Can't get misc debug information\n"); break;}
printf(" DataType: %lu (%s)\n",
printf(" DataType: %u (%s)\n",
misc->DataType,
(misc->DataType == IMAGE_DEBUG_MISC_EXENAME) ? "Exe name" : "Unknown");
printf(" Length: %lu\n", misc->Length);
printf(" Length: %u\n", misc->Length);
printf(" Unicode: %s\n", misc->Unicode ? "Yes" : "No");
printf(" Data: %s\n", misc->Data);
}
@ -760,19 +760,19 @@ static void dump_dir_tls(void)
/* FIXME: This does not properly handle large images */
printf( "Thread Local Storage\n" );
printf( " Raw data %08lx-%08lx (data size %lx zero fill size %lx)\n",
printf( " Raw data %08x-%08x (data size %x zero fill size %x)\n",
(DWORD)dir.StartAddressOfRawData, (DWORD)dir.EndAddressOfRawData,
(DWORD)(dir.EndAddressOfRawData - dir.StartAddressOfRawData),
(DWORD)dir.SizeOfZeroFill );
printf( " Index address %08lx\n", (DWORD)dir.AddressOfIndex );
printf( " Characteristics %08lx\n", dir.Characteristics );
printf( " Callbacks %08lx -> {", (DWORD)dir.AddressOfCallBacks );
printf( " Index address %08x\n", (DWORD)dir.AddressOfIndex );
printf( " Characteristics %08x\n", dir.Characteristics );
printf( " Callbacks %08x -> {", (DWORD)dir.AddressOfCallBacks );
if (dir.AddressOfCallBacks)
{
DWORD addr = (DWORD)dir.AddressOfCallBacks - PE_nt_headers->OptionalHeader.ImageBase;
while ((callbacks = RVA(addr, sizeof(DWORD))) && *callbacks)
{
printf( " %08lx", *callbacks );
printf( " %08x", *callbacks );
addr += sizeof(DWORD);
}
}
@ -795,14 +795,14 @@ void dump_separate_dbg(void)
printf ("Machine: 0x%04X (%s)\n",
separateDebugHead->Machine, get_machine_str(separateDebugHead->Machine));
printf ("Characteristics: 0x%04X\n", separateDebugHead->Characteristics);
printf ("TimeDateStamp: 0x%08lX (%s)\n",
printf ("TimeDateStamp: 0x%08X (%s)\n",
separateDebugHead->TimeDateStamp, get_time_str(separateDebugHead->TimeDateStamp));
printf ("CheckSum: 0x%08lX\n", separateDebugHead->CheckSum);
printf ("ImageBase: 0x%08lX\n", separateDebugHead->ImageBase);
printf ("SizeOfImage: 0x%08lX\n", separateDebugHead->SizeOfImage);
printf ("NumberOfSections: 0x%08lX\n", separateDebugHead->NumberOfSections);
printf ("ExportedNamesSize: 0x%08lX\n", separateDebugHead->ExportedNamesSize);
printf ("DebugDirectorySize: 0x%08lX\n", separateDebugHead->DebugDirectorySize);
printf ("CheckSum: 0x%08X\n", separateDebugHead->CheckSum);
printf ("ImageBase: 0x%08X\n", separateDebugHead->ImageBase);
printf ("SizeOfImage: 0x%08X\n", separateDebugHead->SizeOfImage);
printf ("NumberOfSections: 0x%08X\n", separateDebugHead->NumberOfSections);
printf ("ExportedNamesSize: 0x%08X\n", separateDebugHead->ExportedNamesSize);
printf ("DebugDirectorySize: 0x%08X\n", separateDebugHead->DebugDirectorySize);
if (!PRD(sizeof(IMAGE_SEPARATE_DEBUG_HEADER),
separateDebugHead->NumberOfSections * sizeof(IMAGE_SECTION_HEADER)))
@ -1234,7 +1234,7 @@ static void do_grab_sym( enum FileSig sig, const void* pmt )
{
char ordinal_text[256];
/* Ordinal only entry */
snprintf (ordinal_text, sizeof(ordinal_text), "%s_%lu",
snprintf (ordinal_text, sizeof(ordinal_text), "%s_%u",
globals.forward_dll ? globals.forward_dll : OUTPUT_UC_DLL_NAME,
exportDir->Base + i);
str_toupper(ordinal_text);
@ -1248,7 +1248,7 @@ static void do_grab_sym( enum FileSig sig, const void* pmt )
free(map);
if (NORMAL)
printf("%lu named symbols in DLL, %lu total, %d unique (ordinal base = %ld)\n",
printf("%u named symbols in DLL, %u total, %d unique (ordinal base = %d)\n",
exportDir->NumberOfNames, exportDir->NumberOfFunctions, j, exportDir->Base);
qsort( dll_symbols, j, sizeof(dll_symbol), symbol_cmp );