Index: components/arc/common/bluetooth.mojom |
diff --git a/components/arc/common/bluetooth.mojom b/components/arc/common/bluetooth.mojom |
index edb607eed13e086cfe4d7d77562baad70b8c071d..40507da805671f7e8b6445c8fe8f5dc8137b6e18 100644 |
--- a/components/arc/common/bluetooth.mojom |
+++ b/components/arc/common/bluetooth.mojom |
@@ -225,6 +225,40 @@ struct BluetoothGattDBElement { |
uint8 properties; |
}; |
+// Bluetooth SDP types |
+[Extensible] |
+enum BluetoothSdpAttrType { |
+ NULLTYPE = 0, |
+ UINT, |
+ INT, |
+ UUID, |
+ STRING, |
+ BOOL, |
+ SEQUENCE, |
+ URL, |
+}; |
+ |
+struct BluetoothSdpServiceAttr { |
+ BluetoothSdpAttrType type; |
+ uint32 type_size; |
+ array<uint8> value; |
+ array<BluetoothSdpServiceAttr> sequence; |
+}; |
+ |
+struct BluetoothSdpRecord { |
+ map<uint16, BluetoothSdpServiceAttr> attrs; |
+}; |
+ |
+struct BluetoothGetSdpRecordsResult { |
+ BluetoothStatus status; |
+ array<BluetoothSdpRecord> records; |
+}; |
+ |
+struct BluetoothCreateSdpRecordResult { |
+ BluetoothStatus status; |
+ uint32 service_handle; |
+}; |
+ |
interface BluetoothHost { |
EnableAdapter@0() => (BluetoothAdapterState state); |
DisableAdapter@1() => (BluetoothAdapterState state); |
@@ -316,6 +350,14 @@ interface BluetoothHost { |
bool confirm, |
array<uint8> value) |
=> (BluetoothGattStatus status); |
+ |
+ // Bluetooth SDP functions |
+ [MinVersion=4] GetSdpRecords@37(BluetoothAddress remote_addr) |
+ => (BluetoothGetSdpRecordsResult result); |
+ [MinVersion=4] CreateSdpRecord@38(BluetoothSdpRecord record) |
+ => (BluetoothCreateSdpRecordResult result); |
+ [MinVersion=4] RemoveSdpRecord@39(uint32 service_handle) |
+ => (BluetoothStatus status); |
}; |
interface BluetoothInstance { |