Restore GDBus API from async to sync.
authorsaerome.kim <saerome.kim@samsung.com>
Mon, 23 Jan 2017 12:10:15 +0000 (21:10 +0900)
committersaerome.kim <saerome.kim@samsung.com>
Thu, 11 May 2017 09:10:25 +0000 (18:10 +0900)
 - add result parameters to let app know the result of its calling

Change-Id: I2768c25620db74fae8d45174e3e267fcd68e3bd3
Signed-off-by: saerome.kim <saerome.kim@samsung.com>
Signed-off-by: Jiwan Kim <ji-wan.kim@samsung.com>
20 files changed:
common/include/zigbee_service_type.h
common/include/zigbee_types.h
zigbee-daemon/zigbee-interface/introspection/custom.xml
zigbee-daemon/zigbee-interface/introspection/mfglib-control.xml
zigbee-daemon/zigbee-interface/introspection/service.xml
zigbee-daemon/zigbee-interface/introspection/zcl-alarm.xml
zigbee-daemon/zigbee-interface/introspection/zcl-basic.xml
zigbee-daemon/zigbee-interface/introspection/zcl-color-control.xml
zigbee-daemon/zigbee-interface/introspection/zcl-door-lock.xml
zigbee-daemon/zigbee-interface/introspection/zcl-fan-control.xml
zigbee-daemon/zigbee-interface/introspection/zcl-group.xml
zigbee-daemon/zigbee-interface/introspection/zcl-level-control.xml
zigbee-daemon/zigbee-interface/introspection/zcl-on-off.xml
zigbee-daemon/zigbee-interface/introspection/zcl-poll-control.xml
zigbee-daemon/zigbee-interface/introspection/zcl-scene.xml
zigbee-daemon/zigbee-interface/introspection/zcl-thermostat.xml
zigbee-daemon/zigbee-interface/introspection/zdo-bind.xml
zigbee-daemon/zigbee-interface/introspection/zdo-dev-control.xml
zigbee-daemon/zigbee-interface/src/zigbee_service_dbus_interface_service.c
zigbee-daemon/zigbee-lib/include/zblib_driver_service.h

