Abhay agarwal [Fri, 27 Dec 2019 03:24:19 +0000 (08:54 +0530)]
Fix device payload update query
Signed-off-by: Abhay agarwal <ay.agarwal@samsung.com>
Abhay agarwal [Thu, 26 Dec 2019 15:53:33 +0000 (21:23 +0530)]
Fix device service list in ua-manager for NULL payloads
Signed-off-by: Abhay agarwal <ay.agarwal@samsung.com>
Abhay agarwal [Thu, 26 Dec 2019 13:48:33 +0000 (19:18 +0530)]
Store payload device user data in database
Signed-off-by: Abhay agarwal <ay.agarwal@samsung.com>
Abhay agarwal [Thu, 26 Dec 2019 04:24:44 +0000 (09:54 +0530)]
Set length for payload device uid
Signed-off-by: Abhay agarwal <ay.agarwal@samsung.com>
Abhay agarwal [Tue, 24 Dec 2019 13:34:28 +0000 (19:04 +0530)]
Fix payload copy functions
Signed-off-by: Abhay agarwal <ay.agarwal@samsung.com>
Abhay agarwal [Tue, 24 Dec 2019 09:39:00 +0000 (15:09 +0530)]
update handle device detected for payload handling
Signed-off-by: Abhay agarwal <ay.agarwal@samsung.com>
Abhay agarwal [Mon, 23 Dec 2019 13:45:09 +0000 (19:15 +0530)]
update svc_dev list while registering device to service
Signed-off-by: Abhay agarwal <ay.agarwal@samsung.com>
Abhay agarwal [Mon, 23 Dec 2019 12:16:10 +0000 (17:46 +0530)]
Update registered device list to plugin with payload information
Signed-off-by: Abhay agarwal <ay.agarwal@samsung.com>
Abhay agarwal [Fri, 20 Dec 2019 12:49:30 +0000 (18:19 +0530)]
Update svc_dev info while adding payload to service
Signed-off-by: Abhay agarwal <ay.agarwal@samsung.com>
Abhay agarwal [Thu, 19 Dec 2019 12:02:50 +0000 (17:32 +0530)]
Add service-device-payload list in device tech
Signed-off-by: Abhay agarwal <ay.agarwal@samsung.com>
Abhay agarwal [Wed, 18 Dec 2019 09:29:29 +0000 (14:59 +0530)]
Fix copy function of payload
Signed-off-by: Abhay agarwal <ay.agarwal@samsung.com>
Abhay agarwal [Tue, 17 Dec 2019 14:24:08 +0000 (19:54 +0530)]
Do not return from uam core initialization if no data in database
- All the database tables must be checked before returning from
uam_core_init function
- Some/All of tables of uam database may be empty and can be
updated by application
Signed-off-by: Abhay agarwal <ay.agarwal@samsung.com>
Abhay agarwal [Tue, 17 Dec 2019 12:27:35 +0000 (17:57 +0530)]
Update core payload list from database during init
Signed-off-by: Abhay agarwal <ay.agarwal@samsung.com>
Abhay agarwal [Tue, 17 Dec 2019 11:22:47 +0000 (16:52 +0530)]
Add database API to get all payloads
Signed-off-by: Abhay agarwal <ay.agarwal@samsung.com>
Abhay agarwal [Thu, 12 Dec 2019 09:55:02 +0000 (15:25 +0530)]
Add API to get payloads list
Signed-off-by: Abhay agarwal <ay.agarwal@samsung.com>
Abhay agarwal [Fri, 6 Dec 2019 04:07:56 +0000 (09:37 +0530)]
Add database APIs to update device service payload info
Signed-off-by: Abhay agarwal <ay.agarwal@samsung.com>
Abhay agarwal [Wed, 4 Dec 2019 08:50:22 +0000 (14:20 +0530)]
Fix device payload insert
Signed-off-by: Abhay agarwal <ay.agarwal@samsung.com>
Abhay agarwal [Mon, 2 Dec 2019 10:06:53 +0000 (15:36 +0530)]
Add ua-manager core API to insert payload information to a service
Signed-off-by: Abhay agarwal <ay.agarwal@samsung.com>
Abhay agarwal [Fri, 29 Nov 2019 08:51:15 +0000 (14:21 +0530)]
Add database API to insert device payload
Signed-off-by: Abhay agarwal <ay.agarwal@samsung.com>
Abhay agarwal [Fri, 29 Nov 2019 05:52:07 +0000 (11:22 +0530)]
Add ua-manager core APIs to insert payload information
Signed-off-by: Abhay agarwal <ay.agarwal@samsung.com>
Abhay agarwal [Thu, 28 Nov 2019 11:35:41 +0000 (17:05 +0530)]
Remove payload from device
payload would be added to device-service instead of only being device specific
Signed-off-by: Abhay agarwal <ay.agarwal@samsung.com>
Abhay agarwal [Thu, 28 Nov 2019 10:48:30 +0000 (16:18 +0530)]
Seperate payload database table from device table
For a device, each service can have different payload.
Signed-off-by: Abhay agarwal <ay.agarwal@samsung.com>
Abhay agarwal [Thu, 28 Nov 2019 04:23:38 +0000 (09:53 +0530)]
Rename duid to device_uid
Signed-off-by: Abhay agarwal <ay.agarwal@samsung.com>
Abhay agarwal [Wed, 27 Nov 2019 06:36:02 +0000 (12:06 +0530)]
Rename ble payload purpose to secondary key
Signed-off-by: Abhay agarwal <ay.agarwal@samsung.com>
Abhay agarwal [Wed, 27 Nov 2019 06:08:41 +0000 (11:38 +0530)]
Rename ble payload service_id to primary_key
Renamed to hide SEC BLE Adv format
Signed-off-by: Abhay agarwal <ay.agarwal@samsung.com>
saerome.kim [Thu, 12 Dec 2019 06:10:38 +0000 (15:10 +0900)]
Fix crash issue
- problem: Crash takes place when doing adding a device and detection
simultaneously.
- Cause: timer callback tries to remove freed memory.
- Solution: Remove timer when removing an async request.
Change-Id: I24be2a3c53ee18e8f3c97be46348a05b03a0782d
Signed-off-by: saerome.kim <saerome.kim@samsung.com>
Lokesh [Wed, 11 Dec 2019 10:19:41 +0000 (15:49 +0530)]
Change UAM_ASYNC_REQUEST_TIMEOUT to 11 from 10 sec
Problem: While adding wifi device with broadcast mac address, and device is not
discoverable, the request_list is cleaned by __uam_request_context_timeout_cb()
before plugin callback came (within 10 sec).
Solution: Plugin tries for 10 seconds, so wait for 11 seconds.
Change-Id: I2bbfc38ccfec65035ecfbb61bf30c20749ee44dd
Signed-off-by: Lokesh <l.kasana@samsung.com>
saerome.kim [Thu, 5 Dec 2019 10:25:17 +0000 (19:25 +0900)]
Remove unnecessary error log
Change-Id: I4fa6b31e6511ccef0e3b827b939663146eb9a4bc
Signed-off-by: saerome.kim <saerome.kim@samsung.com>
saerome.kim [Thu, 5 Dec 2019 09:22:22 +0000 (18:22 +0900)]
Fix that the device is not added while detecting devices.
- Problem: If adding a device while detecting the device, the first device
detection callback is not called.
- Cause: If the broadcast MAC is used as a source filed in APR Request packet,
can't distinguish ARP Response whether the device detected or the device added.
- Solution: Modified the device is not added while detecting devices.
Change-Id: Iad779411cecc89869b1aa77522cefd22e7106ecb
Signed-off-by: saerome.kim <saerome.kim@samsung.com>
saerome.kim [Thu, 5 Dec 2019 08:35:55 +0000 (17:35 +0900)]
Increase 'enable' method timeout
- Problem: At the time of booting, failt to start ua-manager.
- Cause: It takes a long time for sensor framework to operate.
- Solution: Temporarily increase the response waiting time of the enable method
to start ua-amanger.
Change-Id: I136d689180535ffe86431c97ad82eb00fb259632
Signed-off-by: saerome.kim <saerome.kim@samsung.com>
saerome.kim [Thu, 5 Dec 2019 05:38:06 +0000 (14:38 +0900)]
Fix the issue that MAC cannot be updated when adding a device to broadcast MAC
- Problem: The actual MAC is not applied even if the ARP response is received
from the device added with broadcast MAC.
- Cause: MAC is managed as a unique key.
- Solution: Modified so that MAC can be changed.
Change-Id: Ic9f1b1b0a9b5694b9275302354df9e36a78d3da4
Signed-off-by: saerome.kim <saerome.kim@samsung.com>
Lokesh [Wed, 4 Dec 2019 08:49:57 +0000 (14:19 +0530)]
Revert "Add DB functionality for device users mapping"
This reverts commit
1afd2d3aeb9758f4f894c3aa917874da82d33c3b.
Change-Id: I5a76569e7190643c7dfc726dbdeca01d1cb27723
Lokesh [Wed, 4 Dec 2019 08:49:12 +0000 (14:19 +0530)]
Revert "Identify whether device is already registered and not"
This reverts commit
5ac8bb7cef537a0db489b1a364c4bffbf8ca0dbf.
Change-Id: I5164eb00ff30c9006786ce963ba1810023588364
Lokesh [Wed, 4 Dec 2019 08:47:51 +0000 (14:17 +0530)]
Revert "Fix the problem that can't access the device-users table"
This reverts commit
798a02d0faca05dc6a7a5124c382471e43efd381.
Change-Id: Iae2c03b1fa6c9826c420f9e3d9a6de07820643a4
Signed-off-by: Lokesh <l.kasana@samsung.com>
saerome.kim [Tue, 3 Dec 2019 12:29:45 +0000 (21:29 +0900)]
Fix memory leak
- Problem: Even clients app. died, ua-manager keeps dead client's
monitor handle.
- Cause: ua-manager does not care for the dead client app.
- Solution: Remove the client's monitor handle if the client requests un-initialization.
Change-Id: I992bf5a6234675fbc3b81fad7f97b530e4019ae4
Signed-off-by: saerome.kim <saerome.kim@samsung.com>
Lokesh [Fri, 29 Nov 2019 08:19:46 +0000 (13:49 +0530)]
[Fix] Write service specific device last_seen in DB
Issue:
On device detection, update service specific device last_seen in DB.
At time of service_add_device/user(), this last_seen must initialisze from 0,
as per jira statement(https://code.sec.samsung.net/jira/browse/TSYSCON-1948).
Change-Id: I4c7d46fc6ff43f6a09d27df671805eb5f33bfb69
Signed-off-by: Lokesh <l.kasana@samsung.com>
saerome.kim [Fri, 29 Nov 2019 04:43:17 +0000 (13:43 +0900)]
Fix the problem that can't access the device-users table
- Problem: After DB reset, ua-manager can't create the device-users table.
- Cause: Attempt to access a table that does not exist.
- Solution: Modified the device-users table name as intended.
Signed-off-by: saerome.kim <saerome.kim@samsung.com>
saerome.kim [Mon, 25 Nov 2019 11:43:29 +0000 (20:43 +0900)]
Remove error-logging when removing un-opened DB
- Problem: An error is displayed while attempting to delete an unopened DB.
- Cause: vendor plugin tried to clear DB but ua-manager did not open DB file.
- Solution: If the DB is not open, the error is returned.
Change-Id: Ifc3f13cc18ab362ebd1c18910ee6a430449b0732
Signed-off-by: saerome.kim <saerome.kim@samsung.com>
saerome.kim [Mon, 25 Nov 2019 11:33:14 +0000 (20:33 +0900)]
Make unclear code as clear
- Problem: The Coverity regarded that ua-manager refering freed() pointer.
- Cause: The input param and the param in the list may not be the same value.
- Solution: Clarify variable name.
Change-Id: I13597ecfcd79843e7ba7222b2282e6e5dd8b6dc3
Signed-off-by: saerome.kim <saerome.kim@samsung.com>
Lokesh [Fri, 22 Nov 2019 02:04:04 +0000 (07:34 +0530)]
Identify whether device is already registered and not
Change-Id: I14be9dd70c03f3d40e2b4d4e953b5ad72c2c5c33
Signed-off-by: Lokesh <l.kasana@samsung.com>
Lokesh [Fri, 22 Nov 2019 02:04:04 +0000 (07:34 +0530)]
Add DB functionality for device users mapping
Change-Id: Id41e248ce14ed1f1fdb75fec2aa2680077e5855d
Signed-off-by: Lokesh <l.kasana@samsung.com>
saerome.kim [Fri, 22 Nov 2019 01:31:15 +0000 (10:31 +0900)]
Fix build error occurred in sensor plugins
- Problem: Build break took place when building Light/Motion plugins.
- Cause: member variable name had been changed in uas_sensor_info_t.
- Solution: Backout the change.
Change-Id: Id8c10d798a28427451d81b16772603490f24dcd0
Signed-off-by: saerome.kim <saerome.kim@samsung.com>
Nishant Chaprana [Thu, 21 Nov 2019 14:12:36 +0000 (19:42 +0530)]
Provide pending request TRUE only for already registered but not verified device.
- Problem: Pending request returns TRUE when last registered device which is not
yet verified by plugin, even for different device.
- Cause: __uam_manager_is_request_pending() only checks for matching function
before returning result.
- Solution: Match device_id for UAM_REQUEST_ADD_DEVICE before returning result.
Change-Id: Ie0d148f821932eb195547c47939917bb7bdbba60
Signed-off-by: Nishant Chaprana <n.chaprana@samsung.com>
Nishant Chaprana [Thu, 21 Nov 2019 14:04:41 +0000 (19:34 +0530)]
Fix handle leak when loading plugins
- Problem: dlopen() returned handle was leaking when loading plugins in loop.
- Cause: dlcose() not called when plugin add operation fails.
- Solution: Call dlcose() when plugin add operation fails.
Change-Id: Id3c1d9a42fb2ef8b9b9e5b64393c40f6e771d9fc
Signed-off-by: Nishant Chaprana <n.chaprana@samsung.com>
saerome.kim [Thu, 21 Nov 2019 08:33:14 +0000 (17:33 +0900)]
Fix crash issue
- Problem: A crash may occur in a multi-client environment.
- Cause: A crash may occur if a request is deleted in the middle while
processing the async request included in the list.
- Solution: Modified so that the list is not broken by deleting the request
while processing the request.
Change-Id: Ic51e4571ea10d7922b429d2712b8a3ed4dccc512
Signed-off-by: saerome.kim <saerome.kim@samsung.com>
saerome.kim [Thu, 21 Nov 2019 08:29:56 +0000 (17:29 +0900)]
Update a missing column for device-services table
Change-Id: I1f9b7864cc44bb37e63c51dc713e7c0c38d07194
Signed-off-by: saerome.kim <saerome.kim@samsung.com>
saerome.kim [Thu, 21 Nov 2019 04:39:37 +0000 (13:39 +0900)]
Change the last seen that has never been added or detected by the service to 0
- Problem: The last_seen information may not be 0 even if the service is not executed.
- Cause: We are adding the last_seen info regardless the service.
- Solution: The device information added to the service is initialized to 0.
Change-Id: I14249599db420b25e47098c83eaa17ed1d65182e
Signed-off-by: Lokesh <l.kasana@samsung.com>
saerome.kim [Thu, 21 Nov 2019 04:39:37 +0000 (13:39 +0900)]
Fix the problem that can't add a device from next time once add_device_failed.
- Problem: Once add_device failed, we can't add the device anymore.
- Cause: The request stored in the internal queue is not deleted.
- Solution: If the request is not processed for a certain period of time,
remove the request from the queue
Change-Id: I14990e3854d599ca3adfed491f64bb215e94d232
Signed-off-by: saerome.kim <saerome.kim@samsung.com>
saerome.kim [Wed, 20 Nov 2019 11:10:56 +0000 (20:10 +0900)]
Modify to store last seen information of device added by service in DB
- Problem: Once a client app restarts, the previous last seen information is 0.
- Cause: As a requirement, last seen information of service-specific device
should be stored in DB
- Solution: Save the last seen information to the DB.
Change-Id: Ifd1e41c0c822b2274262d3aea6c723e192945822
Signed-off-by: saerome.kim <saerome.kim@samsung.com>
Lokesh [Tue, 19 Nov 2019 05:36:17 +0000 (11:06 +0530)]
Reduce calls to _uam_get_timestamp()
Instead use the value stored in tech->timestamp
Change-Id: I1017043c45a0fd53cd2f962c6168a1e7a902c7d2
Signed-off-by: Lokesh <l.kasana@samsung.com>
Lokesh [Mon, 18 Nov 2019 14:00:04 +0000 (19:30 +0530)]
Support multiple timestamp for each service
Change-Id: I67acdcfa5e4ba8a6d8de68f7e37dfcd4f58adf01
Signed-off-by: Lokesh <l.kasana@samsung.com>
saerome.kim [Mon, 18 Nov 2019 04:13:03 +0000 (13:13 +0900)]
Fix memory leak
- Problem: heap is increasing a bit by bit.
- Cause: BT_MAC is not freed.
- Solution: make BT_MAC free.
Change-Id: I0f118ba74c2e62c81561080751338a4925044b2a
Signed-off-by: saerome.kim <saerome.kim@samsung.com>
saerome.kim [Thu, 14 Nov 2019 09:59:11 +0000 (18:59 +0900)]
Change the timestamp value to use the monotonic timer
- Problem: real-time timestamp causes various problems.
- Cause: If the time zone is changed or the system time is initialized,
the wrong timestamp may be generated.
- Solution:
1. Change to use the monotonic timer when creating a timestamp.
2. Add new plugin API that enables the BLE plugin can save real-time
timestamp.
Change-Id: I2508ecdb15977f6278fb2eeec89dc5caba77537f
Signed-off-by: saerome.kim <saerome.kim@samsung.com>
saerome.kim [Thu, 14 Nov 2019 09:59:11 +0000 (18:59 +0900)]
Change the timestamp value to use the monotonic timer
- Problem: real-time timestamp causes various problems.
- Cause: If the time zone is changed or the system time is initialized,
the wrong timestamp may be generated.
- Solution:
1. Change to use the monotonic timer when creating a timestamp.
2. Add new plugin API that enables the BLE plugin can save real-time
timestamp.
Change-Id: I24c1dbbec39417f6f13ec87dfff8c3239572722c
Signed-off-by: saerome.kim <saerome.kim@samsung.com>
Lokesh [Thu, 14 Nov 2019 11:28:00 +0000 (16:58 +0530)]
Change position of _uam_pm_stop_detection()
Do _uam_pm_stop_detection() for both presence and absence together,
so that motion plugin sends detection_stopped event.
Change-Id: I9fb0e1696c16cb59eb0c3c7f910101844364b5ec
Signed-off-by: Lokesh <l.kasana@samsung.com>
Abhay agarwal [Mon, 11 Nov 2019 06:10:05 +0000 (11:40 +0530)]
Start continuous detection only on sensors present in monitor
Instead of always starting continuous detection, start only when particular
environmental sensor is being detected by atleast one application.
Change-Id: I0e4baac40074fcd7b1cedf139dfe1e773b1c7049
Signed-off-by: Abhay agarwal <ay.agarwal@samsung.com>
Lokesh [Mon, 11 Nov 2019 01:43:55 +0000 (07:13 +0530)]
In detection_stopped event, consider when no environmental sensors exist
1/ If there is no environmental sensor, send UAM_DETECTION_CYCLE_END only once.
2/ First update service->remaining_time, then start various detections.
3/ Environmental sensors may send detection_stopped before start_detection of
connectivity sensor, which results in multiple detection stopped events to CAPI
within a detection window.
Change-Id: I1c149fe8be8f3f86bf053ac8167df765948df72e
Signed-off-by: Lokesh <l.kasana@samsung.com>
Lokesh [Wed, 6 Nov 2019 10:12:39 +0000 (15:42 +0530)]
Detection stopped event updated with detection cycle mid/end
Every one minute we receive environmental presence/absence and detection
stopped calls. Earlier _uam_core_handle_detection_stopped() sends
detection_stopped_event which then called __ua_user_state_clean() and
cleaned recorded WIFI/BLE data in CAPI. Hence it cannot be used for
next one minute cycles of environmental sensors.
Change-Id: Ibad4cbf5e05840b31a593984a0f00f1ca4b72ae9
Signed-off-by: Lokesh <l.kasana@samsung.com>
Lokesh [Thu, 7 Nov 2019 08:40:25 +0000 (14:10 +0530)]
Fix first detection stopped callback due to motion sensor
_uam_core_handle_detection_stopped() should work only if detection has been
started on that sensor previously.
Change-Id: I32b04ed63bc108606a59c0d64066cf9efa42ad52
Signed-off-by: Lokesh <l.kasana@samsung.com>
saerome.kim [Thu, 14 Nov 2019 03:37:49 +0000 (12:37 +0900)]
Fix memory leak
- Problem: during aging test, heap is increasing bit by bit.
- Cause: when updating the device list, the BLE payload is not freed.
- Solution: release BLE payload after updating the device list.
Change-Id: I2019643888883ca1c53ea16d9565e178ab6ec28f
Signed-off-by: saerome.kim <saerome.kim@samsung.com>
saerome.kim [Mon, 11 Nov 2019 10:34:35 +0000 (19:34 +0900)]
Add functionality that allow changing user's name
- Problem: Users want to change their name.
- Cause: it is not supported to change the user name once user information
added to ua-manager DB.
- Solution: Make the user can change his name even user-information added.
Change-Id: I54901e5c24da13239e8cce7d35063d15ed6ca975
Signed-off-by: saerome.kim <saerome.kim@samsung.com>
Abhay agarwal [Mon, 11 Nov 2019 07:40:05 +0000 (13:10 +0530)]
Fix crash issue on sensor status change event
ua-manager crash was observed with sensor status change event
Destination: [(null)], event: [UNKNOWN ERROR], signal: [SensorStatusChanged]
Change-Id: I04610425e6019c51d3bd083ee59084a706e93eff
Signed-off-by: Abhay agarwal <ay.agarwal@samsung.com>
saerome.kim [Fri, 8 Nov 2019 09:46:19 +0000 (18:46 +0900)]
Add the compiler flag required for performing GTest
Change-Id: I3d3b21e4f0dc34e351dd060d4aeff5a72fbee575
Signed-off-by: saerome.kim <saerome.kim@samsung.com>
saerome.kim [Fri, 8 Nov 2019 08:52:10 +0000 (17:52 +0900)]
Fixed the problem where enabler method fails
- Problem: The net.uamd.enabler method call fails.
- Cause: Invoke the 'enable' method to an object is not registered in
dbus system.
- Solution: Remove 'enabler' interface and combine 'enabler' to
'/net/uamd' interface
Change-Id: Ia40394ceb7d83a4305b0c0ab953ea6ffc423f9df
Signed-off-by: saerome.kim <saerome.kim@samsung.com>
saerome.kim [Fri, 8 Nov 2019 08:44:37 +0000 (17:44 +0900)]
Apply secure option
- Problem: There is no FORTIFY option.
- Cause: Unlike the SSP that catches the stack BOF, a protection technique is
needed to catch the BOF that occurs in a general memory buffer.
- Solution: apply FORTIFY and stack-canar options.
Change-Id: I1c1d45f1edfb0e017bdd8a3a3c1f42469f324220
Signed-off-by: saerome.kim <saerome.kim@samsung.com>
saerome.kim [Fri, 8 Nov 2019 06:19:09 +0000 (15:19 +0900)]
Fix the problem of not removing the device added to the default user or service
- Problem: can't remove a device from default-user.
- Cause: A device can be added to a default user or a default service,
but can not be deleted.
- Solution: Deleting the default user checker.
Change-Id: I7bcce4fd4ac45e411e1be19fb793cf1532d366f7
Signed-off-by: saerome.kim <saerome.kim@samsung.com>
saerome.kim [Fri, 8 Nov 2019 06:02:23 +0000 (15:02 +0900)]
Countermeasure if time() returns -1
- Problem: timestamp value may contain abnormal value.
- Cause: time() can retuern -1.
- Solution: We agreed to set the timestamp to 0 when time() returns -1.
Change-Id: I8d6189212589d28f09bac75b6075d7652415f4c7
Signed-off-by: saerome.kim <saerome.kim@samsung.com>
Lokesh [Tue, 5 Nov 2019 08:55:43 +0000 (14:25 +0530)]
Set default values for payload
Change-Id: I2d863d2c0ff566bab6a5910613adc6912adddc38
Signed-off-by: Lokesh <l.kasana@samsung.com>
Abhay agarwal [Mon, 4 Nov 2019 15:28:37 +0000 (20:58 +0530)]
Improve error handling by returning error code
Change-Id: Idb6b9e9f2076972a0a4d4a2dedd173d7badfbc48
Signed-off-by: Abhay agarwal <ay.agarwal@samsung.com>
Abhay agarwal [Mon, 4 Nov 2019 05:35:20 +0000 (11:05 +0530)]
Remove duplicate code to copy device
Change-Id: Idb87db47775d437a19d9c18f4321de6e41870f4f
Signed-off-by: Abhay agarwal <ay.agarwal@samsung.com>
Abhay agarwal [Mon, 4 Nov 2019 04:38:29 +0000 (10:08 +0530)]
Return error code while handling devices
- Improve error handling by returning error code
Change-Id: I6d0da4c9a819345b808aaa913c2fa31e00f431a4
Signed-off-by: Abhay agarwal <ay.agarwal@samsung.com>
Abhay agarwal [Thu, 31 Oct 2019 06:16:07 +0000 (11:46 +0530)]
Modify DB transactions to return when fail
- Problem: If the transaction fails, more queries are being run on database
to insert/update/delete data from it without starting the transaction.
- Solution: Rollback and return from the function when transaction fails.
Change-Id: I086e56cae6a4964925fd8ee63b486469fe052314
Signed-off-by: Abhay agarwal <ay.agarwal@samsung.com>
saerome.kim [Fri, 1 Nov 2019 01:10:13 +0000 (10:10 +0900)]
Fix the problem that can't add a device to a user
- Problem: Once user_id exceeded 0xFFFF then can't add a device to the
user anymore.
- Cause: ua-manager is managing user_id as a maximun 16-bit unsigned
integer.
- Solution: change user_id type to 32-bit integer.
Change-Id: I31cdf1fe7bc7ed580091f81fd50f48882f715cbe
Signed-off-by: saerome.kim <saerome.kim@samsung.com>
Lokesh [Thu, 31 Oct 2019 09:29:40 +0000 (14:59 +0530)]
Fix NULL dereferencing
Check null dereferencing while reading payload variables from device database.
Change-Id: Icd52bf9ebe27c6380b3974635f9dce524f94c837
Signed-off-by: Lokesh <l.kasana@samsung.com>
Lokesh [Thu, 31 Oct 2019 07:43:48 +0000 (13:13 +0530)]
Fix memcpy's size parameter
Change-Id: Ie61b3d2aa18a1967d7b833d322584fdbf933ff65
Signed-off-by: Lokesh <l.kasana@samsung.com>
saerome.kim [Wed, 30 Oct 2019 01:54:48 +0000 (10:54 +0900)]
Fix the problem that the device can not be added to default_user
- Problem: Unable to add device to default_user.
- Cause: ua-manager regards default_user's ID is always 1.
However, If ua-manager has a problem occurred while accessing user-db,
so all user information is deleted. In this case the user id of the default user
is added to a value that is not 1.
- Solution: Deletes the hard-coded default user ID is 1.
Change-Id: I0d79364107aa7416c5b64b9481d2edc83801fbc4
Signed-off-by: saerome.kim <saerome.kim@samsung.com>
saerome.kim [Mon, 28 Oct 2019 12:33:16 +0000 (21:33 +0900)]
Fix the problem that DB cannot be deleted if DB is not initialized.
- Problem: During factory reset, vendor-plugin can't initialize the DB.
- Cause: The DB was not opened before the DB initialization.
- Solution: Delete the DB when reset_cb() is called.
Change-Id: I65394d0c4ab9b9719cbe3f9f63f1ef82d243a583
Signed-off-by: saerome.kim <saerome.kim@samsung.com>
Abhay agarwal [Thu, 24 Oct 2019 07:58:13 +0000 (13:28 +0530)]
Add supoort for database transactions
Change-Id: I5b1d1d07ad15385d4186647694f4f3bbbeb3aad0
Signed-off-by: Abhay agarwal <ay.agarwal@samsung.com>
saerome.kim [Wed, 23 Oct 2019 12:31:58 +0000 (21:31 +0900)]
Modify ua-manager to support the vendor-plugin
- Problem: we decided to remove the power-plugin.
- Cause: Recently, we decided to remove the power plugin and use the
power-plugin.
- Solution: Modify ua-manager to support the vendor-plugin instead of
the power plugin.
Change-Id: I3b726d46282fd6dfd437f7121a6209020ea4251d
Signed-off-by: saerome.kim <saerome.kim@samsung.com>
saerome.kim [Tue, 22 Oct 2019 07:24:41 +0000 (16:24 +0900)]
Modify to add the sensor status to sensor information
Change-Id: Ifc5394bde0f83e057b006072faebd254d3500ad9
Signed-off-by: saerome.kim <saerome.kim@samsung.com>
saerome.kim [Mon, 21 Oct 2019 11:44:26 +0000 (20:44 +0900)]
Fix the problem that the Sensor Frameowk and UAF use different data
format
- Problem: The data format of timestamp is not different from the sensor framework.
- Cause: The UAF uses 32 bit timestamp but the sensor framework uses 64
bit timestamp.
- Solution: Change timestamps in UAF with 64-bit unsigned long long.
Change-Id: I237f7201d7e7fed00858c47ca9350fcb1ad655c4
Signed-off-by: saerome.kim <saerome.kim@samsung.com>
saerome.kim [Mon, 21 Oct 2019 11:35:16 +0000 (20:35 +0900)]
Add functionality to report instant sensor status change
- Problem: in ABSENCE case, even the motion sensor detects ABSENCE
ua-manager reports this ABSENCE state after the detection window complete.
- Cause: If ABSENCE case, the ABSENCE can be jurged only when the
detction window complete.
- Solution: Whenever the sensor status is changed, plugin reports status
changed event immediately so that the user can recognize ABSENCE event
takes place during uncompleted ABSENCE detection window.
Change-Id: Ia5b12304976db4b89e5fa0977ea366a08361fc0e
Signed-off-by: saerome.kim <saerome.kim@samsung.com>
saerome.kim [Thu, 17 Oct 2019 09:32:00 +0000 (18:32 +0900)]
Add new API to set low power mode
- Problem: it is needed that new API that can set low power mode
- Cause: without adding new API, build break occurs.
- Solution: add new API to set low power mode.
Change-Id: Ib5f9d4a4492953a146a383abdf32f7b7a7947d62
Signed-off-by: saerome.kim <saerome.kim@samsung.com>
Abhay agarwal [Wed, 16 Oct 2019 15:23:23 +0000 (20:53 +0530)]
Modify APIs to set low power mode for individual plugin
Change-Id: I582417d1ee1df84043b17e36a97e4b8c06153016
Signed-off-by: Abhay agarwal <ay.agarwal@samsung.com>
Lokesh [Mon, 14 Oct 2019 03:51:55 +0000 (09:21 +0530)]
Return detailed error_code in _uam_add_ibeacon_adv_data()
Change-Id: I17f3d23aa5c7fdd8c5332858ae4190a439abc6f5
Signed-off-by: Lokesh <l.kasana@samsung.com>
Abhay Agarwal [Fri, 11 Oct 2019 06:24:57 +0000 (15:24 +0900)]
Add APIs to support update service functionality
Update service functionality is required to update service information
like presence threshold and absence threshold.
Change-Id: Ic7e8ab3c4efeef1c33d491bbc848a8e67e0de360
Signed-off-by: Abhay Agarwal <ay.agarwal@samsung.com>
saerome.kim [Fri, 11 Oct 2019 02:06:14 +0000 (11:06 +0900)]
Fix a problem that ADD_DEVICE operation failed
- Problem: if the wrong information is entered and failed to ADD_DEVICE.
user apps can't add devices anymore.
- Cause: When one app removes the user information while adding the device,
there is no way to know how the ADD_DEVICE operation succeeded or not.
- Solution: notify the user with an error when ADD_DEVICE failed.
Signed-off-by: saerome.kim <saerome.kim@samsung.com>
Abhay Agarwal [Tue, 8 Oct 2019 09:25:36 +0000 (18:25 +0900)]
Manage device and service number with autoincrement property of sqlite
This patch modifies to manage database table field service_number, device_number
user_id and ibeacon_id with autoincrement property of sqlite.
Managing these field manually can result in unnecessary conflicts.
Change-Id: I159b9491d6984c56047a815d02f6d35123feb60d
Signed-off-by: Abhay Agarwal <ay.agarwal@samsung.com>
Abhay Agarwal [Tue, 8 Oct 2019 03:04:14 +0000 (12:04 +0900)]
Fix busy handler implementation and update database handle name
Use a more specific database handle name instead of using 'database', since this
may conflict with other global variables from external libraries by accident
Change-Id: If1cca3013dc8558d80722f3582c416243a4e41df
Signed-off-by: Abhay Agarwal <ay.agarwal@samsung.com>
Abhay Agarwal [Tue, 8 Oct 2019 06:42:17 +0000 (15:42 +0900)]
Fix to print proper error message from the sqlite database handle in error case
Change-Id: Ic08a3e880931dba225decbd757b456a303b2bb76
Signed-off-by: Abhay Agarwal <ay.agarwal@samsung.com>
Abhay Agarwal [Mon, 7 Oct 2019 09:57:57 +0000 (18:57 +0900)]
Remove database recovery logic when sqlite command fails
Current database recovery logic delete the current database and create a new database when
SQLite command fail, although SQLite cammand can also fail in case database is busy or locked.
Change-Id: Ib361c118427a5ef9f3ce6142c4d44d75475a045e
Signed-off-by: Abhay Agarwal <ay.agarwal@samsung.com>
Nishant Chaprana [Mon, 7 Oct 2019 06:15:12 +0000 (11:45 +0530)]
[Fix] Dereference after free issue in _pm_util_uas_device_info_free()
Change-Id: I813852e34b52bd72f11fcb59e5b9e71f661f8515
Signed-off-by: Nishant Chaprana <n.chaprana@samsung.com>
saerome.kim [Fri, 4 Oct 2019 09:45:56 +0000 (18:45 +0900)]
Fixed potential memory leak issue and prevent crash
There is a process of removing the user's device in the user remove process.
At that time, the tech_info that was put in the service list was not deleted
from the list.
Change-Id: If9cb86e2684b8cb434275560f719588f5f18b4d4
Signed-off-by: saerome.kim <saerome.kim@samsung.com>
Abhay Agarwal [Fri, 4 Oct 2019 07:06:26 +0000 (16:06 +0900)]
Added support to get service specific device discriminant
Change-Id: I9c39654fd4d64731f680e425b31e53b0f42b3ede
Signed-off-by: Abhay Agarwal <ay.agarwal@samsung.com>
Abhay Agarwal [Fri, 4 Oct 2019 01:39:47 +0000 (10:39 +0900)]
Improve error handling and return error code in case of failure
This commit improves the error handling in ua-manager by returning error codes
in case of failures instead of just giving warnings.
Change-Id: I2eddd477c04e2fd2a5d33842d8659fceff6b65d7
Signed-off-by: Abhay Agarwal <ay.agarwal@samsung.com>
Abhay Agarwal [Fri, 4 Oct 2019 01:10:28 +0000 (10:10 +0900)]
Improve database API names
This commit modifies and improves the names of database APIs.
This changes API names from _ua_ to _uam_ to follow consistency in ua-manager.
Change-Id: I84132dbd0af3ddd3e5865eed0384921310810f63
Signed-off-by: Abhay Agarwal <ay.agarwal@samsung.com>
Abhay Agarwal [Wed, 2 Oct 2019 11:49:04 +0000 (20:49 +0900)]
Add Database APIs to provide device service info during init
Change-Id: Icc1e80615aafdde423c53ec9e3d4e64372d0d323
Signed-off-by: Abhay Agarwal <ay.agarwal@samsung.com>
Abhay Agarwal [Wed, 2 Oct 2019 10:30:24 +0000 (19:30 +0900)]
Handle service device mapping and filter detected devices
This commit handles the service specific device discriminant and filters
the detected devices from plugins based on this discriminant.
Change-Id: I5c2194f455a51403161a6011665d606c0677a4ed
Signed-off-by: Abhay Agarwal <ay.agarwal@samsung.com>
Abhay Agarwal [Wed, 2 Oct 2019 07:00:01 +0000 (16:00 +0900)]
cleanup device services table when a device is removed
This commit cleanup the corresponding device entries from device_services table.
Change-Id: Ie8d3166f520a7577f547c22966907b92f1a7b054
Signed-off-by: Abhay Agarwal <ay.agarwal@samsung.com>
Abhay Agarwal [Wed, 2 Oct 2019 01:02:49 +0000 (10:02 +0900)]
Database APIs to update device service information
Change-Id: I61ccb0da2cbcf76e8c7a38ba7f2e8b8a77e047c1
Signed-off-by: Abhay Agarwal <ay.agarwal@samsung.com>