[PATCH BlueZ v2 2/3] doc/hci-protocol: Add BT_RECV_VENDOR_PKT socket option for HCI_CHANNEL_USER

From: Zijun Hu

Date: Mon Aug 31 2026 - 01:40:48 EST


BT_RECV_VENDOR_PKT controls receiving vendor HCI packets over
HCI_CHANNEL_USER.

Disabled by default to avoid regressions for existing applications.

---
Changes since previous version:
- Rename BT_RCV_VENDOR_PKT to BT_RECV_VENDOR_PKT
- Change @enable type from int to uint32_t
- Improve the commit title and message
---
doc/hci-protocol.rst | 18 ++++++++++++++++++
1 file changed, 18 insertions(+)

diff --git a/doc/hci-protocol.rst b/doc/hci-protocol.rst
index db10b35df736..3cb5ce09bb2d 100644
--- a/doc/hci-protocol.rst
+++ b/doc/hci-protocol.rst
@@ -131,16 +131,34 @@ Example:

uint16_t mtu;
socklen_t len;
int err;

len = sizeof(mtu);
err = getsockopt(sock, SOL_BLUETOOTH, BT_RCVMTU, &mtu, &len);

+BT_RECV_VENDOR_PKT (since Linux 7.3)
+------------------------------------
+
+Control receiving vendor HCI packets, requires hci_channel to be set to
+HCI_CHANNEL_USER.
+
+Default is disabled.
+
+Example:
+
+.. code-block::
+
+ uint32_t enable = 1;
+ int err;
+
+ err = setsockopt(fd, SOL_BLUETOOTH, BT_RECV_VENDOR_PKT, &enable,
+ sizeof(enable));
+
RESOURCES
=========

http://www.bluez.org

REPORTING BUGS
==============


--
2.34.1