index 9f5c395..4de51df 100644 (file)
@@ -79,11 +79,22 @@ typedef struct {
 /* --------------------------------------------------------------------------------------
  * For Responses
  * -------------------------------------------------------------------------------------*/
+
+ /**
+ * @brief Definition for service 'enabled' response.
+ * @since_tizen 4.0
+ */
+typedef struct {
+       int result; /**< Result */
+       char enabled; /**< Enabled / Disabled result */
+} ZigbeeServiceServiceState_t;
+
 /**
  * @brief Definition for get network info structure.
  * @since_tizen 3.0
  */
 typedef struct {
+       int result; /**< Result */
        char eui64[ZIGBEE_EUI64_SIZE]; /**< EUI64 (an IEEE address) */
        short node_id; /**< Node ID (an Network address) */
        short pan_id; /**< PAN ID (an Network address) */
@@ -91,17 +102,18 @@ typedef struct {
        char radio_tx_power;  /**< Power (dBm) */
 } ZigbeeServiceGetNetworkInfo_t;
 
-/* --------------------------------------------------------------------------------------
- * For Notifications
- * -------------------------------------------------------------------------------------*/
-
 /**
- * @brief Definition for service 'enabled' response.
+ * @brief Definition for service 'get_node_type' response.
  * @since_tizen 4.0
  */
 typedef struct {
-       char enabled; /**< Enabled / Disabled result */
-} ZigbeeServiceServiceState_t;
+       int result; /**< Result */
+       char node_type; /**< Node Type */
+} ZigbeeServiceServiceNodeType_t;
+
+/* --------------------------------------------------------------------------------------
+ * For Notifications
+ * -------------------------------------------------------------------------------------*/
 
 /**
  * @brief Definition for service 'form_network_done' response.
@@ -112,7 +124,7 @@ typedef struct {
 } ZigbeeServiceServiceFormNetworkDone_t;
 
 /**
- * @brief Definition for service 'child_rejoind' response.
+ * @brief Definition for service 'child_rejoined' response.
  * @since_tizen 4.0
  */
 typedef struct {
@@ -120,7 +132,7 @@ typedef struct {
 } ZigbeeServiceServiceChildRejoined_t;
 
 /**
- * @brief Definition for service 'child_reft' response.
+ * @brief Definition for service 'child_left' response.
  * @since_tizen 4.0
  */
 typedef struct {
@@ -136,14 +148,5 @@ typedef struct {
        short pan_id; /**< PAN ID */
 } ZigbeeServiceServiceLeaveNetworkDone_t;
 
-/**
- * @brief Definition for service 'get_node_type' response.
- * @since_tizen 4.0
- */
-typedef struct {
-       char node_type; /**< Node Type */
-} ZigbeeServiceServiceNodeType_t;
-
-
 
 #endif /* __ZIGBEE_SERVICE_TYPE_H__ */
index 4b35d5e..0b96d42 100644 (file)
  */
 #define ZIGBEE_ZDO_BIND_ADDRESS_MAX_LEN 8
 
+ /* --------------------------------------------------------------------------------------
+ * For Responses
+ * -------------------------------------------------------------------------------------*/
+
+ /**
+ * @brief Definition for general response.
+ * @since_tizen 4.0
+ */
+typedef struct {
+       int result; /**< Result */
+} ZigbeeGeneralResp_t;
+
 #endif /* __ZIGBEE_TYPES_H__ */
index c1d05d8..8b62eec 100644 (file)
@@ -10,6 +10,7 @@
                        <arg type='y' name='zcl_frame_ctrl' direction='in'/>
                        <arg type='q' name='mfg_code' direction='in'/>
                        <arg type='ay' name='payload' direction='in'/>
+                       <arg type='i' name='result' direction='out'/>
                </method>
                <method name='zcl_send'>
                        <arg type='q' name='node_id' direction='in'/>
@@ -24,6 +25,7 @@
                </method>
                <method name='send_to_local'>
                        <arg type='ay' name='data' direction='in'/>
+                       <arg type='i' name='result' direction='out'/>
                </method>
 
                <signal name='aps_send_rsp'>
index cb83fca..ace61fd 100644 (file)
@@ -3,63 +3,80 @@
                <method name='start'>
                        <arg type='ay' name='eui64' direction='in'/>
                        <arg type='b' name='mfglib_start' direction='in'/>
+                       <arg type='i' name='result' direction='out'/>
                </method>
                <method name='end'>
                        <arg type='ay' name='eui64' direction='in'/>
+                       <arg type='i' name='result' direction='out'/>
                </method>
                <method name='start_tone'>
                        <arg type='ay' name='eui64' direction='in'/>
+                       <arg type='i' name='result' direction='out'/>
                </method>
                <method name='stop_tone'>
                        <arg type='ay' name='eui64' direction='in'/>
+                       <arg type='i' name='result' direction='out'/>
                </method>
                <method name='start_stream'>
                        <arg type='ay' name='eui64' direction='in'/>
+                       <arg type='i' name='result' direction='out'/>
                </method>
                <method name='stop_stream'>
                        <arg type='ay' name='eui64' direction='in'/>
+                       <arg type='i' name='result' direction='out'/>
                </method>
                <method name='send_packet'>
                        <arg type='ay' name='packetContents' direction='in'/>
                        <arg type='i' name='packetLength' direction='in'/>
+                       <arg type='i' name='result' direction='out'/>
                </method>
                <method name='set_channel'>
                        <arg type='ay' name='eui64' direction='in'/>
                        <arg type='y' name='channel' direction='in'/>
+                       <arg type='i' name='result' direction='out'/>
                </method>
                <method name='get_channel'>
                        <arg type='ay' name='eui64' direction='in'/>
+                       <arg type='i' name='result' direction='out'/>
                </method>
                <method name='set_power'>
                        <arg type='ay' name='eui64' direction='in'/>
                        <arg type='q' name='txPowerMode' direction='in'/>
                        <arg type='n' name='power' direction='in'/>
+                       <arg type='i' name='result' direction='out'/>
                </method>
                <method name='get_power'>
                        <arg type='ay' name='eui64' direction='in'/>
+                       <arg type='i' name='result' direction='out'/>
                </method>
                <method name='set_synoffset'>
                        <arg type='ay' name='eui64' direction='in'/>
                        <arg type='y' name='testChannel' direction='in'/>
+                       <arg type='i' name='result' direction='out'/>
                </method>
                <method name='get_synoffset'>
                        <arg type='ay' name='pkt' direction='in'/>
                        <arg type='i' name='pktLength' direction='in'/>
                        <arg type='y' name='linkQuality' direction='in'/>
                        <arg type='y' name='rssi' direction='in'/>
+                       <arg type='i' name='result' direction='out'/>
                </method>
                <method name='rx_start'>
                        <arg type='ay' name='eui64' direction='in'/>
+                       <arg type='i' name='result' direction='out'/>
                </method>
                <method name='rx_stop'>
                        <arg type='ay' name='eui64' direction='in'/>
+                       <arg type='i' name='result' direction='out'/>
                </method>
                <method name='rx_verify'>
                        <arg type='ay' name='eui64' direction='in'/>
+                       <arg type='i' name='result' direction='out'/>
                        <arg type='q' name='cntGoodFrame' direction='out'/>
                </method>
                <method name='get_rssi'>
                        <arg type='ay' name='eui64' direction='in'/>
+                       <arg type='i' name='result' direction='out'/>
                        <arg type='s' name='rssi' direction='out'/>
                </method>
 
index 1928756..f5cd66c 100644 (file)
@@ -2,21 +2,29 @@
        <interface name='org.tizen.zigbee.service'>
                <method name='enable'>
                        <arg type='b' name='enabled' direction='out'/>
+                       <arg type='i' name='result' direction='out'/>
                </method>
                <method name='disable'>
+                       <arg type='i' name='result' direction='out'/>
                </method>
                <method name='zb_hw_reset'>
+                       <arg type='i' name='result' direction='out'/>
                </method>
                <method name='form_network'>
+                       <arg type='i' name='result' direction='out'/>
                </method>
                <method name='coex_start'>
                        <arg type='y' name='channel' direction='in'/>
+                       <arg type='i' name='result' direction='out'/>
                </method>
                <method name='coex_stop'>
+                       <arg type='i' name='result' direction='out'/>
                </method>
                <method name='leave_network'>
+                       <arg type='i' name='result' direction='out'/>
                </method>
                <method name='get_network_info'>
+                       <arg type='i' name='result' direction='out'/>
                        <arg type='ay' name='macAddress' direction='out'/>
                        <arg type='q' name='nodeId' direction='out'/>
                        <arg type='q' name='panId' direction='out'/>
                <method name='permit_join'>
                        <arg type='i' name='duration' direction='in'/>
                        <arg type='b' name='permitJoin' direction='in'/>
+                       <arg type='i' name='result' direction='out'/>
                </method>
                <method name='leave_request'>
                        <arg type='ay' name='eui64' direction='in'/>
                        <arg type='y' name='remove_child' direction='in'/>
                        <arg type='y' name='rejoin' direction='in'/>
+                       <arg type='i' name='result' direction='out'/>
                </method>
                <method name='get_device_list'>
+                       <arg type='i' name='result' direction='out'/>
                        <arg type='a(ay)' name='device_list' direction='out'/>
                </method>
                <method name='get_mac'>
+                       <arg type='i' name='result' direction='out'/>
                        <arg type='ay' name='mac_addr' direction='out'/>
                </method>
                <method name='get_device_info'>
+                       <arg type='i' name='result' direction='out'/>
                        <arg type='a(qyayyay)' name='device_list' direction='out'/>
                </method>
                <method name='get_endpoint_list'>
                        <arg type='ay' name='eui64' direction='in'/>
+                       <arg type='i' name='result' direction='out'/>
                        <arg type='ay' name='endpoint_list' direction='out'/>
                </method>
                <method name='get_cluster_list'>
                        <arg type='ay' name='eui64' direction='in'/>
                        <arg type='y' name='endpoint' direction='in'/>
+                       <arg type='i' name='result' direction='out'/>
                        <arg type='aq' name='cluster_list' direction='out'/>
                </method>
                <method name='get_node_type'>
                        <arg type='ay' name='eui64' direction='in'/>
+                       <arg type='i' name='result' direction='out'/>
                        <arg type='y' name='node_type' direction='out'/>
                </method>
 
index e29159d..49be1bd 100644 (file)
                        <arg type='y' name='endpoint' direction='in'/>
                        <arg type='y' name='alarmcode' direction='in'/>
                        <arg type='q' name='cluster_id' direction='in'/>
+                       <arg type='i' name='result' direction='out'/>
                </method>
                <method name='reset_all_alarm'>
                        <arg type='q' name='nodeId' direction='in'/>
                        <arg type='y' name='endpoint' direction='in'/>
+                       <arg type='i' name='result' direction='out'/>
                </method>
                <method name='alarm'>
                        <arg type='ay' name='eui64' direction='in'/>
                        <arg type='y' name='endpoint' direction='in'/>
                        <arg type='y' name='alarmcode' direction='in'/>
                        <arg type='y' name='cluster_id' direction='in'/>
+                       <arg type='i' name='result' direction='out'/>
                </method>
                <method name='reset_alarm_log'>
                        <arg type='q' name='nodeId' direction='in'/>
                        <arg type='y' name='endpoint' direction='in'/>
+                       <arg type='i' name='result' direction='out'/>
                </method>
                <method name='get_alarm'>
                        <arg type='q' name='nodeId' direction='in'/>
                        <arg type='y' name='endpoint' direction='in'/>
+                       <arg type='i' name='result' direction='out'/>
                </method>
 
                <signal name='alarm_count'>
index cb185bb..a6a6094 100644 (file)
@@ -3,6 +3,7 @@
                <method name='reset_factory_default'>
                        <arg type='q' name='nodeId' direction='in'/>
                        <arg type='y' name='dst_ep' direction='in'/>
+                       <arg type='i' name='result' direction='out'/>
                </method>
        </interface>
 </node>
index 62781e5..2380044 100644 (file)
@@ -6,12 +6,14 @@
                        <arg type='y' name='hue' direction='in'/>
                        <arg type='y' name='direction' direction='in'/>
                        <arg type='q' name='transition_time' direction='in'/>
+                       <arg type='i' name='result' direction='out'/>
                </method>
                <method name='move_hue'>
                        <arg type='q' name='nodeId' direction='in'/>
                        <arg type='y' name='endpoint' direction='in'/>
                        <arg type='y' name='move_mode' direction='in'/>
                        <arg type='y' name='rate' direction='in'/>
+                       <arg type='i' name='result' direction='out'/>
                </method>
                <method name='step_hue'>
                        <arg type='q' name='nodeId' direction='in'/>
                        <arg type='y' name='step_mode' direction='in'/>
                        <arg type='y' name='step_size' direction='in'/>
                        <arg type='y' name='transition_time' direction='in'/>
+                       <arg type='i' name='result' direction='out'/>
                </method>
                <method name='move_to_saturation'>
                        <arg type='q' name='nodeId' direction='in'/>
                        <arg type='y' name='endpoint' direction='in'/>
                        <arg type='y' name='saturation' direction='in'/>
                        <arg type='q' name='transition_time' direction='in'/>
+                       <arg type='i' name='result' direction='out'/>
                </method>
                <method name='move_saturation'>
                        <arg type='q' name='nodeId' direction='in'/>
                        <arg type='y' name='endpoint' direction='in'/>
                        <arg type='y' name='move_mode' direction='in'/>
                        <arg type='y' name='rate' direction='in'/>
+                       <arg type='i' name='result' direction='out'/>
                </method>
                <method name='step_saturation'>
                        <arg type='q' name='nodeId' direction='in'/>
@@ -38,6 +43,7 @@
                        <arg type='y' name='step_mode' direction='in'/>
                        <arg type='y' name='step_size' direction='in'/>
                        <arg type='y' name='transition_time' direction='in'/>
+                       <arg type='i' name='result' direction='out'/>
                </method>
                <method name='move_to_hue_and_saturation'>
                        <arg type='q' name='nodeId' direction='in'/>
@@ -45,6 +51,7 @@
                        <arg type='y' name='hue' direction='in'/>
                        <arg type='y' name='saturation' direction='in'/>
                        <arg type='q' name='transition_time' direction='in'/>
+                       <arg type='i' name='result' direction='out'/>
                </method>
                <method name='move_to_color'>
                        <arg type='q' name='nodeId' direction='in'/>
                        <arg type='q' name='color_x' direction='in'/>
                        <arg type='q' name='color_y' direction='in'/>
                        <arg type='q' name='transition_time' direction='in'/>
+                       <arg type='i' name='result' direction='out'/>
                </method>
                <method name='move_color'>
                        <arg type='q' name='nodeId' direction='in'/>
                        <arg type='y' name='endpoint' direction='in'/>
                        <arg type='q' name='rate_x' direction='in'/>
                        <arg type='q' name='rate_y' direction='in'/>
+                       <arg type='i' name='result' direction='out'/>
                </method>
                <method name='step_color'>
                        <arg type='q' name='nodeId' direction='in'/>
                        <arg type='q' name='rate_x' direction='in'/>
                        <arg type='q' name='rate_y' direction='in'/>
                        <arg type='q' name='transition_time' direction='in'/>
+                       <arg type='i' name='result' direction='out'/>
                </method>
                <method name='move_color_temperature'>
                        <arg type='q' name='nodeId' direction='in'/>
                        <arg type='y' name='endpoint' direction='in'/>
                        <arg type='q' name='color_temperature' direction='in'/>
                        <arg type='q' name='transition_time' direction='in'/>
+                       <arg type='i' name='result' direction='out'/>
                </method>
        </interface>
 </node>
index 38199e6..7e0b71a 100644 (file)
                        <arg type='y' name='endpoint' direction='in'/>
                        <arg type='s' name='pin' direction='in'/>
                        <arg type='i' name='lock_unlock_type' direction='in'/>
+                       <arg type='i' name='result' direction='out'/>
                </method>
                <method name='get_lock_state'>
                        <arg type='ay' name='eui64' direction='in'/>
                        <arg type='y' name='endpoint' direction='in'/>
+                       <arg type='i' name='result' direction='out'/>
                </method>
 
                <signal name='lock_state'>
index 7834e54..e03a66c 100644 (file)
@@ -3,18 +3,22 @@
                <method name='set_fan_mode'>
                        <arg type='ay' name='eui64' direction='in'/>
                        <arg type='y' name='endpoint' direction='in'/>
+                       <arg type='i' name='result' direction='out'/>
                </method>
                <method name='get_fan_mode'>
                        <arg type='ay' name='eui64' direction='in'/>
                        <arg type='y' name='endpoint' direction='in'/>
+                       <arg type='i' name='result' direction='out'/>
                </method>
                <method name='set_fan_mode_sequence'>
                        <arg type='ay' name='eui64' direction='in'/>
                        <arg type='y' name='endpoint' direction='in'/>
+                       <arg type='i' name='result' direction='out'/>
                </method>
                <method name='get_fan_mode_sequence'>
                        <arg type='ay' name='eui64' direction='in'/>
                        <arg type='y' name='endpoint' direction='in'/>
+                       <arg type='i' name='result' direction='out'/>
                </method>
 
                <signal name='fan_mode_level'>
index 789bc41..bba87d5 100644 (file)
@@ -5,33 +5,39 @@
                        <arg type='y' name='dst_ep' direction='in'/>
                        <arg type='q' name='group_id' direction='in'/>
                        <arg type='ay' name='group_name' direction='in'/>
+                       <arg type='i' name='result' direction='out'/>
                </method>
                <method name='view_group'>
                        <arg type='q' name='nodeId' direction='in'/>
                        <arg type='y' name='dst_ep' direction='in'/>
                        <arg type='q' name='group_id' direction='in'/>
+                       <arg type='i' name='result' direction='out'/>
                </method>
                <method name='get_group_membership'>
                        <arg type='q' name='nodeId' direction='in'/>
                        <arg type='y' name='dst_ep' direction='in'/>
                        <arg type='y' name='group_count' direction='in'/>
                        <arg type='aq' name='group_list' direction='in'/>
+                       <arg type='i' name='result' direction='out'/>
                </method>
                <method name='remove_group'>
                        <arg type='q' name='nodeId' direction='in'/>
                        <arg type='y' name='dst_ep' direction='in'/>
                        <arg type='q' name='group_id' direction='in'/>
+                       <arg type='i' name='result' direction='out'/>
                </method>
                <method name='remove_all_group'>
                        <arg type='q' name='nodeId' direction='in'/>
                        <arg type='y' name='dst_ep' direction='in'/>
                        <arg type='i' name='result' direction='out'/>
+                       <arg type='y' name='status' direction='out'/>
                </method>
                <method name='add_group_if_identifying'>
                        <arg type='q' name='nodeId' direction='in'/>
                        <arg type='y' name='dst_ep' direction='in'/>
                        <arg type='q' name='group_id' direction='in'/>
                        <arg type='ay' name='group_name' direction='in'/>
+                       <arg type='i' name='result' direction='out'/>
                </method>
 
                <signal name='add_group_rsp'>
index 5682fa1..933c58b 100644 (file)
@@ -5,12 +5,14 @@
                        <arg type='y' name='endpoint' direction='in'/>
                        <arg type='y' name='level' direction='in'/>
                        <arg type='q' name='transition' direction='in'/>
+                       <arg type='i' name='result' direction='out'/>
                </method>
                <method name='move'>
                        <arg type='q' name='nodeId' direction='in'/>
                        <arg type='y' name='endpoint' direction='in'/>
                        <arg type='y' name='move_mode' direction='in'/>
                        <arg type='y' name='rate' direction='in'/>
+                       <arg type='i' name='result' direction='out'/>
                </method>
                <method name='step'>
                        <arg type='q' name='nodeId' direction='in'/>
                        <arg type='y' name='step_mode' direction='in'/>
                        <arg type='y' name='move_mode' direction='in'/>
                        <arg type='q' name='transition_time' direction='in'/>
+                       <arg type='i' name='result' direction='out'/>
                </method>
                <method name='move_to_level_with_on_off'>
                        <arg type='q' name='nodeId' direction='in'/>
                        <arg type='y' name='endpoint' direction='in'/>
                        <arg type='y' name='level' direction='in'/>
                        <arg type='q' name='transition' direction='in'/>
+                       <arg type='i' name='result' direction='out'/>
                </method>
                <method name='move_with_on_off'>
                        <arg type='q' name='nodeId' direction='in'/>
                        <arg type='y' name='endpoint' direction='in'/>
                        <arg type='y' name='move_mode' direction='in'/>
                        <arg type='y' name='rate' direction='in'/>
+                       <arg type='i' name='result' direction='out'/>
                </method>
                <method name='step_with_on_off'>
                        <arg type='q' name='nodeId' direction='in'/>
                        <arg type='y' name='step_mode' direction='in'/>
                        <arg type='y' name='move_mode' direction='in'/>
                        <arg type='q' name='transition_time' direction='in'/>
+                       <arg type='i' name='result' direction='out'/>
                </method>
                <method name='stop'>
                        <arg type='q' name='nodeId' direction='in'/>
                        <arg type='y' name='endpoint' direction='in'/>
+                       <arg type='i' name='result' direction='out'/>
                </method>
 
                <signal name='current_level'>
index 1da1c80..b4d595c 100644 (file)
@@ -4,10 +4,12 @@
                        <arg type='q' name='node_id' direction='in'/>
                        <arg type='y' name='endpoint' direction='in'/>
                        <arg type='y' name='on_off_type' direction='in'/>
+                       <arg type='i' name='result' direction='out'/>
                </method>
                <method name='get_on_off_state'>
                        <arg type='q' name='node_id' direction='in'/>
                        <arg type='y' name='endpoint' direction='in'/>
+                       <arg type='i' name='result' direction='out'/>
                </method>
 
                <signal name='on_off_state'>
index 810dc6c..700dc9e 100644 (file)
@@ -5,20 +5,24 @@
                        <arg type='y' name='dst_ep' direction='in'/>
                        <arg type='y' name='start_fast_polling' direction='in'/>
                        <arg type='q' name='fast_poll_timeout' direction='in'/>
+                       <arg type='i' name='result' direction='out'/>
                </method>
                <method name='fast_poll_stop'>
                        <arg type='q' name='nodeId' direction='in'/>
                        <arg type='y' name='dst_ep' direction='in'/>
+                       <arg type='i' name='result' direction='out'/>
                </method>
                <method name='set_long_poll_interval'>
                        <arg type='q' name='nodeId' direction='in'/>
                        <arg type='y' name='dst_ep' direction='in'/>
                        <arg type='u' name='new_long_poll_interval' direction='in'/>
+                       <arg type='i' name='result' direction='out'/>
                </method>
                <method name='set_short_poll_interval'>
                        <arg type='q' name='nodeId' direction='in'/>
                        <arg type='y' name='dst_ep' direction='in'/>
                        <arg type='u' name='new_short_poll_interval' direction='in'/>
+                       <arg type='i' name='result' direction='out'/>
                </method>
 
                <signal name='checkin_response'>
index ad8e02c..2ecbf98 100644 (file)
@@ -9,40 +9,47 @@
                        <arg type='q' name='extLen' direction='in'/>
                        <arg type='ay' name='sceneName' direction='in'/>
                        <arg type='ay' name='extFieldSet' direction='in'/>
+                       <arg type='i' name='result' direction='out'/>
                </method>
                <method name='view_scene'>
                        <arg type='q' name='nodeId' direction='in'/>
                        <arg type='y' name='dst_ep' direction='in'/>
                        <arg type='q' name='group_id' direction='in'/>
                        <arg type='y' name='scene_id' direction='in'/>
+                       <arg type='i' name='result' direction='out'/>
                </method>
                <method name='remove_scene'>
                        <arg type='q' name='nodeId' direction='in'/>
                        <arg type='y' name='dst_ep' direction='in'/>
                        <arg type='q' name='group_id' direction='in'/>
                        <arg type='y' name='scene_id' direction='in'/>
+                       <arg type='i' name='result' direction='out'/>
                </method>
                <method name='store_scene'>
                        <arg type='q' name='nodeId' direction='in'/>
                        <arg type='y' name='dst_ep' direction='in'/>
                        <arg type='q' name='group_id' direction='in'/>
                        <arg type='y' name='scene_id' direction='in'/>
+                       <arg type='i' name='result' direction='out'/>
                </method>
                <method name='recall_scene'>
                        <arg type='q' name='nodeId' direction='in'/>
                        <arg type='y' name='dst_ep' direction='in'/>
                        <arg type='q' name='group_id' direction='in'/>
                        <arg type='y' name='scene_id' direction='in'/>
+                       <arg type='i' name='result' direction='out'/>
                </method>
                <method name='remove_all_scene'>
                        <arg type='q' name='nodeId' direction='in'/>
                        <arg type='y' name='dst_ep' direction='in'/>
                        <arg type='q' name='group_id' direction='in'/>
+                       <arg type='i' name='result' direction='out'/>
                </method>
                <method name='get_scene_membership'>
                        <arg type='q' name='nodeId' direction='in'/>
                        <arg type='y' name='dst_ep' direction='in'/>
                        <arg type='q' name='group_id' direction='in'/>
+                       <arg type='i' name='result' direction='out'/>
                </method>
 
                <signal name='add_scene_rsp'>
index 955cf69..2fe6f12 100644 (file)
@@ -3,12 +3,14 @@
                <method name='get_local_temp'>
                        <arg type='ay' name='eui64' direction='in'/>
                        <arg type='y' name='endpoint' direction='in'/>
+                       <arg type='i' name='result' direction='out'/>
                </method>
                <method name='get_weekly_schedule'>
                        <arg type='ay' name='eui64' direction='in'/>
                        <arg type='y' name='endpoint' direction='in'/>
                        <arg type='y' name='no_of_days' direction='in'/>
                        <arg type='y' name='mode' direction='in'/>
+                       <arg type='i' name='result' direction='out'/>
                </method>
                <method name='set_weekly_schedule'>
                        <arg type='ay' name='eui64' direction='in'/>
                        <arg type='y' name='mode' direction='in'/>
                        <arg type='ay' name='payload' direction='in'/>
                        <arg type='y' name='payload_len' direction='in'/>
+                       <arg type='i' name='result' direction='out'/>
                </method>
                <method name='clear_weekly_schedule'>
                        <arg type='ay' name='eui64' direction='in'/>
                        <arg type='y' name='endpoint' direction='in'/>
+                       <arg type='i' name='result' direction='out'/>
                </method>
                <method name='setpoint_raise_lower'>
                        <arg type='q' name='nodeId' direction='in'/>
                        <arg type='y' name='endpoint' direction='in'/>
                        <arg type='y' name='mode' direction='in'/>
                        <arg type='y' name='amount' direction='in'/>
+                       <arg type='i' name='result' direction='out'/>
                </method>
 
                <signal name='local_temp'>
index 69bb961..0dd47b0 100644 (file)
@@ -9,6 +9,7 @@
                        <arg type='y' name='bind_type' direction='in'/>
                        <arg type='q' name='group_addr' direction='in'/>
                        <arg type='y' name='dst_ep' direction='in'/>
+                       <arg type='i' name='result' direction='out'/>
                </method>
                <method name='unbind_req'>
                        <arg type='q' name='nodeId' direction='in'/>
@@ -19,6 +20,7 @@
                        <arg type='y' name='bind_type' direction='in'/>
                        <arg type='q' name='group_addr' direction='in'/>
                        <arg type='y' name='dst_ep' direction='in'/>
+                       <arg type='i' name='result' direction='out'/>
                </method>
 
                <signal name='binding_rsp'>
index 3082c9b..0eb9959 100644 (file)
@@ -4,6 +4,7 @@
                        <arg type='ay' name='EUI64' direction='in'/>
                        <arg type='y' name='requestType' direction='in'/>
                        <arg type='y' name='start_index' direction='in'/>
+                       <arg type='i' name='result' direction='out'/>
                </method>
                <method name='matched_descriptor_req'>
                        <arg type='q' name='NodeId' direction='in'/>
                        <arg type='aq' name='in_cl' direction='in'/>
                        <arg type='y' name='num_out_cl' direction='in'/>
                        <arg type='aq' name='out_cl' direction='in'/>
+                       <arg type='i' name='result' direction='out'/>
                </method>
                <method name='ieee_addr_req'>
                        <arg type='q' name='nodeId' direction='in'/>
+                       <arg type='i' name='result' direction='out'/>
                </method>
                <method name='active_ep_req'>
                        <arg type='q' name='nodeId' direction='in'/>
+                       <arg type='i' name='result' direction='out'/>
                </method>
                <method name='node_desc_req'>
                        <arg type='q' name='nodeId' direction='in'/>
+                       <arg type='i' name='result' direction='out'/>
                </method>
                <method name='power_desc_req'>
                        <arg type='q' name='nodeId' direction='in'/>
+                       <arg type='i' name='result' direction='out'/>
                </method>
                <method name='complex_desc_req'>
                        <arg type='q' name='nodeId' direction='in'/>
+                       <arg type='i' name='result' direction='out'/>
                </method>
                <method name='user_desc_req'>
                        <arg type='q' name='nodeId' direction='in'/>
+                       <arg type='i' name='result' direction='out'/>
                </method>
                <method name='user_desc_set_req'>
                        <arg type='q' name='nodeId' direction='in'/>
                        <arg type='y' name='length' direction='in'/>
                        <arg type='ay' name='user_desc' direction='in'/>
+                       <arg type='i' name='result' direction='out'/>
                </method>
                <method name='device_announce'>
                        <arg type='q' name='nodeId' direction='in'/>
                        <arg type='ay' name='mac_addr' direction='in'/>
                        <arg type='y' name='capability' direction='in'/>
+                       <arg type='i' name='result' direction='out'/>
                </method>
                <method name='simple_desc_req'>
                        <arg type='q' name='nodeId' direction='in'/>
                        <arg type='y' name='endpoint' direction='in'/>
+                       <arg type='i' name='result' direction='out'/>
                </method>
                <method name='mgmt_lqi_req'>
                        <arg type='q' name='nodeId' direction='in'/>
                        <arg type='y' name='start_idx' direction='in'/>
+                       <arg type='i' name='result' direction='out'/>
                </method>
                <method name='mgmt_rtg_req'>
                        <arg type='q' name='nodeId' direction='in'/>
                        <arg type='y' name='start_idx' direction='in'/>
+                       <arg type='i' name='result' direction='out'/>
                </method>
                <method name='mgmt_bind_req'>
                        <arg type='q' name='nodeId' direction='in'/>
                        <arg type='y' name='start_idx' direction='in'/>
+                       <arg type='i' name='result' direction='out'/>
                </method>
                <method name='mgmt_permit_join_req'>
                        <arg type='q' name='addr16' direction='in'/>
                        <arg type='y' name='duration' direction='in'/>
                        <arg type='y' name='tc_significance' direction='in'/>
+                       <arg type='i' name='result' direction='out'/>
                </method>
                <method name='nwk_update_req'>
                        <arg type='q' name='nodeId' direction='in'/>
@@ -68,6 +83,7 @@
                        <arg type='y' name='scan_duration' direction='in'/>
                        <arg type='y' name='scan_count' direction='in'/>
                        <arg type='y' name='nwkUpdateId' direction='in'/>
+                       <arg type='i' name='result' direction='out'/>
                </method>
                <method name='nwk_disc_req'>
                        <arg type='q' name='nwkaddr' direction='in'/>
@@ -75,6 +91,7 @@
                        <arg type='y' name='scan_duration' direction='in'/>
                        <arg type='q' name='scan_count' direction='in'/>
                        <arg type='y' name='start_idx' direction='in'/>
+                       <arg type='i' name='result' direction='out'/>
                </method>
 
                <signal name='nwk_addr_rsp'>
index 879ba23..cd83955 100644 (file)
@@ -22,7 +22,7 @@
 
 static void *_service_interface_ref_zigbee_service(ZigBeeServiceInterface *service_interface)
 {
-       ZigbeeObjectSkeleton *zigbee_object;
+       ZigbeeObjectSkeleton *zigbee_object = NULL;
        ZigbeeCustomData_t *custom_data = NULL;
        ZigbeeService *service = NULL;
 
@@ -34,7 +34,7 @@ static void *_service_interface_ref_zigbee_service(ZigBeeServiceInterface *servi
 
        /* Get zigbee object */
        zigbee_object = g_hash_table_lookup(custom_data->objects, ZIGBEE_SERVICE_PATH);
-       if (zigbee_object) {
+       if (NULL == zigbee_object) {
                Z_LOGW("Cannot find ZigBee D-BUS interface object!", zigbee_object);
                return NULL;
        }
@@ -51,11 +51,16 @@ static void on_service_enable_resp(ZigBeeServiceInterface *service_interface,
 
        ZigbeeService *service_object;
        GDBusMethodInvocation *invocation;
+       ZigbeeServiceServiceState_t *payload =
+               (ZigbeeServiceServiceState_t*)resp_data;
 
        NOT_USED(service_interface);
        NOT_USED(request_id);
-       NOT_USED(resp_data);
-       NOT_USED(resp_data_len);
+
+       if (NULL == resp_data || 0 == resp_data_len) {
+               Z_LOGE("resp_data is null");
+               return;
+       }
 
        service_object = zigbee_service_dbus_interface_ref_interface_object(cb_data);
        zblib_check_null_ret("service_object", service_object);
@@ -63,7 +68,8 @@ static void on_service_enable_resp(ZigBeeServiceInterface *service_interface,
        invocation = zigbee_service_dbus_interface_ref_invocation(cb_data);
        zblib_check_null_ret("invocation", invocation);
 
-       zigbee_service_complete_enable(service_object, invocation, TRUE);
+       zigbee_service_complete_enable(service_object, invocation,
+               payload->result, payload->enabled);
 
        g_free(cb_data);
 }
@@ -121,11 +127,15 @@ static void on_service_disable_resp(ZigBeeServiceInterface *service_interface,
 
        ZigbeeService *service_object;
        GDBusMethodInvocation *invocation;
+       ZigbeeGeneralResp_t *payload = (ZigbeeGeneralResp_t*)resp_data;
 
        NOT_USED(service_interface);
        NOT_USED(request_id);
-       NOT_USED(resp_data);
-       NOT_USED(resp_data_len);
+
+       if (NULL == resp_data || 0 == resp_data_len) {
+               Z_LOGE("resp_data is null");
+               return;
+       }
 
        service_object = zigbee_service_dbus_interface_ref_interface_object(cb_data);
        zblib_check_null_ret("service_object", service_object);
@@ -133,7 +143,7 @@ static void on_service_disable_resp(ZigBeeServiceInterface *service_interface,
        invocation = zigbee_service_dbus_interface_ref_invocation(cb_data);
        zblib_check_null_ret("invocation", invocation);
 
-       zigbee_service_complete_disable(service_object, invocation);
+       zigbee_service_complete_disable(service_object, invocation, payload->result);
 
        g_free(cb_data);
 }
@@ -189,11 +199,15 @@ static void on_service_zb_hw_reset_resp(ZigBeeServiceInterface *service_interfac
 
        ZigbeeService *service_object;
        GDBusMethodInvocation *invocation;
+       ZigbeeGeneralResp_t *payload = (ZigbeeGeneralResp_t*)resp_data;
 
        NOT_USED(service_interface);
        NOT_USED(request_id);
-       NOT_USED(resp_data);
-       NOT_USED(resp_data_len);
+
+       if (NULL == resp_data || 0 == resp_data_len) {
+               Z_LOGE("resp_data is null");
+               return;
+       }
 
        service_object = zigbee_service_dbus_interface_ref_interface_object(cb_data);
        zblib_check_null_ret("service_object", service_object);
@@ -201,7 +215,7 @@ static void on_service_zb_hw_reset_resp(ZigBeeServiceInterface *service_interfac
        invocation = zigbee_service_dbus_interface_ref_invocation(cb_data);
        zblib_check_null_ret("invocation", invocation);
 
-       zigbee_service_complete_zb_hw_reset(service_object, invocation);
+       zigbee_service_complete_zb_hw_reset(service_object, invocation, payload->result);
 
        g_free(cb_data);
 }
@@ -257,11 +271,15 @@ static void on_service_form_network_resp(ZigBeeServiceInterface *service_interfa
 
        ZigbeeService *service_object;
        GDBusMethodInvocation *invocation;
+       ZigbeeGeneralResp_t *payload = (ZigbeeGeneralResp_t*)resp_data;
 
        NOT_USED(service_interface);
        NOT_USED(request_id);
-       NOT_USED(resp_data);
-       NOT_USED(resp_data_len);
+
+       if (NULL == resp_data || 0 == resp_data_len) {
+               Z_LOGE("resp_data is null");
+               return;
+       }
 
        service_object = zigbee_service_dbus_interface_ref_interface_object(cb_data);
        zblib_check_null_ret("service_object", service_object);
@@ -269,7 +287,7 @@ static void on_service_form_network_resp(ZigBeeServiceInterface *service_interfa
        invocation = zigbee_service_dbus_interface_ref_invocation(cb_data);
        zblib_check_null_ret("invocation", invocation);
 
-       zigbee_service_complete_form_network(service_object, invocation);
+       zigbee_service_complete_form_network(service_object, invocation, payload->result);
 
        g_free(cb_data);
 }
@@ -325,11 +343,15 @@ static void on_service_coex_start_resp(ZigBeeServiceInterface *service_interface
 
        ZigbeeService *service_object;
        GDBusMethodInvocation *invocation;
+       ZigbeeGeneralResp_t *payload = (ZigbeeGeneralResp_t*)resp_data;
 
        NOT_USED(service_interface);
        NOT_USED(request_id);
-       NOT_USED(resp_data);
-       NOT_USED(resp_data_len);
+
+       if (NULL == resp_data || 0 == resp_data_len) {
+               Z_LOGE("resp_data is null");
+               return;
+       }
 
        service_object = zigbee_service_dbus_interface_ref_interface_object(cb_data);
        zblib_check_null_ret("service_object", service_object);
@@ -337,7 +359,7 @@ static void on_service_coex_start_resp(ZigBeeServiceInterface *service_interface
        invocation = zigbee_service_dbus_interface_ref_invocation(cb_data);
        zblib_check_null_ret("invocation", invocation);
 
-       zigbee_service_complete_coex_start(service_object, invocation);
+       zigbee_service_complete_coex_start(service_object, invocation, payload->result);
 
        g_free(cb_data);
 }
@@ -400,11 +422,15 @@ static void on_service_coex_stop_resp(ZigBeeServiceInterface *service_interface,
 
        ZigbeeService *service_object;
        GDBusMethodInvocation *invocation;
+       ZigbeeGeneralResp_t *payload = (ZigbeeGeneralResp_t*)resp_data;
 
        NOT_USED(service_interface);
        NOT_USED(request_id);
-       NOT_USED(resp_data);
-       NOT_USED(resp_data_len);
+
+       if (NULL == resp_data || 0 == resp_data_len) {
+               Z_LOGE("resp_data is null");
+               return;
+       }
 
        service_object = zigbee_service_dbus_interface_ref_interface_object(cb_data);
        zblib_check_null_ret("service_object", service_object);
@@ -412,7 +438,7 @@ static void on_service_coex_stop_resp(ZigBeeServiceInterface *service_interface,
        invocation = zigbee_service_dbus_interface_ref_invocation(cb_data);
        zblib_check_null_ret("invocation", invocation);
 
-       zigbee_service_complete_coex_stop(service_object, invocation);
+       zigbee_service_complete_coex_stop(service_object, invocation, payload->result);
 
        g_free(cb_data);
 }
@@ -468,11 +494,15 @@ static void on_service_leave_network_resp(ZigBeeServiceInterface *service_interf
 
        ZigbeeService *service_object;
        GDBusMethodInvocation *invocation;
+       ZigbeeGeneralResp_t *payload = (ZigbeeGeneralResp_t*)resp_data;
 
        NOT_USED(service_interface);
        NOT_USED(request_id);
-       NOT_USED(resp_data);
-       NOT_USED(resp_data_len);
+
+       if (NULL == resp_data || 0 == resp_data_len) {
+               Z_LOGE("resp_data is null");
+               return;
+       }
 
        service_object = zigbee_service_dbus_interface_ref_interface_object(cb_data);
        zblib_check_null_ret("service_object", service_object);
@@ -480,7 +510,7 @@ static void on_service_leave_network_resp(ZigBeeServiceInterface *service_interf
        invocation = zigbee_service_dbus_interface_ref_invocation(cb_data);
        zblib_check_null_ret("invocation", invocation);
 
-       zigbee_service_complete_leave_network(service_object, invocation);
+       zigbee_service_complete_leave_network(service_object, invocation, payload->result);
 
        g_free(cb_data);
 }
@@ -537,12 +567,16 @@ static void on_service_get_network_info_resp(ZigBeeServiceInterface *service_int
        ZigbeeService *service_object;
        GDBusMethodInvocation *invocation;
 
-       ZigbeeServiceGetNetworkInfo_t payload;
+       ZigbeeServiceGetNetworkInfo_t *payload = 
+               (ZigbeeServiceGetNetworkInfo_t*)resp_data;
 
        NOT_USED(service_interface);
        NOT_USED(request_id);
-       NOT_USED(resp_data);
-       NOT_USED(resp_data_len);
+
+       if (NULL == resp_data || 0 == resp_data_len) {
+               Z_LOGE("resp_data is null");
+               return;
+       }
 
        service_object = zigbee_service_dbus_interface_ref_interface_object(cb_data);
        zblib_check_null_ret("service_object", service_object);
@@ -550,10 +584,9 @@ static void on_service_get_network_info_resp(ZigBeeServiceInterface *service_int
        invocation = zigbee_service_dbus_interface_ref_invocation(cb_data);
        zblib_check_null_ret("invocation", invocation);
 
-       memcpy(&payload, resp_data, resp_data_len);
        zigbee_service_complete_get_network_info(service_object, invocation,
-               payload.eui64, payload.node_id, payload.pan_id, payload.channel,
-               payload.radio_tx_power);
+               payload->result, payload->eui64, payload->node_id,
+               payload->pan_id, payload->channel, payload->radio_tx_power);
 
        g_free(cb_data);
 }
@@ -609,11 +642,15 @@ static void on_service_permit_join_resp(ZigBeeServiceInterface *service_interfac
 
        ZigbeeService *service_object;
        GDBusMethodInvocation *invocation;
+       ZigbeeGeneralResp_t *payload = (ZigbeeGeneralResp_t*)resp_data;
 
        NOT_USED(service_interface);
        NOT_USED(request_id);
-       NOT_USED(resp_data);
-       NOT_USED(resp_data_len);
+
+       if (NULL == resp_data || 0 == resp_data_len) {
+               Z_LOGE("resp_data is null");
+               return;
+       }
 
        service_object = zigbee_service_dbus_interface_ref_interface_object(cb_data);
        zblib_check_null_ret("service_object", service_object);
@@ -621,7 +658,7 @@ static void on_service_permit_join_resp(ZigBeeServiceInterface *service_interfac
        invocation = zigbee_service_dbus_interface_ref_invocation(cb_data);
        zblib_check_null_ret("invocation", invocation);
 
-       zigbee_service_complete_permit_join(service_object, invocation);
+       zigbee_service_complete_permit_join(service_object, invocation, payload->result);
 
        g_free(cb_data);
 }
@@ -686,11 +723,15 @@ static void on_service_leave_request_resp(ZigBeeServiceInterface *service_interf
 
        ZigbeeService *service_object;
        GDBusMethodInvocation *invocation;
+       ZigbeeGeneralResp_t *payload = (ZigbeeGeneralResp_t*)resp_data;
 
        NOT_USED(service_interface);
        NOT_USED(request_id);
-       NOT_USED(resp_data);
-       NOT_USED(resp_data_len);
+
+       if (NULL == resp_data || 0 == resp_data_len) {
+               Z_LOGE("resp_data is null");
+               return;
+       }
 
        service_object = zigbee_service_dbus_interface_ref_interface_object(cb_data);
        zblib_check_null_ret("service_object", service_object);
@@ -698,7 +739,7 @@ static void on_service_leave_request_resp(ZigBeeServiceInterface *service_interf
        invocation = zigbee_service_dbus_interface_ref_invocation(cb_data);
        zblib_check_null_ret("invocation", invocation);
 
-       zigbee_service_complete_leave_request(service_object, invocation);
+       zigbee_service_complete_leave_request(service_object, invocation, payload->result);
 
        g_free(cb_data);
 }
@@ -789,7 +830,8 @@ static void on_service_get_device_list_resp(ZigBeeServiceInterface *service_inte
        invocation = zigbee_service_dbus_interface_ref_invocation(cb_data);
        zblib_check_null_ret("invocation", invocation);
 
-       zigbee_service_complete_get_device_list(service_object, invocation,     resp_data);
+       /* To-To : zigbee_service_complete_get_device_list */
+       //zigbee_service_complete_get_device_list(service_object, invocation,   resp_data);
 
        g_free(cb_data);
 }
@@ -863,7 +905,7 @@ static void on_service_get_mac_resp(ZigBeeServiceInterface *service_interface,
        zblib_check_null_ret("invocation", invocation);
 
        /* Todo : plugin must load resp_data as char pointer */
-       zigbee_service_complete_get_mac(service_object, invocation, resp_data);
+       //zigbee_service_complete_get_mac(service_object, invocation, resp_data);
 
        g_free(cb_data);
 
@@ -937,7 +979,8 @@ static void on_service_get_device_info_resp(ZigBeeServiceInterface *service_inte
        invocation = zigbee_service_dbus_interface_ref_invocation(cb_data);
        zblib_check_null_ret("invocation", invocation);
 
-       zigbee_service_complete_get_device_info(service_object, invocation, resp_data);
+       /* To-Do : zigbee_service_complete_get_device_list */
+       //zigbee_service_complete_get_device_info(service_object, invocation, resp_data);
 
        g_free(cb_data);
 }
@@ -1011,7 +1054,7 @@ static void on_service_get_endpoint_list_resp(ZigBeeServiceInterface *service_in
        zblib_check_null_ret("invocation", invocation);
 
        /* To fix : end-points must be changed gchar* -> GVariant ay */
-       zigbee_service_complete_get_endpoint_list(service_object, invocation, resp_data);
+       //zigbee_service_complete_get_endpoint_list(service_object, invocation, resp_data);
 
        g_free(cb_data);
 }
@@ -1099,7 +1142,8 @@ static void on_service_get_cluster_list_resp(ZigBeeServiceInterface *service_int
        invocation = zigbee_service_dbus_interface_ref_invocation(cb_data);
        zblib_check_null_ret("invocation", invocation);
 
-       zigbee_service_complete_get_cluster_list(service_object, invocation, resp_data);
+       /* To-Do : zigbee_service_complete_get_cluster_list */
+       //zigbee_service_complete_get_cluster_list(service_object, invocation, resp_data);
 
        g_free(cb_data);
 }
@@ -1172,7 +1216,8 @@ static void on_service_get_node_type_resp(ZigBeeServiceInterface *service_interf
 
        ZigbeeService *service_object;
        GDBusMethodInvocation *invocation;
-       ZigbeeServiceServiceNodeType_t payload;
+       ZigbeeServiceServiceNodeType_t *payload = 
+               (ZigbeeServiceServiceNodeType_t *)resp_data;
 
        NOT_USED(cb_data);
        NOT_USED(service_interface);
@@ -1184,15 +1229,14 @@ static void on_service_get_node_type_resp(ZigBeeServiceInterface *service_interf
                return;
        }
 
-       memcpy(&payload, resp_data, resp_data_len);
-
        service_object = zigbee_service_dbus_interface_ref_interface_object(cb_data);
        zblib_check_null_ret("service_object", service_object);
 
        invocation = zigbee_service_dbus_interface_ref_invocation(cb_data);
        zblib_check_null_ret("invocation", invocation);
 
-       zigbee_service_complete_get_node_type(service_object, invocation, payload.node_type);
+       zigbee_service_complete_get_node_type(service_object, invocation,
+               payload->result, payload->node_type);
 
        g_free(cb_data);
 }
@@ -1274,9 +1318,12 @@ void zigbee_service_dbus_interface_service_notification(ZigBeeServiceInterface *
 
        switch(noti_id) {
        case ZBLIB_SERVICE_NOTI_FORM_NETWORK_DONE: {
-               ZigbeeServiceServiceFormNetworkDone_t panid_t;
-               memcpy(&panid_t, noti_data, noti_data_len);
-               zigbee_service_emit_form_network_done(service_object, panid_t.pan_id);
+               ZigbeeServiceServiceFormNetworkDone_t *panid_t = 
+                       (ZigbeeServiceServiceFormNetworkDone_t*)noti_data;
+
+               Z_LOGD("form_network_done : [0x%X]", panid_t->pan_id);
+               
+               zigbee_service_emit_form_network_done(service_object, panid_t->pan_id);
        }
        break;
        case ZBLIB_SERVICE_NOTI_CHILD_JOINED: {
index f9d632e..d5af5ef 100644 (file)
@@ -61,7 +61,7 @@ typedef enum {
 
 /**< ZigBee 'service' notification IDs */
 typedef enum {
-       ZBLIB_SERVICE_NOTI_FORM_NETWORK_DONE, /**< Form network done */
+       ZBLIB_SERVICE_NOTI_FORM_NETWORK_DONE = 1, /**< Form network done */
        ZBLIB_SERVICE_NOTI_CHILD_JOINED, /**< Child is joined */
        ZBLIB_SERVICE_NOTI_CHILD_REJOINED, /**< Child is rejoined */
        ZBLIB_SERVICE_NOTI_CHILD_LEFT, /**< Child left */