Changeset 46128 in vbox for trunk/src/VBox/Debugger
- Timestamp:
- May 16, 2013 2:22:11 PM (12 years ago)
- svn:sync-xref-src-repo-rev:
- 85819
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
TabularUnified trunk/src/VBox/Debugger/DBGPlugInWinNt.cpp ¶
r46127 r46128 746 746 default: pszNtProductType = ""; break; 747 747 } 748 RTStrPrintf(pszVersion, cchVersion, "%u.%u%s", pThis->NtMajorVersion, pThis->NtMinorVersion, pszNtProductType); 748 RTStrPrintf(pszVersion, cchVersion, "%u.%u-%s%s", pThis->NtMajorVersion, pThis->NtMinorVersion, 749 pThis->f32Bit ? "x86" : "AMD64", pszNtProductType); 749 750 return VINF_SUCCESS; 750 751 } … … 1004 1005 && uMte2.v32.SizeOfImage == uMte.v32.SizeOfImage 1005 1006 && WINNT32_VALID_ADDRESS(uMte2.v32.InLoadOrderLinks.Flink) 1006 && uMte2.v32.InLoadOrderLinks.Blink > KernelAddr.FlatPtr /* list head inside ntoskrnl */1007 && uMte2.v32.InLoadOrderLinks.Blink < KernelAddr.FlatPtr + uMte.v32.SizeOfImage1008 1007 && WINNT32_VALID_ADDRESS(uMte2.v32.BaseDllName.Buffer) 1009 1008 && WINNT32_VALID_ADDRESS(uMte2.v32.FullDllName.Buffer) 1010 && uMte2.v32.BaseDllName.Length <= uMte2.v32.BaseDllName.MaximumLength 1011 && uMte2.v32.BaseDllName.Length == WINNT_KERNEL_BASE_NAME_LEN * 2 1012 && uMte2.v32.FullDllName.Length <= uMte2.v32.FullDllName.MaximumLength 1013 && uMte2.v32.FullDllName.Length <= 256 1009 && uMte2.v32.BaseDllName.Length <= 128 1010 && uMte2.v32.FullDllName.Length <= 260 1014 1011 ) 1015 1012 { … … 1038 1035 return true; 1039 1036 } 1037 } 1038 else if (RT_SUCCESS(rc)) 1039 { 1040 Log2(("DigWinNt: Wrong module: MteAddr=%RGv ImageAddr=%RGv SizeOfImage=%#x '%ls'\n", 1041 MteAddr.FlatPtr, KernelAddr.FlatPtr, uMte2.v32.SizeOfImage, u.wsz)); 1042 break; /* Not NT kernel */ 1040 1043 } 1041 1044 } … … 1070 1073 DBGFADDRESS ScanAddr; 1071 1074 DBGFADDRESS HitAddr; 1072 rc = DBGFR3MemScan(pUVM, 0 /*idCpu*/, 1073 DBGFR3AddrFromFlat(pUVM, &ScanAddr, uStart), 1074 uEnd - uStart, 1075 4 /*align*/, &uMte.v64.DllBase, 5 * sizeof(uint32_t), &HitAddr); 1075 rc = DBGFR3MemScan(pUVM, 0 /*idCpu*/, DBGFR3AddrFromFlat(pUVM, &ScanAddr, uStart), 1076 uEnd - uStart, 8 /*align*/, &uMte.v64.DllBase, 5 * sizeof(uint32_t), &HitAddr); 1076 1077 while (RT_SUCCESS(rc)) 1077 1078 { … … 1087 1088 && WINNT64_VALID_ADDRESS(uMte2.v64.BaseDllName.Buffer) 1088 1089 && WINNT64_VALID_ADDRESS(uMte2.v64.FullDllName.Buffer) 1090 && uMte2.v64.BaseDllName.Length <= 128 1091 && uMte2.v64.FullDllName.Length <= 260 1089 1092 ) 1090 1093 { … … 1123 1126 1124 1127 /* next */ 1125 DBGFR3AddrAdd(&HitAddr, 4);1128 DBGFR3AddrAdd(&HitAddr, 8); 1126 1129 if (HitAddr.FlatPtr < uEnd) 1127 1130 rc = DBGFR3MemScan(pUVM, 0 /*idCpu*/, &HitAddr, uEnd - HitAddr.FlatPtr, 1128 4/*align*/, &uMte.v64.DllBase, 3 * sizeof(uint32_t), &HitAddr);1131 8 /*align*/, &uMte.v64.DllBase, 3 * sizeof(uint32_t), &HitAddr); 1129 1132 else 1130 1133 rc = VERR_DBGF_MEM_NOT_FOUND;
Note:
See TracChangeset
for help on using the changeset viewer.