From: saerome kim Date: Fri, 17 Feb 2017 02:02:15 +0000 (+0900) Subject: Add helper API to display ZDO error string X-Git-Tag: submit/tizen/20170512.045637~30 X-Git-Url: http://review.tizen.org/git/?a=commitdiff_plain;h=d40792b2426857320bc92a2dcb8633049ea2aff9;p=platform%2Fcore%2Fapi%2Fzigbee.git Add helper API to display ZDO error string Change-Id: I24376c3921d26168b934c2d8fcce389e030b8448 Signed-off-by: saerome kim --- diff --git a/include/zb-zdo.h b/include/zb-zdo.h index d1fbd2e..f4b054a 100644 --- a/include/zb-zdo.h +++ b/include/zb-zdo.h @@ -42,6 +42,18 @@ #include #include +/** + * @brief Return readabble ZDO error code + * @details Return ZDO error code string + * + * @since_tizen 3.0 + * + * @param[in] id ZDO id + * + * @return pointer of error message id string + * + */ +const char* zb_zdo_get_error_message(int id); /** * @brief Return readabble Zigbee profile id diff --git a/lib/zbl-zdo.c b/lib/zbl-zdo.c index bffaa2b..924d55e 100644 --- a/lib/zbl-zdo.c +++ b/lib/zbl-zdo.c @@ -29,6 +29,29 @@ #define CASE_TO_STR(x) case x: return #x; +API const char* zb_zdo_get_error_message(int id) +{ + switch(id) { + CASE_TO_STR(ZB_ZDP_SUCCESS) + CASE_TO_STR(ZB_ZDP_INV_REQUESTTYPE) + CASE_TO_STR(ZB_ZDP_DEVICE_NOT_FOUND) + CASE_TO_STR(ZB_ZDP_INVALID_EP) + CASE_TO_STR(ZB_ZDP_NOT_ACTIVE) + CASE_TO_STR(ZB_ZDP_NOT_SUPPORTED) + CASE_TO_STR(ZB_ZDP_TIMEOUT) + CASE_TO_STR(ZB_ZDP_NO_MATCH) + CASE_TO_STR(ZB_ZDP_NO_ENTRY) + CASE_TO_STR(ZB_ZDP_NO_DESCRIPTOR) + CASE_TO_STR(ZB_ZDP_INSUFFICIENT_SPACE) + CASE_TO_STR(ZB_ZDP_NOT_PERMITED) + CASE_TO_STR(ZB_ZDP_TABLE_FULL) + CASE_TO_STR(ZB_ZDP_NOT_AUTHORIZED) + CASE_TO_STR(ZB_ZDP_DEVICE_BINDING_TABLE_FULL) + default: + return "ZB_ZDP_UNKNOWN"; + } +} + API const char* zb_get_profile_id_string(int profile_id) { switch(profile_id) { diff --git a/test/zdo-binding.c b/test/zdo-binding.c index 6651cb9..0544bea 100644 --- a/test/zdo-binding.c +++ b/test/zdo-binding.c @@ -47,7 +47,7 @@ static char data_cluster_id[MENU_DATA_SIZE + 1] = "6"; static void zigbee_zdo_bind_unbind_rsp(unsigned char status, void *user_data) { msg(""); - msgp("zigbee_zdo_bind_unbind_rsp() status = 0x%02X", status); + msgp("zigbee_zdo_bind_unbind_rsp() status = 0x%02X (%s)", status, zb_zdo_get_error_message(status)); } static int run_bind_req(MManager *mm, struct menu_data *menu) diff --git a/test/zdo-device.c b/test/zdo-device.c index 97b7c32..b1c9f28 100644 --- a/test/zdo-device.c +++ b/test/zdo-device.c @@ -52,7 +52,7 @@ static void zigbee_addr_rsp(unsigned char status, ieee_addr addr64, nwk_addr add *assoc_dev_addr_list, void *user_data) { msg(""); - msgp("zb_zdo_addr_rsp() status = 0x%02X", status); + msgp("zb_zdo_addr_rsp() status = 0x%02X (%s)", status, zb_zdo_get_error_message(status)); if (addr64) { msg("IEEE Address : %02X:%02X:%02X:%02X:%02X:%02X:%02X:%02X:", addr64[0], addr64[1], addr64[2], addr64[3], @@ -67,8 +67,12 @@ static void zigbee_addr_rsp(unsigned char status, ieee_addr addr64, nwk_addr add static void zigbee_active_ep_rsp(unsigned char status, nwk_addr addr16, unsigned char count, unsigned char *ep_list, void *user_data) { + int i; msg(""); - msgp("zb_zdo_active_ep_rsp() status = 0x%02X", status); + msg("count = 0x%02X", count); + for (i = 0; i < count; i++) + msg("EP = 0x%02X", ep_list[i]); + msgp("zb_zdo_active_ep_rsp() status = 0x%02X (%s)", status, zb_zdo_get_error_message(status)); } static void zigbee_simple_desc_rsp(nwk_addr addr16, unsigned char len, @@ -141,7 +145,7 @@ static void zigbee_match_desc_rsp(unsigned char status, nwk_addr addr16, { unsigned char i; msg(""); - msgp("zb_zdo_match_desc_rsp()"); + msgp("zb_zdo_match_desc_rsp() status = 0x%02X (%s)", status, zb_zdo_get_error_message(status)); msg(" nwk_addr = 0x%04X status = 0x%02X match_length = %d", addr16, status, match_length); @@ -159,7 +163,7 @@ static void zigbee_zdo_power_desc_rsp(unsigned char status, nwk_addr addr16, unsigned char current_power_source_lv; msg(""); - msgp("zb_zdo_power_desc_rsp() status = 0x%02X", status); + msgp("zb_zdo_power_desc_rsp() status = 0x%02X (%s)", status, zb_zdo_get_error_message(status)); zb_node_power_desc_get_current_power_mode(power_desc, ¤t_power_mode); msg(" current_power_mode = %02X", current_power_mode); @@ -175,22 +179,22 @@ static void zigbee_zdo_complex_desc_rsp(unsigned char status, nwk_addr addr16, unsigned char length, unsigned char *complex_desc, void *user_data) { msg(""); - msgp("zb_zdo_complex_desc_rsp() status = 0x%02X length = %d", - status, length); + msgp("zb_zdo_complex_desc_rsp() status = 0x%02X (%s) length = %d", + status, zb_zdo_get_error_message(status), length); } static void zigbee_zdo_user_desc_rsp(unsigned char status, nwk_addr addr16, unsigned char length, unsigned char *user_desc, void *user_data) { msg(""); - msgp("zb_zdo_user_desc_rsp() status = 0x%02X length = %d", - status, length); + msgp("zb_zdo_user_desc_rsp() status = 0x%02X (%s) length = %d", + status, zb_zdo_get_error_message(status), length); } static void zigbee_zdo_user_desc_conf(unsigned char status, void *user_data) { msg(""); - msgp("zb_zdo_user_desc_conf() status = 0x%02X", status); + msgp("zb_zdo_user_desc_conf() status = 0x%02X (%s)", status, zb_zdo_get_error_message(status)); } static void zigbee_zdo_node_desc_rsp(unsigned char status, nwk_addr addr16, @@ -211,7 +215,7 @@ static void zigbee_zdo_node_desc_rsp(unsigned char status, nwk_addr addr16, msg(""); msgp("zb_zdo_node_desc_rsp()"); - msgp(" nwk_addr = 0x%04X status = 0x%02X", addr16, status); + msgp(" nwk_addr = 0x%04X status = 0x%02X (%s)", addr16, status, zb_zdo_get_error_message(status)); zb_node_desc_get_logical_type(desc, &logical_type); msg(" logical_type = 0x%02X", logical_type); diff --git a/test/zdo-network.c b/test/zdo-network.c index ef1680d..20f8d94 100644 --- a/test/zdo-network.c +++ b/test/zdo-network.c @@ -56,7 +56,7 @@ static void zigbee_zdo_mgmt_nwk_disc_rsp(unsigned char status, unsigned char permit_joining; msg(""); - msgp("zb_zdo_mgmt_nwk_disc_rsp() status = 0x%02X", status); + msgp("zb_zdo_mgmt_nwk_disc_rsp() status = 0x%02X (%s)", status, zb_zdo_get_error_message(status)); if (!status) { msg(" network_count 0x%02X", network_count); @@ -105,7 +105,8 @@ static void zigbee_zdo_mgmt_lqi_rsp(unsigned char status, msg(""); msgp("zb_zdo_mgmt_lqi_rsp()"); - msgp(" status = 0x%02X start_idx=%d count=%d", status, start_idx, neighbor_table_list_count); + msgp(" status = 0x%02X (%s) start_idx=%d count=%d", status, + zb_zdo_get_error_message(status), start_idx, neighbor_table_list_count); for (i = start_idx; i < neighbor_table_list_count; i++) { zb_neighbor_table_desc_get_extended_pan_id(neighbor_table_list[i], extended_pan_id); msg(" ext PAN ID = %02X:%02X:%02X:%02X:%02X:%02X:%02X:%02X", @@ -146,8 +147,9 @@ static void zigbee_zdo_mgmt_rtg_rsp(unsigned char status, msg(""); msgp("zb_zdo_mgmt_rtg_rsp()"); - msgp(" status = 0x%02X routing_table_entries=%d start_idx=%d count=%d", - status, routing_table_entries, start_idx, routing_table_list_count); + msgp(" status = 0x%02X (%s) routing_table_entries=%d start_idx=%d count=%d", + status, zb_zdo_get_error_message(status), + routing_table_entries, start_idx, routing_table_list_count); for (i = start_idx; i < routing_table_list_count; i++) { zb_routing_table_get_dst_addr(routing_table_list[i], &dst_addr); msg(" [%d] Destination address = 0x%04X", i, dst_addr); @@ -177,8 +179,8 @@ static void zigbee_zdo_mgmt_bind_rsp(unsigned char status, unsigned char entries msg(""); msgp("zb_zdo_mgmt_bind_rsp()"); - msgp(" status = 0x%02X start_idx = %d number of records = %d", - status, start_idx, binding_table_list_count); + msgp(" status = 0x%02X (%s) start_idx = %d number of records = %d", + status, zb_zdo_get_error_message(status), start_idx, binding_table_list_count); for (i = 0; i < binding_table_list_count; i++) { zb_binding_table_get_src_addr(list[i], addr64); @@ -205,13 +207,13 @@ static void zigbee_zdo_mgmt_bind_rsp(unsigned char status, unsigned char entries static void zigbee_zdo_mgmt_leave_rsp(unsigned char status, void *user_data) { msg(""); - msgp("zb_zdo_mgmt_leave_rsp() status = 0x%02X", status); + msgp("zb_zdo_mgmt_leave_rsp() status = 0x%02X (%s)", status, zb_zdo_get_error_message(status)); } static void zigbee_zdo_mgmt_permit_joining_rsp(unsigned char status, void *user_data) { msg(""); - msgp("zb_zdo_mgmt_permit_joining_rsp() status = 0x%02X", status); + msgp("zb_zdo_mgmt_permit_joining_rsp() status = 0x%02X (%s)", status, zb_zdo_get_error_message(status)); } static int run_mgmt_nwk_disc_req(MManager *mm, struct menu_data *menu)