test: cmdat.c File Reference

Main Page | Class Hierarchy | Class List | File List | Class Members | File Members

# cmdat.c File Reference

`#include "cmp.h"`

Go to the source code of this file.

## Variables

UNICODE_STRING | CmpLoadOptions = { 0 }
UNICODE_STRING | CmClassName [MaximumClass+1] = { 0 }
PWCHAR | CmClassString [MaximumClass+1]
struct {
PUCHAR AscString
USHORT InterfaceType
USHORT Count
} | CmpMultifunctionTypes []
USHORT | CmpUnknownBusCount = 0
ULONG | CmpConfigurationAreaSize = 0x4000
PCM_FULL_RESOURCE_DESCRIPTOR | CmpConfigurationData = { 0 }
UNICODE_STRING | CmTypeName [MaximumType+1] = { 0 }
ULONG | CmpTypeCount [NUMBER_TYPES]
UNICODE_STRING | nullclass = { 0, 0, NULL }
UNICODE_STRING | CmRegistryRootName = { 0 }
UNICODE_STRING | CmRegistryMachineName = { 0 }
UNICODE_STRING | CmRegistryMachineHardwareName = { 0 }
UNICODE_STRING | CmRegistryMachineHardwareDescriptionName = { 0 }
UNICODE_STRING | CmRegistryMachineHardwareDescriptionSystemName = { 0 }
UNICODE_STRING | CmRegistryMachineHardwareDeviceMapName = { 0 }
UNICODE_STRING | CmRegistryMachineHardwareResourceMapName = { 0 }
UNICODE_STRING | CmRegistryMachineHardwareOwnerMapName = { 0 }
UNICODE_STRING | CmRegistryMachineSystemName = { 0 }
UNICODE_STRING | CmRegistryMachineSystemCurrentControlSet = { 0 }
UNICODE_STRING | CmRegistryMachineSystemCurrentControlSetEnumName = { 0 }
UNICODE_STRING | CmRegistryMachineSystemCurrentControlSetEnumRootName = { 0 }
UNICODE_STRING | CmRegistryMachineSystemCurrentControlSetServices = { 0 }
UNICODE_STRING | CmRegistryMachineSystemCurrentControlSetHardwareProfilesCurrent = { 0 }
UNICODE_STRING | CmRegistryMachineSystemCurrentControlSetControlClass = { 0 }
UNICODE_STRING | CmRegistryMachineSystemCurrentControlSetControlSafeBoot = { 0 }
UNICODE_STRING | CmRegistryMachineSystemCurrentControlSetControlSessionManagerMemoryManagement = { 0 }
UNICODE_STRING | CmRegistryMachineSystemCurrentControlSetControlBootLog = { 0 }
UNICODE_STRING | CmRegistryMachineSystemCurrentControlSetServicesEventLog = { 0 }
UNICODE_STRING | CmRegistryUserName = { 0 }
UNICODE_STRING | CmRegistrySystemCloneName = { 0 }
UNICODE_STRING | CmpSystemFileName = { 0 }
UNICODE_STRING | CmSymbolicLinkValueName = { 0 }
PWCHAR | CmpRegistryRootString = L"\\REGISTRY"
PWCHAR | CmpRegistryMachineString = L"\\REGISTRY\\MACHINE"
PWCHAR | CmpRegistryMachineHardwareString
PWCHAR | CmpRegistryMachineHardwareDescriptionString
PWCHAR | CmpRegistryMachineHardwareDescriptionSystemString
PWCHAR | CmpRegistryMachineHardwareDeviceMapString
PWCHAR | CmpRegistryMachineHardwareResourceMapString
PWCHAR | CmpRegistryMachineHardwareOwnerMapString
PWCHAR | CmpRegistryMachineSystemString
PWCHAR | CmpRegistryMachineSystemCurrentControlSetString
PWCHAR | CmpRegistryMachineSystemCurrentControlSetEnumString
PWCHAR | CmpRegistryMachineSystemCurrentControlSetEnumRootString
PWCHAR | CmpRegistryMachineSystemCurrentControlSetServicesString
PWCHAR | CmpRegistryMachineSystemCurrentControlSetHardwareProfilesCurrentString
PWCHAR | CmpRegistryMachineSystemCurrentControlSetControlClassString
PWCHAR | CmpRegistryMachineSystemCurrentControlSetControlSafeBootString
PWCHAR | CmpRegistryMachineSystemCurrentControlSetControlSessionManagerMemoryManagementString
PWCHAR | CmpRegistryMachineSystemCurrentControlSetControlBootLogString
PWCHAR | CmpRegistryMachineSystemCurrentControlSetServicesEventLogString
PWCHAR | CmpRegistryUserString = L"\\REGISTRY\\USER"
PWCHAR | CmpRegistrySystemCloneString = L"\\REGISTRY\\MACHINE\\CLONE"
PWCHAR | CmpRegistrySystemFileNameString = L"SYSTEM"
PWCHAR | CmpRegistryPerflibString = L"\\REGISTRY\\MACHINE\\SOFTWARE\\MICROSOFT\\WINDOWS NT\\CURRENTVERSION\\PERFLIB"
PWCHAR | CmpProcessorControl = L"ProcessorControl"
PWCHAR | CmpControlSessionManager = L"Control\\Session Manager"
PWCHAR | CmpSymbolicLinkValueName = L"SymbolicLinkValue"
HIVE_LIST_ENTRY | CmpMachineHiveList []
PCMHIVE | CmpMasterHive = { 0 }
BOOLEAN | CmpNoMasterCreates = FALSE
LIST_ENTRY | CmpHiveListHead = { 0 }
POBJECT_TYPE | CmpKeyObjectType = { 0 }
BOOLEAN | CmpNoWrite = TRUE
BOOLEAN | CmFirstTime = TRUE
BOOLEAN | CmBootAcceptFirstTime = TRUE
BOOLEAN | CmpWasSetupBoot
PWCHAR | CmTypeString [MaximumType+1]

