android13/packages/modules/Bluetooth/tools/rootcanal/lmp/test/SP/BV-05-C.in

107 lines
3.3 KiB
Plaintext

sequence! { procedure, context,
// ACL Connection Established
Upper Tester -> IUT: AuthenticationRequested {
connection_handle: context.peer_handle()
}
IUT -> Upper Tester: AuthenticationRequestedStatus {
num_hci_command_packets: 1,
status: ErrorCode::Success,
}
IUT -> Upper Tester: LinkKeyRequest {
bd_addr: context.peer_address(),
}
Upper Tester -> IUT: LinkKeyRequestNegativeReply {
bd_addr: context.peer_address(),
}
IUT -> Upper Tester: LinkKeyRequestNegativeReplyComplete {
num_hci_command_packets: 1,
status: ErrorCode::Success,
bd_addr: context.peer_address(),
}
IUT -> Upper Tester: IoCapabilityRequest {
bd_addr: context.peer_address(),
}
Upper Tester -> IUT: IoCapabilityRequestReply {
bd_addr: context.peer_address(),
io_capability: IoCapability::DisplayYesNo,
oob_present: OobDataPresent::NotPresent,
authentication_requirements: AuthenticationRequirements::NoBondingMitmProtection,
}
IUT -> Upper Tester: IoCapabilityRequestReplyComplete {
num_hci_command_packets: 1,
status: ErrorCode::Success,
bd_addr: context.peer_address(),
}
IUT -> Lower Tester: IoCapabilityReq {
transaction_id: 0,
io_capabilities: 0x01,
oob_authentication_data: 0x00,
authentication_requirement: 0x01,
}
Lower Tester -> IUT: NotAcceptedExt {
transaction_id: 0,
not_accepted_opcode: ExtendedOpcode::IoCapabilityReq,
error_code: 0x37,
}
IUT -> Upper Tester: SimplePairingComplete {
status: ErrorCode::AuthenticationFailure,
bd_addr: context.peer_address(),
}
IUT -> Upper Tester: PinCodeRequest {
bd_addr: context.peer_address(),
}
IUT -> Upper Tester: PinCodeRequestReply {
bd_addr: context.peer_address(),
pin_code_length: 1,
pin_code: "0".as_bytes(),
}
IUT -> Upper Tester: PinCodeRequestReplyComplete {
num_hci_command_packets: 1,
status: ErrorCode::Success,
bd_addr: context.peer_address(),
}
IUT -> Lower Tester: InRand {
transaction_id: 0,
random_number: [0; 16],
}
Lower Tester -> IUT: Accepted {
transaction_id: 0,
accepted_opcode: Opcode::InRand,
}
IUT -> Lower Tester: CombKey {
transaction_id: 0,
random_number: [0; 16],
}
Lower Tester -> IUT: CombKey {
transaction_id: 0,
random_number: [0; 16],
}
// TODO: It's also valid to send it just
// before AuthenticationComplete
IUT -> Upper Tester: LinkKeyNotification {
bd_addr: context.peer_address(),
key_type: KeyType::AuthenticatedP192,
link_key: [0; 16],
}
IUT -> Lower Tester: AuRand {
transaction_id: 0,
random_number: [0; 16],
}
Lower Tester -> IUT: Sres {
transaction_id: 0,
authentication_rsp: [0; 4],
}
Lower Tester -> IUT: AuRand {
transaction_id: 0,
random_number: [0; 16],
}
IUT -> Lower Tester: Sres {
transaction_id: 0,
authentication_rsp: [0; 4],
}
IUT -> Upper Tester: AuthenticationComplete {
status: ErrorCode::Success,
connection_handle: context.peer_handle(),
}
}