BRB_REGISTER_PSM
Profile drivers use the BRB_REGISTER_PSM request to register a Protocol/Service Multiplexer (PSM). For more information about registering a PSM, see Accepting L2CAP Connections in a Bluetooth Profile Driver.
Input Parameters
The IRP's Parameters->Others.Argument1 member points to a _BRB_PSM structure.
Output Parameters
The IRP's Parameters->Others.Argument1 member points to the same _BRB_PSM structure passed as input.
I/O Status Block
If the request is successful, the Information member of the STATUS_BLOCK structure is set to the size, in bytes, of the output buffer. Otherwise, the Information member is set to zero.
The Status member is set to one of the values in the following table.
Status value | Description |
---|---|
STATUS_SUCCESS |
The BRB completed successfully. |
STATUS_INVALID_PARAMETER |
The profile driver passed an invalid parameter. |
STATUS_INVALID_PARAMETER_1 |
The specified PSM is not in the dynamic range. |
STATUS_ALREADY_COMMITTED |
The specified PSM is not in the dynamic range. |
STATUS_INSUFFICIENT_RESOURCES |
There were insufficient resources to process the BRB. |
STATUS_CONNECTION_IN_USE |
The profile driver is attempting to unregister a PSM that is currently in use. |
Operation
Profile drivers use the BRB_REGISTER_PSM request to register a Protocol/Service Multiplexer (PSM). For more information about registering a PSM, see Accepting L2CAP Connections in a Bluetooth Profile Driver.
Some PSMs are reserved for use by Windows:
SDP: 0x01
RFCOMM: 0x03
HID Control: 0x11
HID Data: 0x13
BNEP: 0x0F
Requirements
Version |
Versions: Supported in Windows Vista, and later. |
Header |
BthDdi.h (include BthDdi.h) |
IRQL |
<= PASSIVE_LEVEL |
See also