## Variable Documentation

PUCHAR AscString

| Definition at line 67 of file cmdat.c.

BOOLEAN CmBootAcceptFirstTime = TRUE

| Definition at line 319 of file cmdat.c. Referenced by NtInitializeRegistry().

UNICODE_STRING CmClassName[MaximumClass+1] = { 0 }

| Definition at line 52 of file cmdat.c. Referenced by CmpInitializeMachineDependentConfiguration(), CmpInitializeRegistryNames(), and CmpInitializeRegistryNode().

PWCHAR CmClassString[MaximumClass+1]

Initial value:

     {
        L"System",
        L"Processor",
        L"Cache",
        L"Adapter",
        L"Controller",
        L"Peripheral",
        L"MemoryClass",
        L"Undefined"
        }

Definition at line 54 of file cmdat.c.

Referenced by CmpInitializeRegistryNames().

BOOLEAN CmFirstTime = TRUE

| Definition at line 311 of file cmdat.c. Referenced by CmBootLastKnownGood(), and NtInitializeRegistry().

ULONG CmpConfigurationAreaSize = 0x4000

| Definition at line 85 of file cmdat.c.

PCM_FULL_RESOURCE_DESCRIPTOR CmpConfigurationData = { 0 }

| Definition at line 86 of file cmdat.c.

PWCHAR CmpControlSessionManager = L"Control\\Session Manager"

| Definition at line 236 of file cmdat.c. Referenced by CmpInterlockedFunction().

LIST_ENTRY CmpHiveListHead = { 0 }

| Definition at line 282 of file cmdat.c.

POBJECT_TYPE CmpKeyObjectType = { 0 }

| Definition at line 289 of file cmdat.c. Referenced by CmGetSystemDriverList(), CmpCheckCreateAccess(), CmpCheckNotifyAccess(), CmpCloneControlSet(), CmpCloneHwProfile(), CmpCreateObjectTypes(), CmpCreatePredefined(), CmpCreateRegistryRoot(), CmpDoCreateChild(), CmpDoOpen(), CmpLinkHiveToMaster(), CmpParseKey(), CmpSaveBootControlSet(), NtCreateKey(), NtDeleteKey(), NtDeleteValueKey(), NtEnumerateKey(), NtEnumerateValueKey(), NtFlushKey(), NtNotifyChangeMultipleKeys(), NtOpenKey(), NtQueryKey(), NtQueryMultipleValueKey(), NtQueryOpenSubKeys(), NtQueryValueKey(), NtReplaceKey(), NtRestoreKey(), NtSaveKey(), NtSaveMergedKeys(), NtSetInformationKey(), NtSetValueKey(), and NtUnloadKey().

