BRB_HEADER 結構 (bthddi.h)
BRB_HEADER 結構包含藍牙要求區塊 (BRB) 的標頭資訊,包括藍牙驅動程式堆疊用來判斷要處理的 BRB 類型相關信息。
語法
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;
成員
ListEntry
BRB 目前擁有者用來將 BRB 放在佇列中的LIST_ENTRY結構。
Length
BRB 的大小,以位元組為單位,包括BRB_HEADER結構。 BthAllocateBrb、BthInitializeBrb 和 BthReuseBrb 函式會自動設定此成員。
Version
僅供內部使用。 請勿使用。
Type
藍牙要求區塊類型。 BthAllocateBrb、BthInitializeBrb 和 BthReuseBrb 函式會自動設定此成員。可能的值包括:
- 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
僅供內部使用。 請勿使用。
Status
BRB 呼叫完成時所傳遞的NTSTATUS程式碼。
BtStatus
藍牙狀態代碼 (BTSTATUS) 對應至 Status 成員中傳遞的NTSTATUS程式碼。 可能的值包括:
- 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]
僅供內部使用。 請勿使用。
ClientContext[BTHPORT_CONTEXT_SIZE]
與 BRB 呼叫相關聯的客戶端內容。 呼叫端可以使用這個成員來儲存指標或其他資訊。
Reserved[BTHPORT_RESERVED_FIELD_SIZE]
保留供未來使用。 請勿使用。
備註
BRB_HEADER 結構包含指定 BRB 的常見資訊類型。 BRB_HEADER結構是由做為輸入緩衝區的所有 BRB 結構使用 IOCTL_INTERNAL_BTH_SUBMIT_BRB IOCTLs。
除了 ClientContext 以外,配置檔驅動程式不應該修改BRB_HEADER結構的任何成員。
規格需求
需求 | 值 |
---|---|
最低支援的用戶端 | Windows Vista 和更新版本中的版本:_Supported。 |
標頭 | bthddi.h (包含 Bthddi.h) |