* @see zb_devices_info_foreach_end_device()
* @see zb_get_all_device_list()
*/
-int zb_get_mac_capabiity(zb_end_device_info_h handle, unsigned char *capability);
+int zb_get_mac_capability(zb_end_device_info_h handle, unsigned char *capability);
/**
* @brief Gets ability of alternative PAN coordinator of a specific end-point
int ret = ZIGBEE_ERROR_NONE;
CHECK_FEATURE_SUPPORTED(ZIGBEE_FEATURE);
RETV_IF(NULL == handle, ZIGBEE_ERROR_INVALID_PARAMETER);
+ RETV_IF(NULL == addr, ZIGBEE_ERROR_INVALID_PARAMETER);
ret = zbl_leave_device(addr, remove_children, rejoin);
DBG("zbl_leave_device()=0x%X", ret);
int ret = ZIGBEE_ERROR_NONE;
CHECK_FEATURE_SUPPORTED(ZIGBEE_FEATURE);
RETV_IF(NULL == handle, ZIGBEE_ERROR_INVALID_PARAMETER);
+ RETV_IF(NULL == addr64, ZIGBEE_ERROR_INVALID_PARAMETER);
ret = zbl_get_controller_mac_address(addr64);
DBG("zbl_get_controller_mac_address()=0x%X", ret);
int ret = ZIGBEE_ERROR_NONE;
CHECK_FEATURE_SUPPORTED(ZIGBEE_FEATURE);
RETV_IF(NULL == handle, ZIGBEE_ERROR_INVALID_PARAMETER);
+ RETV_IF(NULL == addr64, ZIGBEE_ERROR_INVALID_PARAMETER);
ret = zbl_get_network_info(addr64, nodeid, panid, channel, tx_power);
DBG("zbl_get_network_info()=0x%X", ret);
unsigned char cnt;
CHECK_FEATURE_SUPPORTED(ZIGBEE_FEATURE);
+ RETV_IF(NULL == handle, ZIGBEE_ERROR_INVALID_PARAMETER);
RETV_IF(NULL == count, ZIGBEE_ERROR_INVALID_PARAMETER);
+ RETV_IF(NULL == list, ZIGBEE_ERROR_INVALID_PARAMETER);
+
ret = zbl_get_all_device_info(list, &cnt);
*count = cnt;
return ret;
unsigned char cnt = 0;
CHECK_FEATURE_SUPPORTED(ZIGBEE_FEATURE);
+ RETV_IF(NULL == handle, ZIGBEE_ERROR_INVALID_PARAMETER);
RETV_IF(NULL == addr64, ZIGBEE_ERROR_INVALID_PARAMETER);
RETV_IF(NULL == count, ZIGBEE_ERROR_INVALID_PARAMETER);
RETV_IF(NULL == ep_list, ZIGBEE_ERROR_INVALID_PARAMETER);
unsigned char out_cnt = 0;
CHECK_FEATURE_SUPPORTED(ZIGBEE_FEATURE);
+ RETV_IF(NULL == handle, ZIGBEE_ERROR_INVALID_PARAMETER);
RETV_IF(NULL == addr64, ZIGBEE_ERROR_INVALID_PARAMETER);
RETV_IF(NULL == in_cluster_count, ZIGBEE_ERROR_INVALID_PARAMETER);
RETV_IF(NULL == in_cluster_list, ZIGBEE_ERROR_INVALID_PARAMETER);
return ZIGBEE_ERROR_NONE;
}
-API int zb_get_mac_capabiity(zb_end_device_info_h handle, unsigned char *capability)
+API int zb_get_mac_capability(zb_end_device_info_h handle, unsigned char *capability)
{
struct zb_end_device_info_s *h = handle;
CHECK_FEATURE_SUPPORTED(ZIGBEE_FEATURE);
struct zb_zdo_network_list_record_s *h = handle;
CHECK_FEATURE_SUPPORTED(ZIGBEE_FEATURE);
RETV_IF(NULL == handle, ZIGBEE_ERROR_INVALID_PARAMETER);
+ RETV_IF(NULL == extended_pan_id, ZIGBEE_ERROR_INVALID_PARAMETER);
memcpy(extended_pan_id, h->extended_pan_id, sizeof(ieee_addr));
return ZIGBEE_ERROR_NONE;
struct zb_zdo_binding_table_s *h = handle;
CHECK_FEATURE_SUPPORTED(ZIGBEE_FEATURE);
RETV_IF(NULL == handle, ZIGBEE_ERROR_INVALID_PARAMETER);
+ RETV_IF(NULL == src_addr, ZIGBEE_ERROR_INVALID_PARAMETER);
memcpy(src_addr, h->src_addr64, sizeof(ieee_addr));
return ZIGBEE_ERROR_NONE;
struct zb_zdo_discovery_cache_s *h = handle;
CHECK_FEATURE_SUPPORTED(ZIGBEE_FEATURE);
RETV_IF(NULL == handle, ZIGBEE_ERROR_INVALID_PARAMETER);
+ RETV_IF(NULL == addr64, ZIGBEE_ERROR_INVALID_PARAMETER);
memcpy(addr64, h->addr64, sizeof(ieee_addr));
return ZIGBEE_ERROR_NONE;
CHECK_FEATURE_SUPPORTED(ZIGBEE_FEATURE);
RETV_IF(NULL == handle, ZIGBEE_ERROR_INVALID_PARAMETER);
RETV_IF(NULL == zbl_dbus_get_object(), ZIGBEE_ERROR_IO_ERROR);
+ RETV_IF(NULL == src_addr64, ZIGBEE_ERROR_INVALID_PARAMETER);
+ RETV_IF(NULL == dst_addr64, ZIGBEE_ERROR_INVALID_PARAMETER);
RETV_IF(0 == src_ep || 0 == dst_ep, ZIGBEE_ERROR_INVALID_ENDPOINT);
ret = zbl_bind_req(dst_addr16, src_addr64, src_ep, cluster_id, dst_addr64, type,
group_addr, dst_ep, cb, user_data);
CHECK_FEATURE_SUPPORTED(ZIGBEE_FEATURE);
RETV_IF(NULL == handle, ZIGBEE_ERROR_INVALID_PARAMETER);
RETV_IF(NULL == zbl_dbus_get_object(), ZIGBEE_ERROR_IO_ERROR);
+ RETV_IF(NULL == src_addr64, ZIGBEE_ERROR_INVALID_PARAMETER);
+ RETV_IF(NULL == dst_addr64, ZIGBEE_ERROR_INVALID_PARAMETER);
RETV_IF(0 == src_ep || 0 == dst_ep, ZIGBEE_ERROR_INVALID_ENDPOINT);
ret = zbl_unbind_req(dst_addr16, src_addr64, src_ep, cluster_id, dst_addr64, type,
group_addr, dst_ep, cb, user_data);
msg(" - zb_enable() ret: [0x%X] [%s]", ret, zigbee_error_to_string(ret));
+ /* Set coordinator address */
+ ret = zb_get_controller_mac_address(handle, co_addr64);
+ if (ZIGBEE_ERROR_NONE != ret)
+ msg("zb_get_controller_mac_address(%d) - FAILED!!! [%s]", ret, zigbee_error_to_string(ret));
+ else
+ msg(" Coordinator Address:");
+ msg(" %02X:%02X:%02X:%02X:%02X:%02X:%02X:%02X",
+ co_addr64[0], co_addr64[1], co_addr64[2], co_addr64[3],
+ co_addr64[4], co_addr64[5], co_addr64[6], co_addr64[7]);
+
menu_manager_set_user_data(mm, handle);
return RET_SUCCESS;
OUT:
g_main_loop_unref(mainloop);
+
+ if (NULL != target_list)
+ zb_device_list_free(target_list);
+
msg("******* Bye bye *******");
return 0;