- Use regular PE structures in NTOSKRNL/NTDLL/DISKDUMP.
[reactos.git] / reactos / drivers / storage / diskdump / diskdump.c
index 2ca4d6c..dcce7b3 100644 (file)
@@ -297,7 +297,7 @@ DiskDumpPrepare(PDEVICE_OBJECT DeviceObject, PDUMP_POINTERS DumpPointers)
   PIMAGE_NT_HEADERS NtHeader;
   PVOID ImportDirectory;
   ULONG ImportDirectorySize;
-  PIMAGE_IMPORT_MODULE_DIRECTORY ImportModuleDirectory;
+  PIMAGE_IMPORT_DESCRIPTOR ImportModuleDirectory;
   PVOID DriverBase;
   PCH Name;
   ULONG i;
@@ -325,12 +325,12 @@ DiskDumpPrepare(PDEVICE_OBJECT DeviceObject, PDUMP_POINTERS DumpPointers)
       return(STATUS_UNSUCCESSFUL);
     }
   /*  Process each import module  */
-  ImportModuleDirectory = (PIMAGE_IMPORT_MODULE_DIRECTORY)ImportDirectory;
+  ImportModuleDirectory = (PIMAGE_IMPORT_DESCRIPTOR)ImportDirectory;
   DPRINT("Processeing import directory at %p\n", ImportModuleDirectory);
-  while (ImportModuleDirectory->dwRVAModuleName)
+  while (ImportModuleDirectory->Name)
     {
       /*  Check to make sure that import lib is kernel  */
-      Name = (PCHAR) DriverBase + ImportModuleDirectory->dwRVAModuleName;
+      Name = (PCHAR) DriverBase + ImportModuleDirectory->Name;
 
       if (strcmp(Name, "scsiport.sys") != 0)
        {
@@ -341,18 +341,18 @@ DiskDumpPrepare(PDEVICE_OBJECT DeviceObject, PDUMP_POINTERS DumpPointers)
 
       /*  Get the import address list  */
       ImportAddressList = (PVOID *) ((PUCHAR)DriverBase +
-                                    ImportModuleDirectory->dwRVAFunctionAddressList);
+                                    (ULONG_PTR)ImportModuleDirectory->FirstThunk);
 
       /*  Get the list of functions to import  */
-      if (ImportModuleDirectory->dwRVAFunctionNameList != 0)
+      if (ImportModuleDirectory->OriginalFirstThunk != 0)
        {
          FunctionNameList = (PULONG) ((PUCHAR)DriverBase +
-                                      ImportModuleDirectory->dwRVAFunctionNameList);
+                                      (ULONG_PTR)ImportModuleDirectory->OriginalFirstThunk);
        }
       else
        {
          FunctionNameList = (PULONG) ((PUCHAR)DriverBase +
-                                      ImportModuleDirectory->dwRVAFunctionAddressList);
+                                      (ULONG_PTR)ImportModuleDirectory->FirstThunk);
        }
       /*  Walk through function list and fixup addresses  */
       while (*FunctionNameList != 0L)