UNICODE_STRING CmpLoadOptions = { 0 }

| Definition at line 43 of file cmdat.c. Referenced by CmInitSystem1(), and CmpInitializeSystemHive().

HIVE_LIST_ENTRY CmpMachineHiveList[]

Initial value:

     {
        { L"HARDWARE", L"MACHINE\\", NULL, HIVE_VOLATILE },
        { L"SECURITY", L"MACHINE\\", NULL, 0},
        { L"SOFTWARE", L"MACHINE\\", NULL, 0},
        { L"SYSTEM",   L"MACHINE\\", NULL, 0},
        { L"DEFAULT",  L"USER\\.DEFAULT", NULL, 0},
        { L"SAM",      L"MACHINE\\", NULL, HIVE_NOLAZYFLUSH },

        { NULL,        NULL,         0, 0}
        }

Definition at line 250 of file cmdat.c.

Referenced by CmInitSystem1(), CmpInitializeHiveList(), and CmpInitializeSystemHive().

PCMHIVE CmpMasterHive = { 0 }

| Definition at line 275 of file cmdat.c.

struct { ... } CmpMultifunctionTypes[]

BOOLEAN CmpNoMasterCreates = FALSE

| Definition at line 276 of file cmdat.c. Referenced by CmInitSystem1(), and CmpParseKey().

BOOLEAN CmpNoWrite = TRUE

| Definition at line 299 of file cmdat.c.

PWCHAR CmpProcessorControl = L"ProcessorControl"

| Definition at line 235 of file cmdat.c. Referenced by CmpSetVersionData().

PWCHAR CmpRegistryMachineHardwareDescriptionString

Initial value:

                        L"\\REGISTRY\\MACHINE\\HARDWARE\\DESCRIPTION"

Definition at line 198 of file cmdat.c.

Referenced by CmpInitializeRegistryNames().

PWCHAR CmpRegistryMachineHardwareDescriptionSystemString

Initial value:

                        L"\\REGISTRY\\MACHINE\\HARDWARE\\DESCRIPTION\\SYSTEM"

Definition at line 200 of file cmdat.c.

Referenced by CmpInitializeRegistryNames().

PWCHAR CmpRegistryMachineHardwareDeviceMapString

Initial value:

                        L"\\REGISTRY\\MACHINE\\HARDWARE\\DEVICEMAP"

Definition at line 202 of file cmdat.c.

Referenced by CmpInitializeRegistryNames().

PWCHAR CmpRegistryMachineHardwareOwnerMapString

Initial value:

                        L"\\REGISTRY\\MACHINE\\HARDWARE\\OWNERMAP"

Definition at line 206 of file cmdat.c.

Referenced by CmpInitializeRegistryNames().

PWCHAR CmpRegistryMachineHardwareResourceMapString

Initial value:

                        L"\\REGISTRY\\MACHINE\\HARDWARE\\RESOURCEMAP"

Definition at line 204 of file cmdat.c.

Referenced by CmpInitializeRegistryNames().

PWCHAR CmpRegistryMachineHardwareString

Initial value:

                        L"\\REGISTRY\\MACHINE\\HARDWARE"

Definition at line 196 of file cmdat.c.

Referenced by CmpInitializeRegistryNames().

PWCHAR CmpRegistryMachineString = L"\\REGISTRY\\MACHINE"

| Definition at line 195 of file cmdat.c. Referenced by CmpInitializeRegistryNames().

PWCHAR CmpRegistryMachineSystemCurrentControlSetControlBootLogString

Initial value:

                        L"\\REGISTRY\\MACHINE\\SYSTEM\\CURRENTCONTROLSET\\CONTROL\\BOOTLOG"

