Função USBD_ValidateConfigurationDescriptor (usbdlib.h)
A rotina USBD_ValidateConfigurationDescriptor valida todos os descritores retornados por um dispositivo em sua resposta a uma solicitação de descritor de configuração.
Sintaxe
USBD_STATUS USBD_ValidateConfigurationDescriptor(
[in] PUSB_CONFIGURATION_DESCRIPTOR ConfigDesc,
[in] ULONG BufferLength,
[in] USHORT Level,
[out] PUCHAR *Offset,
[in, optional] ULONG Tag
);
Parâmetros
[in] ConfigDesc
Ponteiro para um descritor de configuração que inclui todos os descritores de interface, ponto de extremidade, fornecedor e específicos de classe recuperados de um dispositivo USB.
[in] BufferLength
Tamanho, em bytes, do descritor de configuração que está sendo validado.
[in] Level
Nível de validação a ser executado. Os seguintes valores são válidos:
- 1 – Validação básica do cabeçalho do descritor de configuração.
- 2- Validação completa do descritor de configuração, incluindo verificação de endereços de ponto de extremidade inválidos, números de interface, estruturas de descritor, configurações alternativas de interface, número de interfaces e campos bLength de todos os descritores.
- 3- Além da validação para os níveis 1 e 2, o nível 3 valida mais valida o número de pontos de extremidade em cada interface, impõe os tamanhos bLength do descritor da especificação USB e verifica se todos os números de interface estão em ordem sequencial.
[out] Offset
Deslocamento no descritor de configuração em que a validação falhou. Válido somente quando um status diferente de USBD_STATUS_SUCCESS é retornado.
[in, optional] Tag
Marca de pool usada por USBD_ValidateConfigurationDescriptor ao alocar memória.
Retornar valor
USBD_STATUS_SUCCESS ou código de erro USBD apropriado se a validação falhar.
Requisitos
Requisito | Valor |
---|---|
Cliente mínimo com suporte | Disponível no Windows Vista e em sistemas operacionais posteriores. |
Plataforma de Destino | Universal |
Cabeçalho | usbdlib.h (inclua Usbdlib.h) |
Biblioteca | Usbd.lib |
IRQL | PASSIVE_LEVEL |