BRB_HEADER構造体 (bthddi.h)

BRB_HEADER構造体には、Bluetooth 要求ブロック (BRB) に関するヘッダー情報が含まれます。これには、処理する BRB の種類を決定するために Bluetooth ドライバー スタックが使用する 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_HEADER構造体を含む BRB のサイズ (バイト単位)。 BthAllocateBrbBthInitializeBrbおよび BthReuseBrb 関数は、このメンバーを自動的に設定します。

Version

内部使用専用です。 使用しないでください。

Type

Bluetooth 要求ブロックの種類。 BthAllocateBrbBthInitializeBrbおよび 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

Status メンバーで渡される NTSTATUS コードに対応する Bluetooth 状態 コード (BTSTATUS)。 次の値を指定できます。

  • 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 Ioctl。

プロファイル ドライバーは、 ClientContext を除き、BRB_HEADER構造体のメンバーを変更しないでください。

要件

要件
サポートされている最小のクライアント Windows Vista 以降のバージョン:_Supported。
Header bthddi.h (Bthddi.h を含む)

こちらもご覧ください

BthAllocateBrb

BthInitializeBrb

BthReuseBrb