blob: b9899e67be54426c2e06a93ceaf6470131ab9388 [file] [log] [blame]
syntax = "proto3";
package bluetooth.hci;
import "google/protobuf/empty.proto";
import "facade/common.proto";
service AclManagerFacade {
rpc SetPageScanMode(PageScanMode) returns (google.protobuf.Empty) {}
rpc Connect(facade.BluetoothAddress) returns (google.protobuf.Empty) {}
rpc Disconnect(facade.BluetoothAddress) returns (google.protobuf.Empty) {}
rpc AuthenticationRequested(facade.BluetoothAddress) returns (google.protobuf.Empty) {}
rpc FetchConnectionComplete(facade.EventStreamRequest) returns (stream ConnectionEvent) {}
rpc FetchDisconnection(facade.EventStreamRequest) returns (stream DisconnectionEvent) {}
rpc FetchConnectionFailed(facade.EventStreamRequest) returns (stream ConnectionFailedEvent) {}
rpc SendAclData(AclData) returns (google.protobuf.Empty) {}
rpc FetchAclData(facade.EventStreamRequest) returns (stream AclData) {}
rpc TestInternalHciCommands(google.protobuf.Empty) returns (google.protobuf.Empty) {}
rpc TestInternalHciLeCommands(google.protobuf.Empty) returns (google.protobuf.Empty) {}
rpc TestClassicConnectionManagementCommands(facade.BluetoothAddress) returns (google.protobuf.Empty) {}
}
message PageScanMode {
bool enabled = 1;
}
message ConnectionEvent {
facade.BluetoothAddress remote = 1;
uint32 connection_handle = 2;
}
message DisconnectionEvent {
facade.BluetoothAddress remote = 1;
uint32 reason = 2;
}
message ConnectionFailedEvent {
facade.BluetoothAddress remote = 1;
uint32 reason = 2;
}
message AclData {
facade.BluetoothAddress remote = 1;
bytes payload = 2;
}
service ClassicPairingFacade {
rpc SetPairingMode(PairingMode) returns (google.protobuf.Empty) {}
rpc DeletePairing(DeletePairingRequest) returns (google.protobuf.Empty) {}
}
message PairingMode {
bool enabled = 1;
}
message DeletePairingRequest {
bool deleteAll = 1;
facade.BluetoothAddress remote = 2;
}
service ClassicSecurityManagerFacade {
rpc LinkKeyRequestReply(LinkKeyRequestReplyMessage) returns (google.protobuf.Empty) {}
rpc LinkKeyRequestNegativeReply(facade.BluetoothAddress) returns (google.protobuf.Empty) {}
rpc PinCodeRequestReply(PinCodeRequestReplyMessage) returns (google.protobuf.Empty) {}
rpc PinCodeRequestNegativeReply(facade.BluetoothAddress) returns (google.protobuf.Empty) {}
rpc IoCapabilityRequestReply(IoCapabilityRequestReplyMessage) returns (google.protobuf.Empty) {}
rpc IoCapabilityRequestNegativeReply(IoCapabilityRequestNegativeReplyMessage) returns (google.protobuf.Empty) {}
rpc UserConfirmationRequestReply(facade.BluetoothAddress) returns (google.protobuf.Empty) {}
rpc UserConfirmationRequestNegativeReply(facade.BluetoothAddress) returns (google.protobuf.Empty) {}
rpc UserPasskeyRequestReply(UserPasskeyRequestReplyMessage) returns (google.protobuf.Empty) {}
rpc UserPasskeyRequestNegativeReply(facade.BluetoothAddress) returns (google.protobuf.Empty) {}
rpc RemoteOobDataRequestReply(RemoteOobDataRequestReplyMessage) returns (google.protobuf.Empty) {}
rpc RemoteOobDataRequestNegativeReply(facade.BluetoothAddress) returns (google.protobuf.Empty) {}
rpc ReadStoredLinkKey(ReadStoredLinkKeyMessage) returns (google.protobuf.Empty) {}
rpc WriteStoredLinkKey(WriteStoredLinkKeyMessage) returns (google.protobuf.Empty) {}
rpc DeleteStoredLinkKey(DeleteStoredLinkKeyMessage) returns (google.protobuf.Empty) {}
rpc RefreshEncryptionKey(RefreshEncryptionKeyMessage) returns (google.protobuf.Empty) {}
rpc ReadSimplePairingMode(google.protobuf.Empty) returns (google.protobuf.Empty) {}
rpc WriteSimplePairingMode(WriteSimplePairingModeMessage) returns (google.protobuf.Empty) {}
rpc ReadLocalOobData(google.protobuf.Empty) returns (google.protobuf.Empty) {}
rpc SendKeypressNotification(SendKeypressNotificationMessage) returns (google.protobuf.Empty) {}
rpc ReadLocalOobExtendedData(google.protobuf.Empty) returns (google.protobuf.Empty) {}
rpc ReadEncryptionKeySize(ReadEncryptionKeySizeMessage) returns (google.protobuf.Empty) {}
rpc FetchCommandCompleteEvent(facade.EventStreamRequest) returns (stream CommandCompleteEvent) {}
}
message CommandCompleteEvent {
uint32 command_opcode = 1;
}
message LinkKeyRequestReplyMessage {
facade.BluetoothAddress remote = 1;
bytes link_key = 2;
}
message PinCodeRequestReplyMessage {
facade.BluetoothAddress remote = 1;
uint32 len = 2;
bytes pin_code = 3;
}
message IoCapabilityRequestReplyMessage {
facade.BluetoothAddress remote = 1;
uint32 io_capability = 2;
uint32 oob_present = 3;
uint32 authentication_requirements = 4;
}
message IoCapabilityRequestNegativeReplyMessage {
facade.BluetoothAddress remote = 1;
uint32 reason = 2;
}
message UserPasskeyRequestReplyMessage {
facade.BluetoothAddress remote = 1;
uint32 passkey = 2;
}
message RemoteOobDataRequestReplyMessage {
facade.BluetoothAddress remote = 1;
bytes c = 2;
bytes r = 3;
}
message ReadStoredLinkKeyMessage {
facade.BluetoothAddress remote = 1;
uint32 read_all_flag = 2;
}
message WriteStoredLinkKeyMessage {
uint32 num_keys_to_write = 1;
facade.BluetoothAddress remote = 2;
bytes link_keys = 3;
}
message DeleteStoredLinkKeyMessage {
facade.BluetoothAddress remote = 1;
uint32 delete_all_flag = 2;
}
message RefreshEncryptionKeyMessage {
uint32 connection_handle = 1;
}
message WriteSimplePairingModeMessage {
uint32 simple_pairing_mode = 1;
}
message SendKeypressNotificationMessage {
facade.BluetoothAddress remote = 1;
uint32 notification_type = 2;
}
message ReadEncryptionKeySizeMessage {
uint32 connection_handle = 1;
}