Loading system/stack/include/l2cdefs.h +24 −20 Original line number Diff line number Diff line Loading @@ -178,26 +178,26 @@ enum class tL2CAP_CONN : uint16_t { inline std::string l2cap_result_code_text(const tL2CAP_CONN& result) { switch (result) { CASE_RETURN_TEXT(tL2CAP_CONN::L2CAP_CONN_OK); CASE_RETURN_TEXT(tL2CAP_CONN::L2CAP_CONN_PENDING); CASE_RETURN_TEXT(tL2CAP_CONN::L2CAP_CONN_NO_PSM); CASE_RETURN_TEXT(tL2CAP_CONN::L2CAP_CONN_SECURITY_BLOCK); CASE_RETURN_TEXT(tL2CAP_CONN::L2CAP_CONN_NO_RESOURCES); CASE_RETURN_TEXT(tL2CAP_CONN::L2CAP_CONN_TIMEOUT); CASE_RETURN_TEXT(tL2CAP_CONN::L2CAP_CONN_OTHER_ERROR); CASE_RETURN_TEXT(tL2CAP_CONN::L2CAP_CONN_ACL_CONNECTION_FAILED); CASE_RETURN_TEXT(tL2CAP_CONN::L2CAP_CONN_CLIENT_SECURITY_CLEARANCE_FAILED); CASE_RETURN_TEXT(tL2CAP_CONN::L2CAP_CONN_NO_LINK); CASE_RETURN_TEXT(tL2CAP_CONN::L2CAP_CONN_CANCEL); CASE_RETURN_TEXT(tL2CAP_CONN::L2CAP_CONN_INSUFFICIENT_AUTHENTICATION); CASE_RETURN_TEXT(tL2CAP_CONN::L2CAP_CONN_INSUFFICIENT_AUTHORIZATION); CASE_RETURN_TEXT(tL2CAP_CONN::L2CAP_CONN_INSUFFICIENT_ENCRYP_KEY_SIZE); CASE_RETURN_TEXT(tL2CAP_CONN::L2CAP_CONN_INSUFFICIENT_ENCRYP); CASE_RETURN_TEXT(tL2CAP_CONN::L2CAP_CONN_INVALID_SOURCE_CID); CASE_RETURN_TEXT(tL2CAP_CONN::L2CAP_CONN_SOURCE_CID_ALREADY_ALLOCATED); CASE_RETURN_TEXT(tL2CAP_CONN::L2CAP_CONN_UNACCEPTABLE_PARAMETERS); CASE_RETURN_TEXT(tL2CAP_CONN::L2CAP_CONN_INVALID_PARAMETERS); } CASE_RETURN_STRING_HEX04(tL2CAP_CONN::L2CAP_CONN_OK); CASE_RETURN_STRING_HEX04(tL2CAP_CONN::L2CAP_CONN_PENDING); CASE_RETURN_STRING_HEX04(tL2CAP_CONN::L2CAP_CONN_NO_PSM); CASE_RETURN_STRING_HEX04(tL2CAP_CONN::L2CAP_CONN_SECURITY_BLOCK); CASE_RETURN_STRING_HEX04(tL2CAP_CONN::L2CAP_CONN_NO_RESOURCES); CASE_RETURN_STRING_HEX04(tL2CAP_CONN::L2CAP_CONN_TIMEOUT); CASE_RETURN_STRING_HEX04(tL2CAP_CONN::L2CAP_CONN_OTHER_ERROR); CASE_RETURN_STRING_HEX04(tL2CAP_CONN::L2CAP_CONN_ACL_CONNECTION_FAILED); CASE_RETURN_STRING_HEX04(tL2CAP_CONN::L2CAP_CONN_CLIENT_SECURITY_CLEARANCE_FAILED); CASE_RETURN_STRING_HEX04(tL2CAP_CONN::L2CAP_CONN_NO_LINK); CASE_RETURN_STRING_HEX04(tL2CAP_CONN::L2CAP_CONN_CANCEL); CASE_RETURN_STRING_HEX04(tL2CAP_CONN::L2CAP_CONN_INSUFFICIENT_AUTHENTICATION); CASE_RETURN_STRING_HEX04(tL2CAP_CONN::L2CAP_CONN_INSUFFICIENT_AUTHORIZATION); CASE_RETURN_STRING_HEX04(tL2CAP_CONN::L2CAP_CONN_INSUFFICIENT_ENCRYP_KEY_SIZE); CASE_RETURN_STRING_HEX04(tL2CAP_CONN::L2CAP_CONN_INSUFFICIENT_ENCRYP); CASE_RETURN_STRING_HEX04(tL2CAP_CONN::L2CAP_CONN_INVALID_SOURCE_CID); CASE_RETURN_STRING_HEX04(tL2CAP_CONN::L2CAP_CONN_SOURCE_CID_ALREADY_ALLOCATED); CASE_RETURN_STRING_HEX04(tL2CAP_CONN::L2CAP_CONN_UNACCEPTABLE_PARAMETERS); CASE_RETURN_STRING_HEX04(tL2CAP_CONN::L2CAP_CONN_INVALID_PARAMETERS); }; RETURN_UNKNOWN_TYPE_STRING(tL2CAP_CONN, result); } Loading Loading @@ -275,6 +275,10 @@ inline tL2CAP_CONN to_l2cap_result_code(uint16_t result) { return static_cast<tL2CAP_CONN>(result); } inline std::string l2cap_result_code_text(uint16_t result) { return l2cap_result_code_text(to_l2cap_result_code(result)); } /* Credit based reconfig results code */ enum class tL2CAP_RECONFIG_RESULT : uint16_t { L2CAP_RECONFIG_SUCCEED = 0, Loading system/stack/test/stack_l2cap_test.cc +24 −19 Original line number Diff line number Diff line Loading @@ -212,38 +212,43 @@ TEST_F(StackL2capChannelTest, l2c_link_init) { TEST_F(StackL2capTest, l2cap_result_code_text) { std::vector<std::pair<tL2CAP_CONN, std::string>> results = { std::make_pair(tL2CAP_CONN::L2CAP_CONN_OK, "tL2CAP_CONN::L2CAP_CONN_OK"), std::make_pair(tL2CAP_CONN::L2CAP_CONN_PENDING, "tL2CAP_CONN::L2CAP_CONN_PENDING"), std::make_pair(tL2CAP_CONN::L2CAP_CONN_NO_PSM, "tL2CAP_CONN::L2CAP_CONN_NO_PSM"), std::make_pair(tL2CAP_CONN::L2CAP_CONN_OK, "tL2CAP_CONN::L2CAP_CONN_OK(0x0000)"), std::make_pair(tL2CAP_CONN::L2CAP_CONN_PENDING, "tL2CAP_CONN::L2CAP_CONN_PENDING(0x0001)"), std::make_pair(tL2CAP_CONN::L2CAP_CONN_NO_PSM, "tL2CAP_CONN::L2CAP_CONN_NO_PSM(0x0002)"), std::make_pair(tL2CAP_CONN::L2CAP_CONN_SECURITY_BLOCK, "tL2CAP_CONN::L2CAP_CONN_SECURITY_BLOCK"), "tL2CAP_CONN::L2CAP_CONN_SECURITY_BLOCK(0x0003)"), std::make_pair(tL2CAP_CONN::L2CAP_CONN_NO_RESOURCES, "tL2CAP_CONN::L2CAP_CONN_NO_RESOURCES"), std::make_pair(tL2CAP_CONN::L2CAP_CONN_TIMEOUT, "tL2CAP_CONN::L2CAP_CONN_TIMEOUT"), "tL2CAP_CONN::L2CAP_CONN_NO_RESOURCES(0x0004)"), std::make_pair(tL2CAP_CONN::L2CAP_CONN_TIMEOUT, "tL2CAP_CONN::L2CAP_CONN_TIMEOUT(0xeeee)"), std::make_pair(tL2CAP_CONN::L2CAP_CONN_OTHER_ERROR, "tL2CAP_CONN::L2CAP_CONN_OTHER_ERROR"), "tL2CAP_CONN::L2CAP_CONN_OTHER_ERROR(0xf000)"), std::make_pair(tL2CAP_CONN::L2CAP_CONN_ACL_CONNECTION_FAILED, "tL2CAP_CONN::L2CAP_CONN_ACL_CONNECTION_FAILED"), "tL2CAP_CONN::L2CAP_CONN_ACL_CONNECTION_FAILED(0xf001)"), std::make_pair(tL2CAP_CONN::L2CAP_CONN_CLIENT_SECURITY_CLEARANCE_FAILED, "tL2CAP_CONN::L2CAP_CONN_CLIENT_SECURITY_CLEARANCE_FAILED"), std::make_pair(tL2CAP_CONN::L2CAP_CONN_NO_LINK, "tL2CAP_CONN::L2CAP_CONN_NO_LINK"), std::make_pair(tL2CAP_CONN::L2CAP_CONN_CANCEL, "tL2CAP_CONN::L2CAP_CONN_CANCEL"), "tL2CAP_CONN::L2CAP_CONN_CLIENT_SECURITY_CLEARANCE_FAILED(0xf002)"), std::make_pair(tL2CAP_CONN::L2CAP_CONN_NO_LINK, "tL2CAP_CONN::L2CAP_CONN_NO_LINK(0xf003)"), std::make_pair(tL2CAP_CONN::L2CAP_CONN_CANCEL, "tL2CAP_CONN::L2CAP_CONN_CANCEL(0xf004)"), std::make_pair(tL2CAP_CONN::L2CAP_CONN_INSUFFICIENT_AUTHENTICATION, "tL2CAP_CONN::L2CAP_CONN_INSUFFICIENT_AUTHENTICATION"), "tL2CAP_CONN::L2CAP_CONN_INSUFFICIENT_AUTHENTICATION(0xff05)"), std::make_pair(tL2CAP_CONN::L2CAP_CONN_INSUFFICIENT_AUTHORIZATION, "tL2CAP_CONN::L2CAP_CONN_INSUFFICIENT_AUTHORIZATION"), "tL2CAP_CONN::L2CAP_CONN_INSUFFICIENT_AUTHORIZATION(0xff06)"), std::make_pair(tL2CAP_CONN::L2CAP_CONN_INSUFFICIENT_ENCRYP_KEY_SIZE, "tL2CAP_CONN::L2CAP_CONN_INSUFFICIENT_ENCRYP_KEY_SIZE"), "tL2CAP_CONN::L2CAP_CONN_INSUFFICIENT_ENCRYP_KEY_SIZE(0xff07)"), std::make_pair(tL2CAP_CONN::L2CAP_CONN_INSUFFICIENT_ENCRYP, "tL2CAP_CONN::L2CAP_CONN_INSUFFICIENT_ENCRYP"), "tL2CAP_CONN::L2CAP_CONN_INSUFFICIENT_ENCRYP(0xff08)"), std::make_pair(tL2CAP_CONN::L2CAP_CONN_INVALID_SOURCE_CID, "tL2CAP_CONN::L2CAP_CONN_INVALID_SOURCE_CID"), "tL2CAP_CONN::L2CAP_CONN_INVALID_SOURCE_CID(0xff09)"), std::make_pair(tL2CAP_CONN::L2CAP_CONN_SOURCE_CID_ALREADY_ALLOCATED, "tL2CAP_CONN::L2CAP_CONN_SOURCE_CID_ALREADY_ALLOCATED"), "tL2CAP_CONN::L2CAP_CONN_SOURCE_CID_ALREADY_ALLOCATED(0xff0a)"), std::make_pair(tL2CAP_CONN::L2CAP_CONN_UNACCEPTABLE_PARAMETERS, "tL2CAP_CONN::L2CAP_CONN_UNACCEPTABLE_PARAMETERS"), "tL2CAP_CONN::L2CAP_CONN_UNACCEPTABLE_PARAMETERS(0xff0b)"), std::make_pair(tL2CAP_CONN::L2CAP_CONN_INVALID_PARAMETERS, "tL2CAP_CONN::L2CAP_CONN_INVALID_PARAMETERS"), "tL2CAP_CONN::L2CAP_CONN_INVALID_PARAMETERS(0xff0c)"), }; for (const auto& result : results) { ASSERT_STREQ(result.second.c_str(), l2cap_result_code_text(result.first).c_str()); Loading Loading
system/stack/include/l2cdefs.h +24 −20 Original line number Diff line number Diff line Loading @@ -178,26 +178,26 @@ enum class tL2CAP_CONN : uint16_t { inline std::string l2cap_result_code_text(const tL2CAP_CONN& result) { switch (result) { CASE_RETURN_TEXT(tL2CAP_CONN::L2CAP_CONN_OK); CASE_RETURN_TEXT(tL2CAP_CONN::L2CAP_CONN_PENDING); CASE_RETURN_TEXT(tL2CAP_CONN::L2CAP_CONN_NO_PSM); CASE_RETURN_TEXT(tL2CAP_CONN::L2CAP_CONN_SECURITY_BLOCK); CASE_RETURN_TEXT(tL2CAP_CONN::L2CAP_CONN_NO_RESOURCES); CASE_RETURN_TEXT(tL2CAP_CONN::L2CAP_CONN_TIMEOUT); CASE_RETURN_TEXT(tL2CAP_CONN::L2CAP_CONN_OTHER_ERROR); CASE_RETURN_TEXT(tL2CAP_CONN::L2CAP_CONN_ACL_CONNECTION_FAILED); CASE_RETURN_TEXT(tL2CAP_CONN::L2CAP_CONN_CLIENT_SECURITY_CLEARANCE_FAILED); CASE_RETURN_TEXT(tL2CAP_CONN::L2CAP_CONN_NO_LINK); CASE_RETURN_TEXT(tL2CAP_CONN::L2CAP_CONN_CANCEL); CASE_RETURN_TEXT(tL2CAP_CONN::L2CAP_CONN_INSUFFICIENT_AUTHENTICATION); CASE_RETURN_TEXT(tL2CAP_CONN::L2CAP_CONN_INSUFFICIENT_AUTHORIZATION); CASE_RETURN_TEXT(tL2CAP_CONN::L2CAP_CONN_INSUFFICIENT_ENCRYP_KEY_SIZE); CASE_RETURN_TEXT(tL2CAP_CONN::L2CAP_CONN_INSUFFICIENT_ENCRYP); CASE_RETURN_TEXT(tL2CAP_CONN::L2CAP_CONN_INVALID_SOURCE_CID); CASE_RETURN_TEXT(tL2CAP_CONN::L2CAP_CONN_SOURCE_CID_ALREADY_ALLOCATED); CASE_RETURN_TEXT(tL2CAP_CONN::L2CAP_CONN_UNACCEPTABLE_PARAMETERS); CASE_RETURN_TEXT(tL2CAP_CONN::L2CAP_CONN_INVALID_PARAMETERS); } CASE_RETURN_STRING_HEX04(tL2CAP_CONN::L2CAP_CONN_OK); CASE_RETURN_STRING_HEX04(tL2CAP_CONN::L2CAP_CONN_PENDING); CASE_RETURN_STRING_HEX04(tL2CAP_CONN::L2CAP_CONN_NO_PSM); CASE_RETURN_STRING_HEX04(tL2CAP_CONN::L2CAP_CONN_SECURITY_BLOCK); CASE_RETURN_STRING_HEX04(tL2CAP_CONN::L2CAP_CONN_NO_RESOURCES); CASE_RETURN_STRING_HEX04(tL2CAP_CONN::L2CAP_CONN_TIMEOUT); CASE_RETURN_STRING_HEX04(tL2CAP_CONN::L2CAP_CONN_OTHER_ERROR); CASE_RETURN_STRING_HEX04(tL2CAP_CONN::L2CAP_CONN_ACL_CONNECTION_FAILED); CASE_RETURN_STRING_HEX04(tL2CAP_CONN::L2CAP_CONN_CLIENT_SECURITY_CLEARANCE_FAILED); CASE_RETURN_STRING_HEX04(tL2CAP_CONN::L2CAP_CONN_NO_LINK); CASE_RETURN_STRING_HEX04(tL2CAP_CONN::L2CAP_CONN_CANCEL); CASE_RETURN_STRING_HEX04(tL2CAP_CONN::L2CAP_CONN_INSUFFICIENT_AUTHENTICATION); CASE_RETURN_STRING_HEX04(tL2CAP_CONN::L2CAP_CONN_INSUFFICIENT_AUTHORIZATION); CASE_RETURN_STRING_HEX04(tL2CAP_CONN::L2CAP_CONN_INSUFFICIENT_ENCRYP_KEY_SIZE); CASE_RETURN_STRING_HEX04(tL2CAP_CONN::L2CAP_CONN_INSUFFICIENT_ENCRYP); CASE_RETURN_STRING_HEX04(tL2CAP_CONN::L2CAP_CONN_INVALID_SOURCE_CID); CASE_RETURN_STRING_HEX04(tL2CAP_CONN::L2CAP_CONN_SOURCE_CID_ALREADY_ALLOCATED); CASE_RETURN_STRING_HEX04(tL2CAP_CONN::L2CAP_CONN_UNACCEPTABLE_PARAMETERS); CASE_RETURN_STRING_HEX04(tL2CAP_CONN::L2CAP_CONN_INVALID_PARAMETERS); }; RETURN_UNKNOWN_TYPE_STRING(tL2CAP_CONN, result); } Loading Loading @@ -275,6 +275,10 @@ inline tL2CAP_CONN to_l2cap_result_code(uint16_t result) { return static_cast<tL2CAP_CONN>(result); } inline std::string l2cap_result_code_text(uint16_t result) { return l2cap_result_code_text(to_l2cap_result_code(result)); } /* Credit based reconfig results code */ enum class tL2CAP_RECONFIG_RESULT : uint16_t { L2CAP_RECONFIG_SUCCEED = 0, Loading
system/stack/test/stack_l2cap_test.cc +24 −19 Original line number Diff line number Diff line Loading @@ -212,38 +212,43 @@ TEST_F(StackL2capChannelTest, l2c_link_init) { TEST_F(StackL2capTest, l2cap_result_code_text) { std::vector<std::pair<tL2CAP_CONN, std::string>> results = { std::make_pair(tL2CAP_CONN::L2CAP_CONN_OK, "tL2CAP_CONN::L2CAP_CONN_OK"), std::make_pair(tL2CAP_CONN::L2CAP_CONN_PENDING, "tL2CAP_CONN::L2CAP_CONN_PENDING"), std::make_pair(tL2CAP_CONN::L2CAP_CONN_NO_PSM, "tL2CAP_CONN::L2CAP_CONN_NO_PSM"), std::make_pair(tL2CAP_CONN::L2CAP_CONN_OK, "tL2CAP_CONN::L2CAP_CONN_OK(0x0000)"), std::make_pair(tL2CAP_CONN::L2CAP_CONN_PENDING, "tL2CAP_CONN::L2CAP_CONN_PENDING(0x0001)"), std::make_pair(tL2CAP_CONN::L2CAP_CONN_NO_PSM, "tL2CAP_CONN::L2CAP_CONN_NO_PSM(0x0002)"), std::make_pair(tL2CAP_CONN::L2CAP_CONN_SECURITY_BLOCK, "tL2CAP_CONN::L2CAP_CONN_SECURITY_BLOCK"), "tL2CAP_CONN::L2CAP_CONN_SECURITY_BLOCK(0x0003)"), std::make_pair(tL2CAP_CONN::L2CAP_CONN_NO_RESOURCES, "tL2CAP_CONN::L2CAP_CONN_NO_RESOURCES"), std::make_pair(tL2CAP_CONN::L2CAP_CONN_TIMEOUT, "tL2CAP_CONN::L2CAP_CONN_TIMEOUT"), "tL2CAP_CONN::L2CAP_CONN_NO_RESOURCES(0x0004)"), std::make_pair(tL2CAP_CONN::L2CAP_CONN_TIMEOUT, "tL2CAP_CONN::L2CAP_CONN_TIMEOUT(0xeeee)"), std::make_pair(tL2CAP_CONN::L2CAP_CONN_OTHER_ERROR, "tL2CAP_CONN::L2CAP_CONN_OTHER_ERROR"), "tL2CAP_CONN::L2CAP_CONN_OTHER_ERROR(0xf000)"), std::make_pair(tL2CAP_CONN::L2CAP_CONN_ACL_CONNECTION_FAILED, "tL2CAP_CONN::L2CAP_CONN_ACL_CONNECTION_FAILED"), "tL2CAP_CONN::L2CAP_CONN_ACL_CONNECTION_FAILED(0xf001)"), std::make_pair(tL2CAP_CONN::L2CAP_CONN_CLIENT_SECURITY_CLEARANCE_FAILED, "tL2CAP_CONN::L2CAP_CONN_CLIENT_SECURITY_CLEARANCE_FAILED"), std::make_pair(tL2CAP_CONN::L2CAP_CONN_NO_LINK, "tL2CAP_CONN::L2CAP_CONN_NO_LINK"), std::make_pair(tL2CAP_CONN::L2CAP_CONN_CANCEL, "tL2CAP_CONN::L2CAP_CONN_CANCEL"), "tL2CAP_CONN::L2CAP_CONN_CLIENT_SECURITY_CLEARANCE_FAILED(0xf002)"), std::make_pair(tL2CAP_CONN::L2CAP_CONN_NO_LINK, "tL2CAP_CONN::L2CAP_CONN_NO_LINK(0xf003)"), std::make_pair(tL2CAP_CONN::L2CAP_CONN_CANCEL, "tL2CAP_CONN::L2CAP_CONN_CANCEL(0xf004)"), std::make_pair(tL2CAP_CONN::L2CAP_CONN_INSUFFICIENT_AUTHENTICATION, "tL2CAP_CONN::L2CAP_CONN_INSUFFICIENT_AUTHENTICATION"), "tL2CAP_CONN::L2CAP_CONN_INSUFFICIENT_AUTHENTICATION(0xff05)"), std::make_pair(tL2CAP_CONN::L2CAP_CONN_INSUFFICIENT_AUTHORIZATION, "tL2CAP_CONN::L2CAP_CONN_INSUFFICIENT_AUTHORIZATION"), "tL2CAP_CONN::L2CAP_CONN_INSUFFICIENT_AUTHORIZATION(0xff06)"), std::make_pair(tL2CAP_CONN::L2CAP_CONN_INSUFFICIENT_ENCRYP_KEY_SIZE, "tL2CAP_CONN::L2CAP_CONN_INSUFFICIENT_ENCRYP_KEY_SIZE"), "tL2CAP_CONN::L2CAP_CONN_INSUFFICIENT_ENCRYP_KEY_SIZE(0xff07)"), std::make_pair(tL2CAP_CONN::L2CAP_CONN_INSUFFICIENT_ENCRYP, "tL2CAP_CONN::L2CAP_CONN_INSUFFICIENT_ENCRYP"), "tL2CAP_CONN::L2CAP_CONN_INSUFFICIENT_ENCRYP(0xff08)"), std::make_pair(tL2CAP_CONN::L2CAP_CONN_INVALID_SOURCE_CID, "tL2CAP_CONN::L2CAP_CONN_INVALID_SOURCE_CID"), "tL2CAP_CONN::L2CAP_CONN_INVALID_SOURCE_CID(0xff09)"), std::make_pair(tL2CAP_CONN::L2CAP_CONN_SOURCE_CID_ALREADY_ALLOCATED, "tL2CAP_CONN::L2CAP_CONN_SOURCE_CID_ALREADY_ALLOCATED"), "tL2CAP_CONN::L2CAP_CONN_SOURCE_CID_ALREADY_ALLOCATED(0xff0a)"), std::make_pair(tL2CAP_CONN::L2CAP_CONN_UNACCEPTABLE_PARAMETERS, "tL2CAP_CONN::L2CAP_CONN_UNACCEPTABLE_PARAMETERS"), "tL2CAP_CONN::L2CAP_CONN_UNACCEPTABLE_PARAMETERS(0xff0b)"), std::make_pair(tL2CAP_CONN::L2CAP_CONN_INVALID_PARAMETERS, "tL2CAP_CONN::L2CAP_CONN_INVALID_PARAMETERS"), "tL2CAP_CONN::L2CAP_CONN_INVALID_PARAMETERS(0xff0c)"), }; for (const auto& result : results) { ASSERT_STREQ(result.second.c_str(), l2cap_result_code_text(result.first).c_str()); Loading