From e1290897303477d4da7614d5b97a655e68e408bd Mon Sep 17 00:00:00 2001 From: Aleksey Bragin Date: Fri, 25 Jan 2008 16:35:34 +0000 Subject: [PATCH] - Make identifiers in configuration trees ASCII-strings, as they are in real NT. - NB: Don't forget to update the bootloader in your installation. svn path=/trunk/; revision=31999 --- .../boot/freeldr/freeldr/arch/i386/hardware.c | 60 +++++++++---------- .../boot/freeldr/freeldr/arch/i386/hwacpi.c | 2 +- .../boot/freeldr/freeldr/arch/i386/hwapm.c | 2 +- .../boot/freeldr/freeldr/arch/i386/hwpci.c | 6 +- .../boot/freeldr/freeldr/arch/i386/xboxhw.c | 14 ++--- .../freeldr/include/arch/i386/hardware.h | 2 +- .../freeldr/include/arch/powerpc/hardware.h | 2 +- .../boot/freeldr/freeldr/reactos/archwsup.c | 9 ++- reactos/ntoskrnl/config/cmconfig.c | 5 +- reactos/ntoskrnl/config/cmdata.c | 16 ++--- reactos/ntoskrnl/include/internal/cm.h | 4 +- 11 files changed, 60 insertions(+), 62 deletions(-) diff --git a/reactos/boot/freeldr/freeldr/arch/i386/hardware.c b/reactos/boot/freeldr/freeldr/arch/i386/hardware.c index 60c7d0365b1..7b9eca9ed88 100644 --- a/reactos/boot/freeldr/freeldr/arch/i386/hardware.c +++ b/reactos/boot/freeldr/freeldr/arch/i386/hardware.c @@ -79,7 +79,7 @@ /* Timeout in ms for sending to keyboard controller. */ #define CONTROLLER_TIMEOUT 250 -static WCHAR Hex[] = L"0123456789ABCDEF"; +static CHAR Hex[] = "0123456789ABCDEF"; static unsigned int delay_count = 1; extern ULONG reactos_disk_count; @@ -252,7 +252,7 @@ DetectPnpBios(PCONFIGURATION_COMPONENT_DATA SystemKey, ULONG *BusNumber) 0xFFFFFFFF); /* Set the identifier */ - FldrSetIdentifier(BusKey, L"PNP BIOS"); + FldrSetIdentifier(BusKey, "PNP BIOS"); /* Set 'Configuration Data' value */ Size = sizeof(CM_PARTIAL_RESOURCE_LIST) + (NodeSize * NodeCount); @@ -405,7 +405,7 @@ SetHarddiskIdentifier(PCONFIGURATION_COMPONENT_DATA DiskKey, ULONG i; ULONG Checksum; ULONG Signature; - WCHAR Identifier[20]; + CHAR Identifier[20]; CHAR ArcName[256]; /* Read the MBR */ @@ -448,7 +448,7 @@ SetHarddiskIdentifier(PCONFIGURATION_COMPONENT_DATA DiskKey, Identifier[5] = Hex[(Checksum >> 8) & 0x0F]; Identifier[6] = Hex[(Checksum >> 4) & 0x0F]; Identifier[7] = Hex[Checksum & 0x0F]; - Identifier[8] = L'-'; + Identifier[8] = '-'; Identifier[9] = Hex[(Signature >> 28) & 0x0F]; Identifier[10] = Hex[(Signature >> 24) & 0x0F]; Identifier[11] = Hex[(Signature >> 20) & 0x0F]; @@ -457,10 +457,10 @@ SetHarddiskIdentifier(PCONFIGURATION_COMPONENT_DATA DiskKey, Identifier[14] = Hex[(Signature >> 8) & 0x0F]; Identifier[15] = Hex[(Signature >> 4) & 0x0F]; Identifier[16] = Hex[Signature & 0x0F]; - Identifier[17] = L'-'; - Identifier[18] = L'A'; + Identifier[17] = '-'; + Identifier[18] = 'A'; Identifier[19] = 0; - DbgPrint((DPRINT_HWDETECT, "Identifier: %S\n", Identifier)); + DbgPrint((DPRINT_HWDETECT, "Identifier: %s\n", Identifier)); /* Set identifier */ FldrSetIdentifier(DiskKey, Identifier); @@ -511,7 +511,7 @@ DetectBiosFloppyPeripheral(PCONFIGURATION_COMPONENT_DATA ControllerKey) PCM_PARTIAL_RESOURCE_LIST PartialResourceList; PCM_PARTIAL_RESOURCE_DESCRIPTOR PartialDescriptor; PCM_FLOPPY_DEVICE_DATA FloppyData; - WCHAR Identifier[20]; + CHAR Identifier[20]; PCONFIGURATION_COMPONENT_DATA PeripheralKey; ULONG Size; ULONG FloppyNumber; @@ -579,7 +579,7 @@ DetectBiosFloppyPeripheral(PCONFIGURATION_COMPONENT_DATA ControllerKey) MmHeapFree(PartialResourceList); /* Set 'Identifier' value */ - swprintf(Identifier, L"FLOPPY%u", FloppyNumber + 1); + sprintf(Identifier, "FLOPPY%u", FloppyNumber + 1); FldrSetIdentifier(PeripheralKey, Identifier); } } @@ -956,7 +956,7 @@ DetectSerialPointerPeripheral(PCONFIGURATION_COMPONENT_DATA ControllerKey, { CM_PARTIAL_RESOURCE_LIST PartialResourceList; char Buffer[256]; - WCHAR Identifier[256]; + CHAR Identifier[256]; PCONFIGURATION_COMPONENT_DATA PeripheralKey; ULONG MouseType; ULONG Length; @@ -1063,28 +1063,28 @@ DetectSerialPointerPeripheral(PCONFIGURATION_COMPONENT_DATA ControllerKey, } DbgPrint((DPRINT_HWDETECT, - "Identifier string: %S\n", + "Identifier string: %s\n", Identifier)); } - if (Length == 0 || wcslen(Identifier) < 11) + if (Length == 0 || strlen(Identifier) < 11) { switch (MouseType) { case MOUSE_TYPE_LOGITECH: - wcscpy (Identifier, - L"LOGITECH SERIAL MOUSE"); + strcpy (Identifier, + "LOGITECH SERIAL MOUSE"); break; case MOUSE_TYPE_WHEELZ: - wcscpy (Identifier, - L"MICROSOFT SERIAL MOUSE WITH WHEEL"); + strcpy (Identifier, + "MICROSOFT SERIAL MOUSE WITH WHEEL"); break; case MOUSE_TYPE_MICROSOFT: default: - wcscpy (Identifier, - L"MICROSOFT SERIAL MOUSE"); + strcpy (Identifier, + "MICROSOFT SERIAL MOUSE"); break; } } @@ -1130,7 +1130,7 @@ DetectSerialPorts(PCONFIGURATION_COMPONENT_DATA BusKey) PCM_SERIAL_DEVICE_DATA SerialDeviceData; ULONG Irq[4] = {4, 3, 4, 3}; ULONG Base; - WCHAR Buffer[80]; + CHAR Buffer[80]; PUSHORT BasePtr; ULONG ControllerNumber = 0; PCONFIGURATION_COMPONENT_DATA ControllerKey; @@ -1218,7 +1218,7 @@ DetectSerialPorts(PCONFIGURATION_COMPONENT_DATA BusKey) MmHeapFree(PartialResourceList); /* Set 'Identifier' value */ - swprintf(Buffer, L"COM%u", i + 1); + sprintf(Buffer, "COM%u", i + 1); FldrSetIdentifier(ControllerKey, Buffer); DbgPrint((DPRINT_HWDETECT, "Created value: Identifier %s\n", @@ -1241,7 +1241,7 @@ DetectParallelPorts(PCONFIGURATION_COMPONENT_DATA BusKey) PCM_PARTIAL_RESOURCE_LIST PartialResourceList; PCM_PARTIAL_RESOURCE_DESCRIPTOR PartialDescriptor; ULONG Irq[3] = {7, 5, (ULONG)-1}; - WCHAR Buffer[80]; + CHAR Buffer[80]; PCONFIGURATION_COMPONENT_DATA ControllerKey; PUSHORT BasePtr; ULONG Base; @@ -1323,7 +1323,7 @@ DetectParallelPorts(PCONFIGURATION_COMPONENT_DATA BusKey) MmHeapFree(PartialResourceList); /* Set 'Identifier' value */ - swprintf(Buffer, L"PARALLEL%u", i + 1); + sprintf(Buffer, "PARALLEL%u", i + 1); FldrSetIdentifier(ControllerKey, Buffer); DbgPrint((DPRINT_HWDETECT, "Created value: Identifier %s\n", @@ -1468,7 +1468,7 @@ DetectKeyboardPeripheral(PCONFIGURATION_COMPONENT_DATA ControllerKey) MmHeapFree(PartialResourceList); /* Set 'Identifier' value */ - FldrSetIdentifier(PeripheralKey, L"PCAT_ENHANCED"); + FldrSetIdentifier(PeripheralKey, "PCAT_ENHANCED"); } } @@ -1735,7 +1735,7 @@ DetectPS2Mouse(PCONFIGURATION_COMPONENT_DATA BusKey) sizeof(CM_PARTIAL_RESOURCE_DESCRIPTOR)); /* Set 'Identifier' value */ - FldrSetIdentifier(PeripheralKey, L"MICROSOFT PS2 MOUSE"); + FldrSetIdentifier(PeripheralKey, "MICROSOFT PS2 MOUSE"); } } } @@ -1744,7 +1744,7 @@ DetectPS2Mouse(PCONFIGURATION_COMPONENT_DATA BusKey) static VOID DetectDisplayController(PCONFIGURATION_COMPONENT_DATA BusKey) { - WCHAR Buffer[80]; + CHAR Buffer[80]; PCONFIGURATION_COMPONENT_DATA ControllerKey; USHORT VesaVersion; @@ -1780,13 +1780,13 @@ DetectDisplayController(PCONFIGURATION_COMPONENT_DATA BusKey) if (VesaVersion >= 0x0200) { - wcscpy(Buffer, - L"VBE Display"); + strcpy(Buffer, + "VBE Display"); } else { - wcscpy(Buffer, - L"VGA Display"); + strcpy(Buffer, + "VGA Display"); } /* Set 'Identifier' value */ @@ -1821,7 +1821,7 @@ DetectIsaBios(PCONFIGURATION_COMPONENT_DATA SystemKey, ULONG *BusNumber) (*BusNumber)++; /* Set 'Identifier' value */ - FldrSetIdentifier(BusKey, L"ISA"); + FldrSetIdentifier(BusKey, "ISA"); /* Set 'Configuration Data' value */ Size = sizeof(CM_PARTIAL_RESOURCE_LIST) - diff --git a/reactos/boot/freeldr/freeldr/arch/i386/hwacpi.c b/reactos/boot/freeldr/freeldr/arch/i386/hwacpi.c index 15a71cc1dfe..cefae055e77 100644 --- a/reactos/boot/freeldr/freeldr/arch/i386/hwacpi.c +++ b/reactos/boot/freeldr/freeldr/arch/i386/hwacpi.c @@ -86,7 +86,7 @@ DetectAcpiBios(PCONFIGURATION_COMPONENT_DATA SystemKey, ULONG *BusNumber) (*BusNumber)++; /* Set 'Identifier' value */ - FldrSetIdentifier(BiosKey, L"ACPI BIOS"); + FldrSetIdentifier(BiosKey, "ACPI BIOS"); } /* FIXME: Add congiguration data */ diff --git a/reactos/boot/freeldr/freeldr/arch/i386/hwapm.c b/reactos/boot/freeldr/freeldr/arch/i386/hwapm.c index 5fd4fb37550..4296c76164c 100644 --- a/reactos/boot/freeldr/freeldr/arch/i386/hwapm.c +++ b/reactos/boot/freeldr/freeldr/arch/i386/hwapm.c @@ -89,7 +89,7 @@ DetectApmBios(PCONFIGURATION_COMPONENT_DATA SystemKey, ULONG *BusNumber) (*BusNumber)++; /* Set 'Identifier' value */ - FldrSetIdentifier(BiosKey, L"APM"); + FldrSetIdentifier(BiosKey, "APM"); } /* FIXME: Add configuration data */ diff --git a/reactos/boot/freeldr/freeldr/arch/i386/hwpci.c b/reactos/boot/freeldr/freeldr/arch/i386/hwpci.c index 1884980bd93..f8e609e32cf 100644 --- a/reactos/boot/freeldr/freeldr/arch/i386/hwpci.c +++ b/reactos/boot/freeldr/freeldr/arch/i386/hwpci.c @@ -168,7 +168,7 @@ DetectPciIrqRoutingTable(PCONFIGURATION_COMPONENT_DATA BusKey) 0xFFFFFFFF); /* Set 'Identifier' value */ - FldrSetIdentifier(TableKey, L"PCI Real-mode IRQ Routing Table"); + FldrSetIdentifier(TableKey, "PCI Real-mode IRQ Routing Table"); /* Set 'Configuration Data' value */ Size = FIELD_OFFSET(CM_PARTIAL_RESOURCE_LIST, PartialDescriptors) + @@ -218,7 +218,7 @@ DetectPciBios(PCONFIGURATION_COMPONENT_DATA SystemKey, ULONG *BusNumber) ULONG Size; PCONFIGURATION_COMPONENT_DATA BusKey; ULONG i; - WCHAR szPci[] = L"PCI"; + CHAR szPci[] = "PCI"; /* Report the PCI BIOS */ if (FindPciBios(&BusData)) @@ -241,7 +241,7 @@ DetectPciBios(PCONFIGURATION_COMPONENT_DATA SystemKey, ULONG *BusNumber) (*BusNumber)++; /* Set 'Identifier' value */ - FldrSetIdentifier(BiosKey, L"PCI BIOS"); + FldrSetIdentifier(BiosKey, "PCI BIOS"); /* Set 'Configuration Data' value */ Size = FIELD_OFFSET(CM_PARTIAL_RESOURCE_LIST, diff --git a/reactos/boot/freeldr/freeldr/arch/i386/xboxhw.c b/reactos/boot/freeldr/freeldr/arch/i386/xboxhw.c index 3df71f8bc31..0708aea1fb8 100644 --- a/reactos/boot/freeldr/freeldr/arch/i386/xboxhw.c +++ b/reactos/boot/freeldr/freeldr/arch/i386/xboxhw.c @@ -22,7 +22,7 @@ #define NDEBUG #include -static WCHAR Hex[] = L"0123456789ABCDEF"; +static CHAR Hex[] = "0123456789ABCDEF"; //static unsigned int delay_count = 1; extern ULONG reactos_disk_count; @@ -102,7 +102,7 @@ SetHarddiskIdentifier(PCONFIGURATION_COMPONENT_DATA DiskKey, ULONG i; ULONG Checksum; ULONG Signature; - WCHAR Identifier[20]; + CHAR Identifier[20]; CHAR ArcName[256]; /* Read the MBR */ @@ -145,7 +145,7 @@ SetHarddiskIdentifier(PCONFIGURATION_COMPONENT_DATA DiskKey, Identifier[5] = Hex[(Checksum >> 8) & 0x0F]; Identifier[6] = Hex[(Checksum >> 4) & 0x0F]; Identifier[7] = Hex[Checksum & 0x0F]; - Identifier[8] = L'-'; + Identifier[8] = '-'; Identifier[9] = Hex[(Signature >> 28) & 0x0F]; Identifier[10] = Hex[(Signature >> 24) & 0x0F]; Identifier[11] = Hex[(Signature >> 20) & 0x0F]; @@ -154,10 +154,10 @@ SetHarddiskIdentifier(PCONFIGURATION_COMPONENT_DATA DiskKey, Identifier[14] = Hex[(Signature >> 8) & 0x0F]; Identifier[15] = Hex[(Signature >> 4) & 0x0F]; Identifier[16] = Hex[Signature & 0x0F]; - Identifier[17] = L'-'; - Identifier[18] = L'A'; + Identifier[17] = '-'; + Identifier[18] = 'A'; Identifier[19] = 0; - DbgPrint((DPRINT_HWDETECT, "Identifier: %S\n", Identifier)); + DbgPrint((DPRINT_HWDETECT, "Identifier: %s\n", Identifier)); /* Set identifier */ FldrSetIdentifier(DiskKey, Identifier); @@ -318,7 +318,7 @@ DetectIsaBios(PCONFIGURATION_COMPONENT_DATA SystemKey, ULONG *BusNumber) (*BusNumber)++; /* Set 'Identifier' value */ - FldrSetIdentifier(BusKey, L"ISA"); + FldrSetIdentifier(BusKey, "ISA"); /* Set 'Configuration Data' value */ Size = sizeof(CM_PARTIAL_RESOURCE_LIST) - diff --git a/reactos/boot/freeldr/freeldr/include/arch/i386/hardware.h b/reactos/boot/freeldr/freeldr/include/arch/i386/hardware.h index e8d29c44ed0..1f0e1f0f69d 100644 --- a/reactos/boot/freeldr/freeldr/include/arch/i386/hardware.h +++ b/reactos/boot/freeldr/freeldr/include/arch/i386/hardware.h @@ -51,7 +51,7 @@ VOID NTAPI FldrSetIdentifier( IN PCONFIGURATION_COMPONENT_DATA ComponentKey, - IN PWCHAR Identifier + IN PCHAR Identifier ); VOID diff --git a/reactos/boot/freeldr/freeldr/include/arch/powerpc/hardware.h b/reactos/boot/freeldr/freeldr/include/arch/powerpc/hardware.h index dd2108648a8..943f2254809 100644 --- a/reactos/boot/freeldr/freeldr/include/arch/powerpc/hardware.h +++ b/reactos/boot/freeldr/freeldr/include/arch/powerpc/hardware.h @@ -50,7 +50,7 @@ VOID NTAPI FldrSetIdentifier( IN PCONFIGURATION_COMPONENT_DATA ComponentKey, - IN PWCHAR Identifier + IN PCHAR Identifier ); VOID diff --git a/reactos/boot/freeldr/freeldr/reactos/archwsup.c b/reactos/boot/freeldr/freeldr/reactos/archwsup.c index 75be54ae812..5cbb942537f 100644 --- a/reactos/boot/freeldr/freeldr/reactos/archwsup.c +++ b/reactos/boot/freeldr/freeldr/reactos/archwsup.c @@ -71,21 +71,20 @@ FldrSetComponentInformation(IN PCONFIGURATION_COMPONENT_DATA ComponentData, VOID NTAPI FldrSetIdentifier(IN PCONFIGURATION_COMPONENT_DATA ComponentData, - IN PWCHAR IdentifierString) + IN PCHAR IdentifierString) { ULONG IdentifierLength; PCONFIGURATION_COMPONENT Component = &ComponentData->ComponentEntry; PCHAR Identifier; /* Allocate memory for the identifier */ - /* WARNING: This should be ASCII data */ - IdentifierLength = (wcslen(IdentifierString) + 1) * sizeof(WCHAR); + IdentifierLength = strlen(IdentifierString) + 1; Identifier = FldrpHwHeapAlloc(IdentifierLength); if (!Identifier) return; - + /* Copy the identifier */ RtlCopyMemory(Identifier, IdentifierString, IdentifierLength); - + /* Set component information */ Component->IdentifierLength = IdentifierLength; Component->Identifier = Identifier; diff --git a/reactos/ntoskrnl/config/cmconfig.c b/reactos/ntoskrnl/config/cmconfig.c index 2880d29904a..e56a60ca2fd 100644 --- a/reactos/ntoskrnl/config/cmconfig.c +++ b/reactos/ntoskrnl/config/cmconfig.c @@ -115,7 +115,6 @@ CmpInitializeRegistryNode(IN PCONFIGURATION_COMPONENT_DATA CurrentEntry, Status = RtlAnsiStringToUnicodeString(&ValueData, &TempString, TRUE); - RtlCreateUnicodeString(&ValueData, (PWCHAR)Component->Identifier); if (NT_SUCCESS(Status)) { /* Save the identifier in the registry */ @@ -244,8 +243,8 @@ CmpSetupConfigurationTree(IN PCONFIGURATION_COMPONENT_DATA CurrentEntry, for (i = 0; CmpMultifunctionTypes[i].Identifier; i++) { /* Check for a name match */ - if (!_wcsicmp(CmpMultifunctionTypes[i].Identifier, - (PWCHAR)Component->Identifier)) + if (!_stricmp(CmpMultifunctionTypes[i].Identifier, + Component->Identifier)) { /* Match found */ break; diff --git a/reactos/ntoskrnl/config/cmdata.c b/reactos/ntoskrnl/config/cmdata.c index 0a75c1678e6..d0bb819768c 100644 --- a/reactos/ntoskrnl/config/cmdata.c +++ b/reactos/ntoskrnl/config/cmdata.c @@ -124,14 +124,14 @@ UNICODE_STRING CmTypeName[MaximumType + 1] = CMP_MF_TYPE CmpMultifunctionTypes[] = { - {L"ISA", Isa, 0}, - {L"MCA", MicroChannel, 0}, - {L"PCI", PCIBus, 0}, - {L"VME", VMEBus, 0}, - {L"PCMCIA", PCMCIABus, 0}, - {L"CBUS", CBus, 0}, - {L"MPIPI", MPIBus, 0}, - {L"MPSA", MPSABus, 0}, + {"ISA", Isa, 0}, + {"MCA", MicroChannel, 0}, + {"PCI", PCIBus, 0}, + {"VME", VMEBus, 0}, + {"PCMCIA", PCMCIABus, 0}, + {"CBUS", CBus, 0}, + {"MPIPI", MPIBus, 0}, + {"MPSA", MPSABus, 0}, {NULL, Internal, 0} }; diff --git a/reactos/ntoskrnl/include/internal/cm.h b/reactos/ntoskrnl/include/internal/cm.h index c7494ecf2fd..8e9289817dd 100644 --- a/reactos/ntoskrnl/include/internal/cm.h +++ b/reactos/ntoskrnl/include/internal/cm.h @@ -472,9 +472,9 @@ typedef struct _CM_PARSE_CONTEXT // typedef struct _CMP_MF_TYPE { - PWCHAR Identifier; + PCHAR Identifier; USHORT InterfaceType; - USHORT Count; + USHORT Count; } CMP_MF_TYPE, *PCMP_MF_TYPE; //