|
ReactOS 0.4.17-dev-1281-g065abb3
|

Go to the source code of this file.
Classes | |
| struct | HubFailureId |
| struct | HubIdSink |
| struct | HubIdText |
Macros | |
| #define | NDEBUG |
| #define | HUB_ID_MAX_CHARS 128 |
| #define | HUB_INSTANCE_ID_CHARS 28 |
| #define | HUB_LOCATION_TEXT_BYTES 42 |
| #define | HUB_DEFAULT_LANGUAGE 0x0409 |
| #define | HUB_FAILURE_ID(Reason, Pid, Text) { (Reason), (Pid), Text, sizeof(Text) } |
Enumerations | |
| enum class | HubIdKind { Device , Hardware , Compatible , Container } |
Variables | |
| static const GUID | HubContainerIdNamespace |
| static const HubFailureId | HubFailureIds [] |
| static const HubFailureId | HubUnknownDeviceId |
| static const WCHAR | HubBillboardId [] = L"USB\\Class_11&SubClass_00&Prot_00" |
| _In_ PWDFDEVICE_INIT | DeviceInit |
| WCHAR | Digits [HUB_INSTANCE_ID_CHARS] |
| UNICODE_STRING | Id |
| ULONG | Number = Port->Number() |
| NTSTATUS | Status = RtlIntegerToUnicodeString(Number, 10, &Id) |
| Child | |
| _Inout_ PIRP | Irp |
| Text = (PWCHAR)ExAllocatePoolWithTag(NonPagedPool, HUB_LOCATION_TEXT_BYTES, HUB_TAG_DEVICE) | |
| Irp IoStatus | Information = (ULONG_PTR)Text |
| return | STATUS_SUCCESS |
| _Inout_ PIRP _In_ LCID | Locale |
| PUSB_STRING_DESCRIPTOR | Product = Child->m_ProductString |
| ULONG | Characters = (Product->bLength - 2) / sizeof(WCHAR) + 1 |
| _IRQL_requires_ | ( | PASSIVE_LEVEL | ) |
Sends a synchronous IOCTL to the specified device object.
| [in] | IoControlCode | The IOCTL to send to the device. |
| [in] | DeviceObject | Pointer to the device object that will handle the IOCTL. |
| [in] | InputBuffer | Optional pointer to a buffer containing input data for the IOCTL. When specified, the buffer should be at least of InputBufferLength size. |
| [in] | InputBufferLength | Size in bytes, of the buffer pointed by InputBuffer. |
| [out] | OutputBuffer | Optional pointer to a buffer that will receive output data from the IOCTL. When specified, the buffer should be at least of OutputBufferLength size. |
| [in] | OutputBufferLength | Size in bytes, of the buffer pointed by OutputBuffer. |
| [in] | FileObject | Optional pointer to a file object that may be necessary for the IOCTL. |
Nothing is found unless the PCI bus driver publishes the properties.
The root hub name without its prefix; NULL when the PDO has no name.
Grows a private buffer to what the helper asks for.
Lets KMDF handle the IRP, then hands it back here still uncompleted.
Waits for the device machine to answer a PnP or power event; returns the PnP status.
Deletes the UCX endpoints of the disabled pipes, then the interface record.
One 4 byte value; the registry type is not checked.
Reread whenever user experience settings change; the open status is returned.
Sends a synchronous IOCTL to the specified device object.
Definition at line 765 of file hubid.cpp.
|
static |
Definition at line 61 of file hubid.cpp.
Referenced by HubIdBuildCompatibleIds(), HubIdBuildDeviceId(), and HubIdBuildHardwareIds().
| return HubIdAssignInstanceId | ( | Child | , |
| DeviceInit | |||
| ) |
|
static |
Definition at line 541 of file hubid.cpp.
Referenced by HubIdBuildCompatibleIds().
| NTSTATUS NTAPI HubIdBuildCompatibleIds | ( | _In_ HubChild * | Child, |
| _In_opt_ PWDFDEVICE_INIT | DeviceInit, | ||
| _Out_opt_ PUSB_ID_STRING | Ids | ||
| ) |
Compatible ids into a PDO init and/or a multi-sz list, which is zeroed first.
Definition at line 597 of file hubid.cpp.
|
static |
Definition at line 422 of file hubid.cpp.
Referenced by HubIdBuildCompatibleIds().
|
static |
Definition at line 719 of file hubid.cpp.
| HubIdBuildContainerId | ( | Child | , |
| DeviceInit | |||
| ) |
|
static |
Definition at line 348 of file hubid.cpp.
| NTSTATUS NTAPI HubIdBuildHardwareIds | ( | _In_ HubChild * | Child, |
| _In_opt_ PWDFDEVICE_INIT | DeviceInit, | ||
| _Out_opt_ PUSB_ID_STRING | Ids | ||
| ) |
Hardware ids into a PDO init and/or a multi-sz list, which is zeroed first.
Definition at line 381 of file hubid.cpp.
|
static |
Definition at line 494 of file hubid.cpp.
Referenced by HubIdBuildClassIds().
Definition at line 1087 of file hubid.cpp.
Referenced by DeviceMachine::SameSerialNumber(), and DeviceMachine::SerialNumberValid().
Definition at line 198 of file hubid.cpp.
Referenced by HubIdBuildDeviceId(), HubIdBuildHardwareIds(), HubIdEmitCounted(), and HubIdEmitText().
|
static |
Emits a fixed id whose byte count is given as is, counted NUL included.
Definition at line 261 of file hubid.cpp.
Referenced by HubIdBuildCompatibleIds(), and HubIdBuildHardwareIds().
|
static |
Definition at line 468 of file hubid.cpp.
Referenced by HubIdBuildMsOsIds().
|
static |
Definition at line 241 of file hubid.cpp.
Referenced by HubIdBuildClassIds(), HubIdBuildCompatibleIds(), HubIdBuildCompositeIds(), HubIdBuildContainerId(), HubIdBuildDeviceId(), HubIdBuildHardwareIds(), and HubIdEmitMsComp().
Definition at line 647 of file hubid.cpp.
Referenced by HubIdBuildContainerId().
Container id the PDO got; FALSE when it got none.
Definition at line 749 of file hubid.cpp.
| BOOLEAN NTAPI HubIdGetSerialNumberText | ( | _In_ HubChild * | Child, |
| _Outptr_result_bytebuffer_ *Length PCWSTR * | Text, | ||
| _Out_ PULONG | Length | ||
| ) |
Cached serial number text without its decoration, for the serial string IOCTL.
Definition at line 1111 of file hubid.cpp.
Referenced by HubIoGetDescriptor(), and DeviceMachine::SameSerialNumber().
Definition at line 708 of file hubid.cpp.
Referenced by HubIdBuildContainerId(), and HubIdGetContainerId().
Definition at line 279 of file hubid.cpp.
Referenced by HubIdBuildDeviceId(), and HubIdUsesFailureId().
Definition at line 298 of file hubid.cpp.
Referenced by HubIdBuildDeviceId(), and HubIdBuildHardwareIds().
TRUE when the device lists Language among its string languages.
Definition at line 911 of file hubid.cpp.
Referenced by DeviceMachine::ProductNameWanted().
|
static |
Definition at line 130 of file hubid.cpp.
Referenced by HubIdEmit().
| NTSTATUS NTAPI HubIdListCopy | ( | _Out_ PUSB_ID_STRING | Destination, |
| _In_ const USB_ID_STRING * | Source | ||
| ) |
Duplicates a multi-sz id list into nonpaged pool.
Definition at line 173 of file hubid.cpp.
Referenced by if().
|
static |
Definition at line 309 of file hubid.cpp.
Referenced by HubIdBuildHardwareIds(), and HubIdGenerateContainerId().
Definition at line 1097 of file hubid.cpp.
Referenced by DeviceMachine::SerialNumberValid().
Definition at line 289 of file hubid.cpp.
Referenced by HubIdBuildCompatibleIds(), HubIdBuildDeviceId(), and HubIdBuildHardwareIds().
|
static |
Referenced by HubIoCyclePort().
| RtlInitEmptyUnicodeString & Id | ( | Digits | ) |
| if | ( | Child-> | HasPropertyChildProperty::UxdReserved | ) |
| if | ( | Child->m_DeviceDescriptor. | iProduct = =0||Child->HasHack(ChildHack::DisableSerialNumber) | ) |
| if | ( | Language ! | = Child->m_LanguageId | ) |
| if | ( | Language | = =0||!HubIdLanguageSupported(Child, Language) | ) |
| if | ( | NT_SUCCESS(Status) | ) |
Definition at line 169 of file userreq.cpp.
| if | ( | Port->HasProperty(PortProperty::TypeCWithoutSwitch) &&Port->m_InstancePortNumber ! | = 0 && HubIdIsKnown(Child) | ) |
| IoCompleteRequest | ( | Irp | , |
| IO_NO_INCREMENT | |||
| ) |
| PAGED_CODE | ( | ) |
Referenced by _IRQL_requires_().
| RtlCopyMemory | ( | Text | , |
| Product-> | bString, | ||
| (Characters - 1) *sizeof(WCHAR) | |||
| ) |
| switch | ( | Stack->Parameters.QueryDeviceText. | DeviceTextType | ) |
Definition at line 831 of file hubid.cpp.
Referenced by HubIdBuildCompatibleIds(), HubIdBuildContainerId(), HubIdBuildDeviceId(), and HubIdBuildHardwareIds().
| WCHAR Digits[HUB_INSTANCE_ID_CHARS] |
Definition at line 834 of file hubid.cpp.
Referenced by AcpiUtPutNumber(), and GetDigitCount().
Definition at line 56 of file hubid.cpp.
Referenced by HubIdBuildCompatibleIds().
Definition at line 26 of file hubid.cpp.
Referenced by HubIdGenerateContainerId().
|
static |
Definition at line 40 of file hubid.cpp.
Referenced by HubFailureIdFor().
|
static |
Definition at line 835 of file hubid.cpp.
Referenced by HubIdBuildContainerId(), HubIdEmit(), HubIdEmitCounted(), HubIdEmitText(), HubIdListAppend(), and if().
Definition at line 987 of file hubid.cpp.
Referenced by co_IntGetCharsetInfo(), CreateLanguagesList(), fnIMultiLanguage3_GetRfc1766Info(), fnIMultiLanguage_GetRfc1766Info(), GetCalendarInfoW(), GetLocaleName(), LCIDToLocaleName(), LoadLocalizedResourcesFromINI(), PciQueryDeviceText(), RtlLcidToLocaleName(), SetCalendarInfoA(), SetCalendarInfoW(), wbem_locator_ConnectServer(), and WriteUserLocale().
| Product = Child->m_ProductString |
Definition at line 990 of file hubid.cpp.
Referenced by AcpiUtInsertDigit(), AcpiUtShortMultiply(), AcpiUtStrtoulMultiply64(), FAST486_OPCODE_HANDLER(), and IsVesaBiosOk().
| return Status = RtlIntegerToUnicodeString(Number, 10, &Id) |
Definition at line 837 of file hubid.cpp.
Referenced by _IRQL_requires_(), HubIdBuildClassIds(), HubIdBuildCompositeIds(), HubIdBuildContainerId(), HubIdBuildHardwareIds(), HubIdBuildMsOsIds(), HubIdEmit(), HubIdGenerateContainerId(), and if().
| return STATUS_SUCCESS |
Definition at line 973 of file hubid.cpp.
Referenced by _IRQL_requires_(), HubIdBuildCompatibleIds(), HubIdBuildCompositeIds(), HubIdBuildMsOsIds(), HubIdEmit(), HubIdListAppend(), and HubIdListCopy().
| Text[Characters - 1] = (PWCHAR)ExAllocatePoolWithTag(NonPagedPool, HUB_LOCATION_TEXT_BYTES, HUB_TAG_DEVICE) |
Definition at line 956 of file hubid.cpp.
Referenced by HubIdText::Append(), HubIdBuildClassIds(), HubIdBuildCompatibleIds(), HubIdBuildCompositeIds(), HubIdBuildContainerId(), HubIdBuildDeviceId(), HubIdBuildHardwareIds(), HubIdEmitMsComp(), HubIdEmitText(), HubIdGetSerialNumberText(), HubIdRevisionText(), HubIdWidenMsOsField(), if(), and HubIdText::Set().