Definition at line 226 of file cmdat.c.

Referenced by CmpInitializeRegistryNames().

PWCHAR CmpRegistryMachineSystemCurrentControlSetControlClassString

Initial value:

                        L"\\REGISTRY\\MACHINE\\SYSTEM\\CURRENTCONTROLSET\\CONTROL\\CLASS"

Definition at line 220 of file cmdat.c.

Referenced by CmpInitializeRegistryNames().

PWCHAR CmpRegistryMachineSystemCurrentControlSetControlSafeBootString

Initial value:

                        L"\\REGISTRY\\MACHINE\\SYSTEM\\CURRENTCONTROLSET\\CONTROL\\SAFEBOOT"

Definition at line 222 of file cmdat.c.

Referenced by CmpInitializeRegistryNames().

PWCHAR CmpRegistryMachineSystemCurrentControlSetControlSessionManagerMemoryManagementString

Initial value:

                        L"\\REGISTRY\\MACHINE\\SYSTEM\\CURRENTCONTROLSET\\CONTROL\\SESSION MANAGER\\MEMORY MANAGEMENT"

Definition at line 224 of file cmdat.c.

Referenced by CmpInitializeRegistryNames().

PWCHAR CmpRegistryMachineSystemCurrentControlSetEnumRootString

Initial value:

                        L"\\REGISTRY\\MACHINE\\SYSTEM\\CURRENTCONTROLSET\\ENUM\\ROOT"

Definition at line 214 of file cmdat.c.

Referenced by CmpInitializeRegistryNames().

PWCHAR CmpRegistryMachineSystemCurrentControlSetEnumString

Initial value:

                        L"\\REGISTRY\\MACHINE\\SYSTEM\\CURRENTCONTROLSET\\ENUM"

Definition at line 212 of file cmdat.c.

Referenced by CmpInitializeRegistryNames().

PWCHAR CmpRegistryMachineSystemCurrentControlSetHardwareProfilesCurrentString

Initial value:

                        L"\\REGISTRY\\MACHINE\\SYSTEM\\CURRENTCONTROLSET\\HARDWARE PROFILES\\CURRENT"

Definition at line 218 of file cmdat.c.

Referenced by CmpInitializeRegistryNames().

PWCHAR CmpRegistryMachineSystemCurrentControlSetServicesEventLogString

Initial value:

                        L"\\REGISTRY\\MACHINE\\SYSTEM\\CURRENTCONTROLSET\\SERVICES\\EVENTLOG"

Definition at line 228 of file cmdat.c.

Referenced by CmpInitializeRegistryNames().

PWCHAR CmpRegistryMachineSystemCurrentControlSetServicesString

Initial value:

                        L"\\REGISTRY\\MACHINE\\SYSTEM\\CURRENTCONTROLSET\\SERVICES"

Definition at line 216 of file cmdat.c.

Referenced by CmpInitializeRegistryNames().

PWCHAR CmpRegistryMachineSystemCurrentControlSetString

Initial value:

                        L"\\REGISTRY\\MACHINE\\SYSTEM\\CURRENTCONTROLSET"

Definition at line 210 of file cmdat.c.

Referenced by CmpInitializeRegistryNames().

PWCHAR CmpRegistryMachineSystemString

Initial value:

                        L"\\REGISTRY\\MACHINE\\SYSTEM"

Definition at line 208 of file cmdat.c.

Referenced by CmpInitializeRegistryNames().

PWCHAR CmpRegistryPerflibString = L"\\REGISTRY\\MACHINE\\SOFTWARE\\MICROSOFT\\WINDOWS NT\\CURRENTVERSION\\PERFLIB"

| Definition at line 233 of file cmdat.c. Referenced by CmpCreatePerfKeys().

PWCHAR CmpRegistryRootString = L"\\REGISTRY"

| Definition at line 194 of file cmdat.c. Referenced by CmpInitializeRegistryNames().

PWCHAR CmpRegistrySystemCloneString = L"\\REGISTRY\\MACHINE\\CLONE"

| Definition at line 231 of file cmdat.c. Referenced by CmpInitializeRegistryNames().

