estrutura BRB_HEADER (bthddi.h)
A estrutura BRB_HEADER contém informações de cabeçalho sobre um BRB (bloco de solicitação Bluetooth), incluindo informações sobre o tipo BRB que a pilha de driver bluetooth usa para determinar qual tipo de BRB processar.
Sintaxe
typedef struct _BRB_HEADER {
LIST_ENTRY ListEntry;
ULONG Length;
USHORT Version;
USHORT Type;
ULONG BthportFlags;
NTSTATUS Status;
BTHSTATUS BtStatus;
PVOID Context[BTHPORT_CONTEXT_SIZE];
PVOID ClientContext[BTHPORT_CONTEXT_SIZE];
ULONG Reserved[BTHPORT_RESERVED_FIELD_SIZE];
} BRB_HEADER;
Membros
ListEntry
Uma estrutura LIST_ENTRY usada pelo atual proprietário do BRB para colocar o BRB em uma fila.
Length
O tamanho, em bytes, do BRB, incluindo a estrutura BRB_HEADER. As funções BthAllocateBrb, BthInitializeBrb e BthReuseBrb definem automaticamente esse membro.
Version
Apenas para uso interno. Não use.
Type
O tipo de bloco de solicitação Bluetooth. As funções BthAllocateBrb, BthInitializeBrb e BthReuseBrb definem automaticamente esse membro. Os valores possíveis incluem:
- BRB_HCI_GET_LOCAL_BD_ADDR
- BRB_L2CA_REGISTER_SERVER
- BRB_L2CA_UNREGISTER_SERVER
- BRB_L2CA_OPEN_CHANNEL
- BRB_L2CA_OPEN_CHANNEL_RESPONSE
- BRB_L2CA_CLOSE_CHANNEL
- BRB_L2CA_ACL_TRANSFER
- BRB_L2CA_UPDATE_CHANNEL
- BRB_L2CA_PING
- BRB_REGISTER_PSM
- BRB_UNREGISTER_PSM
- BRB_SCO_REGISTER_SERVER
- BRB_SCO_UNREGISTER_SERVER
- BRB_SCO_OPEN_CHANNEL
- BRB_SCO_OPEN_CHANNEL_RESPONSE
- BRB_SCO_CLOSE_CHANNEL
- BRB_SCO_TRANSFER
- BRB_SCO_GET_CHANNEL_INFO
- BRB_SCO_GET_SYSTEM_INFO
- BRB_SCO_FLUSH_CHANNEL
- BRB_ACL_GET_MODE
- BRB_ACL_ENTER_ACTIVE_MODE
- BRB_GET_DEVICE_INTERFACE_STRING
BthportFlags
Apenas para uso interno. Não use.
Status
O código NTSTATUS que é passado quando a chamada BRB é concluída.
BtStatus
O código status Bluetooth (BTSTATUS) que corresponde ao código NTSTATUS que é passado no membro Status. Os valores possíveis incluem:
- BTH_ERROR_SUCCESS
- BTH_ERROR_ACL_CONNECTION_ALREADY_EXISTS
- BTH_ERROR_AUTHENTICATION_FAILURE
- BTH_ERROR_COMMAND_DISALLOWED
- BTH_ERROR_CONNECTION_TIMEOUT
- BTH_ERROR_ENCRYPTION_MODE_NOT_ACCEPTABLE
- BTH_ERROR_HARDWARE_FAILURE
- BTH_ERROR_HOST_REJECTED_LIMITED_RESOURCES
- BTH_ERROR_HOST_REJECTED_PERSONAL_DEVICE
- BTH_ERROR_HOST_REJECTED_SECURITY_REASONS
- BTH_ERROR_HOST_TIMEOUT
- BTH_ERROR_INSTANT_PASSED
- BTH_ERROR_INVALID_HCI_PARAMETER
- BTH_ERROR_INVALID_LMP_PARAMETERS
- BTH_ERROR_KEY_MISSING
- BTH_ERROR_LMP_PDU_NOT_ALLOWED
- BTH_ERROR_LMP_RESPONSE_TIMEOUT
- BTH_ERROR_LMP_TRANSACTION_COLLISION
- BTH_ERROR_LOCAL_HOST_TERMINATED_CONNECTION
- BTH_ERROR_MAX_NUMBER_OF_CONNECTIONS
- BTH_ERROR_MAX_NUMBER_OF_SCO_CONNECTIONS
- BTH_ERROR_MEMORY_FULL
- BTH_ERROR_NO_CONNECTION
- BTH_ERROR_PAGE_TIMEOUT
- BTH_ERROR_PAIRING_NOT_ALLOWED
- BTH_ERROR_PAIRING_WITH_UNIT_KEY_NOT_SUPPORTED
- BTH_ERROR_QOS_IS_NOT_SUPPORTED
- BTH_ERROR_REMOTE_LOW_RESOURCES
- BTH_ERROR_REMOTE_POWERING_OFF
- BTH_ERROR_REMOTE_USER_ENDED_CONNECTION
- BTH_ERROR_REPEATED_ATTEMPTS
- BTH_ERROR_ROLE_CHANGE_NOT_ALLOWED
- BTH_ERROR_SCO_AIRMODE_REJECTED
- BTH_ERROR_SCO_INTERVAL_REJECTED
- BTH_ERROR_SCO_OFFSET_REJECTED
- BTH_ERROR_UKNOWN_LMP_PDU
- BTH_ERROR_UNIT_KEY_NOT_USED
- BTH_ERROR_UNKNOWN_HCI_COMMAND
- BTH_ERROR_UNSPECIFIED_ERROR
- BTH_ERROR_UNSUPPORTED_FEATURE_OR_PARAMETER
- BTH_ERROR_UNSUPPORTED_LMP_PARM_VALUE
- BTH_ERROR_UNSUPPORTED_REMOTE_FEATURE
Context[BTHPORT_CONTEXT_SIZE]
Apenas para uso interno. Não use.
ClientContext[BTHPORT_CONTEXT_SIZE]
O contexto do cliente associado à chamada brb. O chamador pode usar esse membro para armazenar um ponteiro ou outras informações.
Reserved[BTHPORT_RESERVED_FIELD_SIZE]
Reservado para uso futuro. Não use.
Comentários
A estrutura BRB_HEADER contém tipos comuns de informações sobre o BRB especificado. A estrutura BRB_HEADER é usada por todas as estruturas brb usadas como o buffer de entrada para IOCTL_INTERNAL_BTH_SUBMIT_BRB Ioctls.
Os drivers de perfil não devem modificar nenhum dos membros da estrutura BRB_HEADER, exceto ClientContext.
Requisitos
Requisito | Valor |
---|---|
Cliente mínimo com suporte | Versões:_Supported no Windows Vista e posterior. |
Cabeçalho | bthddi.h (inclua Bthddi.h) |