change unowned device to owned device when registered 33/77733/1
authoryoungman <yman.jung@samsung.com>
Thu, 30 Jun 2016 23:26:44 +0000 (08:26 +0900)
committeryoungman <yman.jung@samsung.com>
Thu, 30 Jun 2016 23:26:44 +0000 (08:26 +0900)
Change-Id: Iec5362f24d23b90f7b9ab1da9359cd462eefe630
Signed-off-by: youngman <yman.jung@samsung.com>
lib/icl-provisioning-struct.c
lib/icl-provisioning-struct.h
lib/icl-provisioning.c

index 945d5cdc0ce751c8efdbc08ec7fe1e37accd3a4b..c127a63a88b2e1c954e54fe4b615ea1cf1b7530f 100644 (file)
@@ -572,7 +572,7 @@ bool icl_provisioning_compare_oic_uuid(OicUuid_t *a, OicUuid_t *b)
 }
 
 
-int icl_provisioning_devices_move_device(OicUuid_t *a,
+void icl_provisioning_devices_move_device(OicUuid_t *a,
                iotcon_provisioning_devices_h unowned_devices,
                iotcon_provisioning_devices_h owned_devices)
 {
@@ -595,9 +595,9 @@ int icl_provisioning_devices_move_device(OicUuid_t *a,
 
                current->next = owned_dev_list;
                owned_devices->dev_list = current;
-       }
 
-       return IOTCON_ERROR_NONE;
+               return;
+       }
 }
 
 
index 350120bfcec0b785e8bdbaf4391aad05f2ab4d5f..772582a42abd0262df920ffcb026fb8a75d40ce6 100644 (file)
@@ -33,7 +33,7 @@ int icl_provisioning_devices_create(OCProvisionDev_t *dev_list,
 OCProvisionDev_t* icl_provisioning_devices_get_devices(
                iotcon_provisioning_devices_h devices);
 
-int icl_provisioning_devices_move_device(OicUuid_t *a,
+void icl_provisioning_devices_move_device(OicUuid_t *a,
                iotcon_provisioning_devices_h unowned_devices,
                iotcon_provisioning_devices_h owned_devices);
 
index bbf21534407843212edb9f2003171f0de81f55b5..c8992b8c3f3497eab01f079b643b5ac8e616865d 100644 (file)
@@ -643,15 +643,21 @@ static void _provisioning_ownership_transfer_cb_container_destroy(
 static int _provisioning_ownership_transfer_get_result(
                iotcon_provisioning_device_h device, OCProvisionResult_t *result_list, int count)
 {
-       int i;
+       int i, ret;
        OCProvisionDev_t *oic_device;
 
        oic_device = icl_provisioning_device_get_device(device);
 
        for (i = 0; i < count; i++) {
                if (true == icl_provisioning_compare_oic_uuid(&oic_device->doxm->deviceID,
-                                       (OicUuid_t*)&result_list[i].deviceId))
-                       return _provisioning_parse_oic_error(result_list[i].res);
+                                       (OicUuid_t*)&result_list[i].deviceId)) {
+                       ret = _provisioning_parse_oic_error(result_list[i].res);
+                       if (IOTCON_ERROR_NONE == ret) {
+                               icl_provisioning_devices_move_device((OicUuid_t*)&result_list[i].deviceId,
+                                               icl_unowned_devices, icl_owned_devices);
+                       }
+                       return ret;
+               }
        }
 
        return IOTCON_ERROR_IOTIVITY;