PWCHAR CmpRegistrySystemFileNameString = L"SYSTEM"

| Definition at line 232 of file cmdat.c. Referenced by CmpInitializeRegistryNames().

PWCHAR CmpRegistryUserString = L"\\REGISTRY\\USER"

| Definition at line 230 of file cmdat.c. Referenced by CmpInitializeRegistryNames().

PWCHAR CmpSymbolicLinkValueName = L"SymbolicLinkValue"

| Definition at line 237 of file cmdat.c. Referenced by CmpInitializeRegistryNames().

UNICODE_STRING CmpSystemFileName = { 0 }

| Definition at line 187 of file cmdat.c. Referenced by CmpInitializeRegistryNames(), CmpInitializeSystemHive(), and CmpValidateAlternate().

ULONG CmpTypeCount[NUMBER_TYPES]

| Definition at line 115 of file cmdat.c. Referenced by CmpSetupConfigurationTree().

USHORT CmpUnknownBusCount = 0

| Definition at line 83 of file cmdat.c. Referenced by CmpSetupConfigurationTree().

BOOLEAN CmpWasSetupBoot

| Definition at line 326 of file cmdat.c.

UNICODE_STRING CmRegistryMachineHardwareDescriptionName = { 0 }

| Definition at line 169 of file cmdat.c. Referenced by CmpInitializeHardwareConfiguration(), and CmpInitializeRegistryNames().

UNICODE_STRING CmRegistryMachineHardwareDescriptionSystemName = { 0 }

| Definition at line 170 of file cmdat.c. Referenced by CmpInitializeMachineDependentConfiguration(), CmpInitializeRegistryNames(), IopInitializeBuiltinDriver(), IopLoadDriver(), IoQueryDeviceDescription(), KeSetup80387OrEmulate(), and VdmpInitialize().

UNICODE_STRING CmRegistryMachineHardwareDeviceMapName = { 0 }

| Definition at line 171 of file cmdat.c. Referenced by CmpInitializeHardwareConfiguration(), and CmpInitializeRegistryNames().

UNICODE_STRING CmRegistryMachineHardwareName = { 0 }

| Definition at line 168 of file cmdat.c. Referenced by CmInitSystem1(), and CmpInitializeRegistryNames().

UNICODE_STRING CmRegistryMachineHardwareOwnerMapName = { 0 }

| Definition at line 173 of file cmdat.c. Referenced by CmpInitializeRegistryNames().

UNICODE_STRING CmRegistryMachineHardwareResourceMapName = { 0 }

| Definition at line 172 of file cmdat.c. Referenced by CmpInitializeRegistryNames(), IopBuildCmResourceList(), IopInitializeResourceMap(), and IoReportHalResourceUsage().

UNICODE_STRING CmRegistryMachineName = { 0 }

| Definition at line 167 of file cmdat.c. Referenced by CmInitSystem1(), CmpInitializeRegistryNames(), and IopProcessCriticalDeviceRoutine().

UNICODE_STRING CmRegistryMachineSystemCurrentControlSet = { 0 }

| Definition at line 175 of file cmdat.c. Referenced by CmpInitializeRegistryNames(), CmpInterlockedFunction(), CmpSaveBootControlSet(), IopInitializePlugPlayServices(), and IopSetupRemoteBootCard().

UNICODE_STRING CmRegistryMachineSystemCurrentControlSetControlBootLog = { 0 }

| Definition at line 183 of file cmdat.c. Referenced by CmpInitializeRegistryNames(), IopBootLog(), and IopCopyBootLogRegistryToFile().

UNICODE_STRING CmRegistryMachineSystemCurrentControlSetControlClass = { 0 }

| Definition at line 180 of file cmdat.c. Referenced by CmpInitializeRegistryNames(), IopCallDriverAddDevice(), and IopSetupRemoteBootCard().

UNICODE_STRING CmRegistryMachineSystemCurrentControlSetControlSafeBoot = { 0 }

| Definition at line 181 of file cmdat.c. Referenced by CmpInitializeRegistryNames(), and IopSafebootDriverLoad().

UNICODE_STRING CmRegistryMachineSystemCurrentControlSetControlSessionManagerMemoryManagement = { 0 }

| Definition at line 182 of file cmdat.c. Referenced by CmpInitializeMachineDependentConfiguration(), and CmpInitializeRegistryNames().

UNICODE_STRING CmRegistryMachineSystemCurrentControlSetEnumName = { 0 }

| Definition at line 176 of file cmdat.c. Referenced by CmpInitializeRegistryNames(), IopApplyFunctionToServiceInstances(), IopCallDriverAddDevice(), IopCleanupDeviceRegistryValues(), IopDeleteLegacyKey(), IopDeviceObjectFromDeviceInstance(), IopDeviceObjectToDeviceInstance(), IopDriverLoadingFailed(), IopInitializePlugPlayServices(), IopIsDeviceInstanceEnabled(), IopMakeGloballyUniqueId(), IopProcessCriticalDevice(), IopProcessNewDeviceNode(), IopServiceInstanceToDeviceInstance(), and IoReportDetectedDevice().

UNICODE_STRING CmRegistryMachineSystemCurrentControlSetEnumRootName = { 0 }

| Definition at line 177 of file cmdat.c. Referenced by CmpInitializeRegistryNames(), IopCreateMadeupNode(), and IopGetRootDevices().

UNICODE_STRING CmRegistryMachineSystemCurrentControlSetHardwareProfilesCurrent = { 0 }

| Definition at line 179 of file cmdat.c. Referenced by CmpInitializeRegistryNames(), IopGetDeviceInstanceCsConfigFlags(), IopIsDeviceInstanceEnabled(), and IopOpenCurrentHwProfileDeviceInstanceKey().

UNICODE_STRING CmRegistryMachineSystemCurrentControlSetServices = { 0 }

| Definition at line 178 of file cmdat.c. Referenced by CmpInitializeRegistryNames(), IopAddRemoteBootValuesToRegistry(), IopOpenServiceEnumKeys(), IopUnloadAttachedDriver(), MiResolveImageReferences(), and MmCallDllInitialize().

UNICODE_STRING CmRegistryMachineSystemCurrentControlSetServicesEventLog = { 0 }

| Definition at line 184 of file cmdat.c. Referenced by CmpInitializeRegistryNames(), and IoInitSystem().

UNICODE_STRING CmRegistryMachineSystemName = { 0 }

| Definition at line 174 of file cmdat.c. Referenced by CmpInitializeRegistryNames(), CmpInitializeSystemHive(), and IopStoreSystemPartitionInformation().

UNICODE_STRING CmRegistryRootName = { 0 }

| Definition at line 166 of file cmdat.c. Referenced by CmpCreateRegistryRoot(), and CmpInitializeRegistryNames().

UNICODE_STRING CmRegistrySystemCloneName = { 0 }

| Definition at line 186 of file cmdat.c. Referenced by CmInitSystem1(), CmpDeleteCloneTree(), and CmpInitializeRegistryNames().

UNICODE_STRING CmRegistryUserName = { 0 }

| Definition at line 185 of file cmdat.c. Referenced by CmInitSystem1(), and CmpInitializeRegistryNames().

UNICODE_STRING CmSymbolicLinkValueName = { 0 }

| Definition at line 188 of file cmdat.c.

UNICODE_STRING CmTypeName[MaximumType+1] = { 0 }

| Definition at line 108 of file cmdat.c. Referenced by CmpInitializeRegistryNames(), CmpInitializeRegistryNode(), and KeSetup80387OrEmulate().

PWCHAR CmTypeString[MaximumType+1]

| Definition at line 338 of file cmdat.c. Referenced by CmpInitializeRegistryNames(), pIoQueryBusDescription(), and pIoQueryDeviceDescription().

USHORT Count

| Definition at line 69 of file cmdat.c. Referenced by CProfile::DeviceCount().

USHORT InterfaceType

| Definition at line 68 of file cmdat.c.

UNICODE_STRING nullclass = { 0, 0, NULL }

| Definition at line 159 of file cmdat.c. Referenced by CmInitSystem1(), and CmpSetVersionData().