pjh9216 [Thu, 16 Jan 2025 05:00:50 +0000 (14:00 +0900)]
Release version 1.19.6
Changes: - Add internal APIs for rpc-port-parcel
- Add methods for Parcel in rust-rpc-port
- Fix a bug in rpc-port-parcel
Change-Id: I4e286ea01a9a00b62d652cf00636f18a1eb7974c
Signed-off-by: pjh9216 <jh9216.park@samsung.com>
pjh9216 [Tue, 14 Jan 2025 04:48:04 +0000 (13:48 +0900)]
Fix a bug in rpc-port-parcel
- Consider making sub-parcel using fd-send feature
- Add internal API 'rpc_port_parcel_clone' for local excution mode
Change-Id: I2876a1c1ef4dec9e6223c32eec1a08ba48096ba7
Signed-off-by: pjh9216 <jh9216.park@samsung.com>
pjh9216 [Thu, 9 Jan 2025 05:55:31 +0000 (14:55 +0900)]
Add methods for Parcel in rust-rpc-port
- Add fn write_fd(&self, fd: RawFd)
- Add fn read_fd(&self) -> RawFd
Change-Id: I7d4f4ecca78cea2ff6ef39e8b8ecf5f708abd441
Signed-off-by: pjh9216 <jh9216.park@samsung.com>
pjh9216 [Tue, 7 Jan 2025 08:10:06 +0000 (17:10 +0900)]
Add internal APIs for rpc-port-parcel
- APIs
int rpc_port_parcel_read_fd(rpc_port_parcel_h h, int* fd)
int rpc_port_parcel_write_fd(rpc_port_parcel_h h, int fd)
Change-Id: I637186de5cc38cc051e37022c6896032802f2712
Signed-off-by: pjh9216 <jh9216.park@samsung.com>
Changgyu Choi [Tue, 7 Jan 2025 04:40:39 +0000 (13:40 +0900)]
Release version 1.19.5
Changes:
- Add dlogs for debugging
Change-Id: I362d59ed5280db45b435a694f7f613efd9cf463e
Signed-off-by: Changgyu Choi <changyu.choi@samsung.com>
Changgyu Choi [Mon, 6 Jan 2025 12:21:22 +0000 (21:21 +0900)]
Add dlogs for debugging
When stub sends a response to the proxy, prints debug logs.
Change-Id: Id8cdc5c601f082696cb09d1b428dbb4c8713d2b4
Signed-off-by: Changgyu Choi <changyu.choi@samsung.com>
Changgyu Choi [Mon, 6 Jan 2025 00:28:26 +0000 (09:28 +0900)]
Release version 1.19.4
Changes:
- Remove inefficient repeated event reception
Change-Id: I0c45b55cb005128455e0b8fcb9a82d188486be95
Signed-off-by: Changgyu Choi <changyu.choi@samsung.com>
Changgyu Choi [Thu, 2 Jan 2025 07:25:36 +0000 (16:25 +0900)]
Remove inefficient repeated event reception
If the socket connection is invalid, the event may continue to occur.
In this case, the event handler is removed to prevent unnecessary event reception.
Change-Id: I63851ac57b6f0820229ae4c0548af88988915061
Signed-off-by: Changgyu Choi <changyu.choi@samsung.com>
Changgyu Choi [Mon, 30 Dec 2024 09:25:13 +0000 (18:25 +0900)]
Release version 1.19.3
Changes:
- Fix crash issue
Change-Id: I56e6b3517bd68f531d4d135d779b38a033577ac4
Signed-off-by: Changgyu Choi <changyu.choi@samsung.com>
Changgyu Choi [Mon, 30 Dec 2024 08:28:42 +0000 (17:28 +0900)]
Fix crash issue
memory allocation must not be performed at the end of the process.
Change-Id: I41163045f3ffa9d3addb5c3cb8aa4a5f65536d48
Signed-off-by: Changgyu Choi <changyu.choi@samsung.com>
jusung son [Wed, 18 Dec 2024 02:23:59 +0000 (11:23 +0900)]
Release version 1.19.2
Changes:
- Fix race condition related to global variable deallocation on process termination
Change-Id: If68d0ca240dbe10d98ff87fe7f80067726fc0ed6
Signed-off-by: jusung son <jusung07.son@samsung.com>
jusung son [Wed, 18 Dec 2024 00:29:26 +0000 (09:29 +0900)]
Fix race condition related to global variable deallocation on process termination
Change-Id: I1a10a755c6be1e675d874528be62bdbec5e221a0
Signed-off-by: jusung son <jusung07.son@samsung.com>
Hwankyu Jhun [Wed, 27 Nov 2024 00:23:57 +0000 (09:23 +0900)]
Release version 1.19.1
Changes:
- Fix warnings
- Release client instances
Change-Id: Ifc87e1c8c7e8540af7877b938064dcaa3c4c799a
Signed-off-by: Hwankyu Jhun <h.jhun@samsung.com>
Hwankyu Jhun [Wed, 27 Nov 2024 00:16:06 +0000 (09:16 +0900)]
Release client instances
When creating the client channel is failed, we should release client instances.
Change-Id: I7d5c564cbc3ac0d6634d51d9e235187bde44aa84
Signed-off-by: Hwankyu Jhun <h.jhun@samsung.com>
pjh9216 [Tue, 26 Nov 2024 00:03:26 +0000 (09:03 +0900)]
Fix warnings
Change-Id: Ic9598cb65d7c7838745bb81d57d0dda843c35294
Signed-off-by: pjh9216 <jh9216.park@samsung.com>
Hwankyu Jhun [Sat, 9 Nov 2024 04:45:40 +0000 (13:45 +0900)]
Release version 1.19.0
Changes:
- Add rpc-port-parcel APIs for rust
- Fix deadlock issue
Change-Id: I35b103c147297afeac5ba21fd9672aea72e11f4c
Signed-off-by: Hwankyu Jhun <h.jhun@samsung.com>
Hwankyu Jhun [Sat, 9 Nov 2024 03:17:32 +0000 (12:17 +0900)]
Fix deadlock issue
While calling CheckAsync(), locking the mutex causes the deadlock issue.
This patch removes locking the mutex to avoid deadlock issue.
Change-Id: I8c6e26478d689f84667c2e13c2058fb4e441c4c7
Signed-off-by: Hwankyu Jhun <h.jhun@samsung.com>
pjh9216 [Thu, 7 Nov 2024 02:17:52 +0000 (11:17 +0900)]
Add rpc-port-parcel APIs for rust
Change-Id: Id1951c9e87fca4d24390c6d3d71126628b298be3
Signed-off-by: pjh9216 <jh9216.park@samsung.com>
pjh9216 [Wed, 6 Nov 2024 23:48:14 +0000 (08:48 +0900)]
Release version 1.18.16
Changes:
- Add a missing mutex lock
Signed-off-by: pjh9216 <jh9216.park@samsung.com>
Change-Id: I934238c910b52d4526dbab0edd9c23e709b876b5
Hwankyu Jhun [Wed, 6 Nov 2024 11:08:45 +0000 (20:08 +0900)]
Add a missing mutex lock
Before using condition variable, we should lock the mutex to avoid
a timing issue.
Change-Id: I78c22d275a3dfc08087ec722cb9d0c53d08c3c19
Signed-off-by: Hwankyu Jhun <h.jhun@samsung.com>
pjh9216 [Tue, 5 Nov 2024 02:11:00 +0000 (11:11 +0900)]
Release version 1.18.15
Changes:
- Refactor rpc-port
Signed-off-by: pjh9216 <jh9216.park@samsung.com>
Change-Id: I3a329b4250bf55abcce0b590b6c32514032ce179
pjh9216 [Mon, 28 Oct 2024 01:40:12 +0000 (10:40 +0900)]
Refactor rpc-port
- Move benchmark tool to https://github.sec.samsung.net/appfw/rpc-benchmark
- Add some internal APIs
Change-Id: Ib1b243d7413c7b060b1f9f48822fe20359f60819
Signed-off-by: pjh9216 <jh9216.park@samsung.com>
Hwankyu Jhun [Mon, 4 Nov 2024 01:18:26 +0000 (10:18 +0900)]
Release version 1.18.14
Changes:
- Fix use after free
- Use std::queue instead of tizen_base::SharedQueue
Change-Id: Ib1a62dadd9a27c62648e36582fc355ddde91b164
Signed-off-by: Hwankyu Jhun <h.jhun@samsung.com>
Hwankyu Jhun [Sun, 3 Nov 2024 23:41:19 +0000 (08:41 +0900)]
Use std::queue instead of tizen_base::SharedQueue
To avoid memory allocation while calling exit handlers, this patch uses
std::queue with the std::atomic<bool>. When calling the Dispose() method,
it set the done_ flag to 'true' to terminate the while loop of the thread.
Change-Id: I101665a9e51c7711d5f5485a094835f5add95cf0
Signed-off-by: Hwankyu Jhun <h.jhun@samsung.com>
Hwankyu Jhun [Mon, 4 Nov 2024 00:59:11 +0000 (09:59 +0900)]
Fix use after free
When settng the priority to the GSource, it makes the use-after-free issue.
Because, the GSource can attach to the event loop of the sub thread.
This patch removes calling g_source_set_priority() function after
calling g_source_attach().
Change-Id: Iaf9822561e44c08fb96d921b7f7ea9311c45886c
Signed-off-by: Hwankyu Jhun <h.jhun@samsung.com>
Hwankyu Jhun [Mon, 21 Oct 2024 02:23:39 +0000 (11:23 +0900)]
Release version 1.18.13
Changes:
- Fix use after free issue
Change-Id: Ie3266ee570fadae26db6797fd9f2af8f871f8531
Signed-off-by: Hwankyu Jhun <h.jhun@samsung.com>
Hwankyu Jhun [Mon, 21 Oct 2024 02:16:50 +0000 (11:16 +0900)]
Fix use after free issue
While calling g_source_set_priority(), the use-after-free issue occurs.
The IdleAddFull() is added to fix the problem.
Change-Id: Ifddebafcf5e0521452dff8063389cfd30ba426eb
Signed-off-by: Hwankyu Jhun <h.jhun@samsung.com>
Hwankyu Jhun [Fri, 18 Oct 2024 00:56:25 +0000 (09:56 +0900)]
Release version 1.18.12
Changes:
- Adjust log priority for debugging
- Fix wrong time comparison
- Avoid memory allocation in exit handlers
Change-Id: I8ae0c0e4eae640974b3d7552d4ab0a3fb1564bee
Signed-off-by: Hwankyu Jhun <h.jhun@samsung.com>
Hwankyu Jhun [Thu, 17 Oct 2024 23:24:26 +0000 (08:24 +0900)]
Avoid memory allocation in exit handlers
To avoid the memory allocation related to the job, this patch uses
std::shared_ptr<Job>. The memory allocation in the exit handlers causes
the crash issue. While calling Dispose(), the cynara thread sets
the nullptr to the shared queue.
Change-Id: I6668dc6fce0b3ef64c01260a6e28a332777b70ea
Signed-off-by: Hwankyu Jhun <h.jhun@samsung.com>
Hwankyu Jhun [Fri, 18 Oct 2024 00:24:02 +0000 (09:24 +0900)]
Fix wrong time comparison
The priority and if condition are changed.
Change-Id: Ie0af348969caea81c7bf39079e1291bba52096e7
Signed-off-by: Hwankyu Jhun <h.jhun@samsung.com>
Hwankyu Jhun [Thu, 17 Oct 2024 09:51:54 +0000 (18:51 +0900)]
Adjust log priority for debugging
The log priority is determined according to the elpased time required as shown
in the following table:
+---------------+----------+
| elpased time | priority |
+---------------+----------+
| ~ 0.999 | DEBUG |
| 1.0 ~ 4.999 | INFO |
| 5.0 ~ 9.999 | WARN |
| 10.0 ~ | ERROR |
+---------------+----------+
Change-Id: I33fadf930f9c18e78dd30f5b709c36436bf544bd
Signed-off-by: Hwankyu Jhun <h.jhun@samsung.com>
Hwankyu Jhun [Wed, 16 Oct 2024 01:29:13 +0000 (10:29 +0900)]
Release version 1.18.11
Changes:
- Print trace information regarding IPC delay
Change-Id: I597864fddb11019405baec3a792d1871a400893d
Signed-off-by: Hwankyu Jhun <h.jhun@samsung.com>
Hwankyu Jhun [Mon, 14 Oct 2024 07:25:14 +0000 (16:25 +0900)]
Print trace information regarding IPC delay
This patch adds Tracer class for priting debug information.
Change-Id: Ia1439e7d86b94e9a03f377f3d372eeb7b8eec565
Signed-off-by: Hwankyu Jhun <h.jhun@samsung.com>
Hwankyu Jhun [Thu, 26 Sep 2024 23:19:28 +0000 (08:19 +0900)]
Release version 1.18.10
Changes:
- Fix a timing issue related to disconnected event
Change-Id: I6836c18180d00f9523eebedf6cc89d637abd9d06
Signed-off-by: Hwankyu Jhun <h.jhun@samsung.com>
Hwankyu Jhun [Thu, 26 Sep 2024 11:37:49 +0000 (20:37 +0900)]
Fix a timing issue related to disconnected event
The port instance should be released after calling the disconnected
event callback.
Change-Id: I8b4e07918702bdbacc612a37978fcba9faf819b0
Signed-off-by: Hwankyu Jhun <h.jhun@samsung.com>
Changgyu Choi [Wed, 25 Sep 2024 00:58:51 +0000 (09:58 +0900)]
Release version 1.18.9
Changes:
- Apply to prevent stripping .rustc section symbols
Change-Id: Iec3a9519564f8a1369898da9871b4812c4e82481
Signed-off-by: Changgyu Choi <changyu.choi@samsung.com>
Changgyu Choi [Tue, 24 Sep 2024 04:02:38 +0000 (13:02 +0900)]
Apply to prevent stripping .rustc section symbols
In some environments, the current approach needs to be changed because the %check step is not executed.
Change-Id: Ia3dbd47b989fe57d37f14ceb23006f0d084ff35e
Signed-off-by: Changgyu Choi <changyu.choi@samsung.com>
jusung son [Tue, 24 Sep 2024 00:24:25 +0000 (09:24 +0900)]
Release version 1.18.8
Changes:
- Implement rust-rpc-port
- Add extension
Change-Id: Ie37d0a0bf65dc76907083eb0593a52de61857971
Signed-off-by: jusung son <jusung07.son@samsung.com>
dongkwan [Wed, 11 Sep 2024 05:44:54 +0000 (14:44 +0900)]
Add extension
add codes for rust -e(extension) option.
- extern rpc_port_get_peer_info
- extern rpc_port_stub_has_pending_request
- has_pending_pending rust style wrap up function
- get_peer_info rust style wrap up function
- few unit tests code
Change-Id: I8af83b5c1642ef4c47421b3ad2db33c5c6d80c28
Signed-off-by: dongkwan <dk3776.kim@samsung.com>
Changgyu Choi [Tue, 3 Sep 2024 09:05:26 +0000 (18:05 +0900)]
Implement rust-rpc-port
rust-rpc-port has been added.
Change-Id: I33b5f2ff1f8ac7ff8eae244a282286843956b2e3
Signed-off-by: Changgyu Choi <changyu.choi@samsung.com>
jusung son [Tue, 10 Sep 2024 04:11:34 +0000 (13:11 +0900)]
Release version 1.18.7
Changes:
- Fix memory leak
Change-Id: I734e3a0cef20ddb2e93e01e3a37c7123d2dfa147
Signed-off-by: jusung son <jusung07.son@samsung.com>
jusung son [Tue, 10 Sep 2024 03:55:11 +0000 (12:55 +0900)]
Fix memory leak
Change-Id: I85a3130cbb53d8eaa94010042b3bfb818c3111da
Signed-off-by: jusung son <jusung07.son@samsung.com>
jusung son [Tue, 10 Sep 2024 00:57:51 +0000 (09:57 +0900)]
Release version 1.18.6
Changes:
- Add internal parcel APIs
Change-Id: I493fdb8f01dfd1b3dbe978737602f01472866896
Signed-off-by: jusung son <jusung07.son@samsung.com>
jh9216.park [Wed, 28 Aug 2024 03:05:36 +0000 (23:05 -0400)]
Add internal parcel APIs
Change-Id: I0d7daaaddb7876126d4043fba074c149f58d0aa5
Signed-off-by: jh9216.park <jh9216.park@samsung.com>
Hwankyu Jhun [Wed, 28 Aug 2024 04:48:16 +0000 (13:48 +0900)]
Release version 1.18.5
Changes:
- Use bundle_encode_raw in rpc-port-parcel
Change-Id: If11d85d361dfb474e31c1817d7d32f78b60c7f3d
Signed-off-by: Hwankyu Jhun <h.jhun@samsung.com>
jh9216.park [Thu, 22 Aug 2024 02:23:48 +0000 (22:23 -0400)]
Use bundle_encode_raw in rpc-port-parcel
- bundle_encode_raw does not use Base64 encoder
- It it faster then bundle_encode
- Requires
https://review.tizen.org/gerrit/#/c/platform/core/base/bundle/+/316457/
Change-Id: Ie9b20b43b795064c129e865683ae58a0a691a881
Signed-off-by: jh9216.park <jh9216.park@samsung.com>
Hwankyu Jhun [Tue, 13 Aug 2024 08:05:45 +0000 (17:05 +0900)]
Release version 1.18.4
Changes:
- Modify implementation related to sync function
- Fix GetAppId() method
Change-Id: Id8969efaf1044aab34848f29c1aabd366649a908
Signed-off-by: Hwankyu Jhun <h.jhun@samsung.com>
Hwankyu Jhun [Tue, 13 Aug 2024 06:11:19 +0000 (15:11 +0900)]
Fix GetAppId() method
If the caller process ID is equal to the target process ID, the rpc-port
should check whether the user ID is less than the regular user ID or not.
Change-Id: Id60fc954986e871a9d7038b3253bbf212ab30b2f
Signed-off-by: Hwankyu Jhun <h.jhun@samsung.com>
Hwankyu Jhun [Tue, 13 Aug 2024 04:15:36 +0000 (13:15 +0900)]
Release version 1.18.3
Changes:
- Modify implementation related to sync function
Change-Id: I7a52d4adb52f441284945db5a792c45b02b830a2
Signed-off-by: Hwankyu Jhun <h.jhun@samsung.com>
Hwankyu Jhun [Mon, 12 Aug 2024 21:55:06 +0000 (06:55 +0900)]
Modify implementation related to sync function
- Change retrying count to 250.
- Check whether the stub is system daemon or not
- Fix a bug about delegate invocation
Change-Id: I49b36eb990957dabaa29d462b74e6c32df501c93
Signed-off-by: Hwankyu Jhun <h.jhun@samsung.com>
Hwankyu Jhun [Fri, 9 Aug 2024 10:57:45 +0000 (19:57 +0900)]
Release version 1.18.2
Changes:
- Modify doc
- Fix thread safe issue
Change-Id: I34040fee88ac745b5957166ff9e2beb392d69dc1
Signed-off-by: Hwankyu Jhun <h.jhun@samsung.com>
Hwankyu Jhun [Fri, 9 Aug 2024 10:16:12 +0000 (19:16 +0900)]
Fix thread safe issue
If the process tries to release the GSource when calling the idle callback,
it can make the crash issue as below:
+------------------------------------------------------------------------------+
| #0 0xb5a9201a in g_source_remove_child_source (source=<optimized out>, |
| child_source=<optimized out>) at /usr/src/debug/glib2-2.78.4- |
| 0.arm/_build/../glib/gmain.c:1725 |
| #1 0xb5a92108 in g_source_destroy (source=<optimized out>) at /usr/src/debug|
| /glib2-2.78.4-0.arm/_build/../glib/gmain.c:1477 |
+------------------------------------------------------------------------------+
This patch adds locking & unlocking the mutex to prevent the issue.
Change-Id: I0ab3b60bd8bfee41b92c5a33c6c5cf3c269c3931
Signed-off-by: Hwankyu Jhun <h.jhun@samsung.com>
Hwankyu Jhun [Thu, 8 Aug 2024 04:23:04 +0000 (13:23 +0900)]
Modify doc
The module header name must be "CAPI_RPC_PORT_PARCEL_MODULE_HEADER".
Change-Id: Ifa82cd6292daebe13561f59f06691a47a7651282
Signed-off-by: Hwankyu Jhun <h.jhun@samsung.com>
Hwankyu Jhun [Thu, 8 Aug 2024 00:13:16 +0000 (09:13 +0900)]
Release version 1.18.1
Changes:
- Remove unnecessary logs
- Fix crash issues of servers
Change-Id: Id35de7c8622593d210a9cb9847dc0efe89968203
Signed-off-by: Hwankyu Jhun <h.jhun@samsung.com>
Hwankyu Jhun [Thu, 8 Aug 2024 00:06:18 +0000 (09:06 +0900)]
Fix crash issues of servers
While calling RemoveAcceptedPorts(), the server has crashed.
Because the instance argument is deleted at the for loop.
This patch changes the parameter type to std::string.
Change-Id: Ib7754d128df647b75643baf34d4eca3e62264fd1
Signed-off-by: Hwankyu Jhun <h.jhun@samsung.com>
Hwankyu Jhun [Tue, 6 Aug 2024 03:12:09 +0000 (12:12 +0900)]
Remove unnecessary logs
The ctor and dtor logs are not needed.
Change-Id: I3771bf2b5462944d1a8b159be8a07e8fa8feb960
Signed-off-by: Hwankyu Jhun <h.jhun@samsung.com>
Hwankyu Jhun [Fri, 2 Aug 2024 06:34:59 +0000 (15:34 +0900)]
Release version 1.18.0
Changes:
- Modify Port implementation
- Increase timeout of rpc-port
- Refactor DebugPort implementation
- Add a missing timeout setting
- Add a new internal class for using glib
Change-Id: Idaec03a4e6e31106ad34ef1accdd804c98bd5c98
Signed-off-by: Hwankyu Jhun <h.jhun@samsung.com>
Hwankyu Jhun [Fri, 2 Aug 2024 05:58:59 +0000 (14:58 +0900)]
Add a new internal class for using glib
The following methods are added:
- GLib::IdleAdd()
- GLib::TimeoutAdd()
- GLib::UnixFdAdd()
- GLib::SourceDestroy()
Change-Id: If9f0231b2fcf959cd1469a34a6cf54cc75977bf6
Signed-off-by: Hwankyu Jhun <h.jhun@samsung.com>
Hwankyu Jhun [Fri, 2 Aug 2024 06:12:50 +0000 (15:12 +0900)]
Add a missing timeout setting
The receive timeout of the client should be set.
Change-Id: I1b90f927ca230ede6641f7afb79c16075a832490
Signed-off-by: Hwankyu Jhun <h.jhun@samsung.com>
Hwankyu Jhun [Thu, 1 Aug 2024 23:30:18 +0000 (08:30 +0900)]
Refactor DebugPort implementation
The parameters of AddSession() method ars changed.
Change-Id: Ib75c008d6fd9f63bb673c68b6be9488ca9b83821
Signed-off-by: Hwankyu Jhun <h.jhun@samsung.com>
Hwankyu Jhun [Thu, 1 Aug 2024 09:40:54 +0000 (18:40 +0900)]
Increase timeout of rpc-port
The default timeout is increased to 25 seconds.
The following functions are added internally:
- rpc_port_set_timeout()
- rpc_port_get_timeout()
Change-Id: I6ae46d956c30e33606a74cd312a1b37ac67c2b02
Signed-off-by: Hwankyu Jhun <h.jhun@samsung.com>
Hwankyu Jhun [Thu, 1 Aug 2024 01:10:55 +0000 (10:10 +0900)]
Modify Port implementation
This patch separates the fd for use respectively for read & write purposes.
Change-Id: I35e51f6af0e91b0f830901a67dd815c01b1d3645
Signed-off-by: Hwankyu Jhun <h.jhun@samsung.com>
Hwankyu Jhun [Wed, 31 Jul 2024 22:57:36 +0000 (07:57 +0900)]
Release version 1.17.3
Changes:
- Separate internal classes
- Throw exception when getting EMFILE errno
- Modify Port class
- Add a missing implementation
- Modify ClientSocket implementation
- Fix build error
Change-Id: Idec9d29040fe45c44f8a64542c46a81010cfa054
Signed-off-by: Hwankyu Jhun <h.jhun@samsung.com>
Hwankyu Jhun [Wed, 31 Jul 2024 22:34:50 +0000 (07:34 +0900)]
Fix build error
The log format should be %zu to print size_t type.
Change-Id: Icb6e639c152a46bfe3430a63889ee4daf9445892
Signed-off-by: Hwankyu Jhun <h.jhun@samsung.com>
Hwankyu Jhun [Wed, 31 Jul 2024 05:40:54 +0000 (14:40 +0900)]
Release version 1.17.2
Changes:
- Separate internal classes
- Throw exception when getting EMFILE errno
- Modify Port class
- Add a missing implementation
- Modify ClientSocket implementation
Change-Id: I76be7a472bdc970cc9fe3d1fdb9915ea14c67783
Signed-off-by: Hwankyu Jhun <h.jhun@samsung.com>
Hwankyu Jhun [Wed, 31 Jul 2024 01:43:15 +0000 (10:43 +0900)]
Modify ClientSocket implementation
- Adds Send() and Receive() methods for sending the parcelable instance
- Uses recv() instead of read()
- Adds exception handlings about EAGAIN error
- Adds the retrying count for error handling
Change-Id: I41dd952d6fa90500a30f0193f0e8fe747675b462
Signed-off-by: Hwankyu Jhun <h.jhun@samsung.com>
Hwankyu Jhun [Wed, 31 Jul 2024 05:13:56 +0000 (14:13 +0900)]
Add a missing implementation
When creating the gsource is failed, the function must be returned.
Change-Id: Id0de49f9d93aa3afad8f9fa311719cc802179574
Signed-off-by: Hwankyu Jhun <h.jhun@samsung.com>
Hwankyu Jhun [Fri, 26 Jul 2024 04:19:32 +0000 (13:19 +0900)]
Modify Port class
The DelayedMessage class is separated from the Port class.
Using GIOChannel is removed. After this patch is applied, the port uses GSource
instead of GIOChannel.(g_unix_fd_source_new() is used).
Change-Id: I9edba1b5d8f305c951d7908abcd2c787279ae54b
Signed-off-by: Hwankyu Jhun <h.jhun@samsung.com>
Hwankyu Jhun [Fri, 26 Jul 2024 00:21:27 +0000 (09:21 +0900)]
Throw exception when getting EMFILE errno
When the process cannot open a new file descriptior, the rpc-port
library throws an exception to create coredump file.
Change-Id: I5b9ebe83342cfca4511d4329676b67365d374e5d
Signed-off-by: Hwankyu Jhun <h.jhun@samsung.com>
Hwankyu Jhun [Mon, 22 Jul 2024 04:39:10 +0000 (13:39 +0900)]
Separate internal classes
The AcceptedPort and Server classes are separated from the Stub class.
The ProxyPort and ClientChannel classes are sperated from the Proxy class.
Change-Id: Ibce6a686a901a5748dacb81a013e06bd9d2184f6
Signed-off-by: Hwankyu Jhun <h.jhun@samsung.com>
Hwankyu Jhun [Tue, 23 Jul 2024 03:53:49 +0000 (12:53 +0900)]
Release version 1.17.1
Changes:
- Fix a bug about registering main port
Change-Id: Ic3304a1735d64e69b372f2f0f3be6d1fb76951e6
Signed-off-by: Hwankyu Jhun <h.jhun@samsung.com>
Hwankyu Jhun [Tue, 23 Jul 2024 03:33:32 +0000 (12:33 +0900)]
Fix a bug about registering main port
The main port should not register G_IO_IN event handler.
Change-Id: I123bdada062da4b7646c615fd72c20ce93c6c56d
Signed-off-by: Hwankyu Jhun <h.jhun@samsung.com>
Hwankyu Jhun [Fri, 12 Jul 2024 04:02:28 +0000 (13:02 +0900)]
Release version 1.17.0
Changes:
- Use thread default context
Change-Id: I0b42f944fe0c2a1d0365ccc63b6867866d762cf5
Signed-off-by: Hwankyu Jhun <h.jhun@samsung.com>
Hwankyu Jhun [Thu, 27 Jun 2024 01:41:35 +0000 (10:41 +0900)]
Use thread default context
To deliver events to the registered thread loop, this patch uses a
thread default context instead of a default main context.
Change-Id: I7827fd1af7ea942f0de0ae4cfc6b7f022f45d8f7
Signed-off-by: Hwankyu Jhun <h.jhun@samsung.com>
Hwankyu Jhun [Wed, 12 Jun 2024 01:12:53 +0000 (10:12 +0900)]
Release version 1.16.0
Changes:
- Add a new internal API
Change-Id: Ic5c2f09ee6d27ce86f3703e8c19edc348f287c56
Signed-off-by: Hwankyu Jhun <h.jhun@samsung.com>
Hwankyu Jhun [Tue, 11 Jun 2024 00:16:06 +0000 (09:16 +0900)]
Add a new internal API
To check whether the pending request exists or not, the function is added.
Adds:
- rpc_port_stub_has_pending_request()
Change-Id: I8d3af304b5e1cce19b5956ff45ee92b7806ac69c
Signed-off-by: Hwankyu Jhun <h.jhun@samsung.com>
Hwankyu Jhun [Mon, 10 Jun 2024 23:56:14 +0000 (08:56 +0900)]
Release version 1.15.9
Changes:
- Dispose cynara thread
Change-Id: Iadc9fd8c945efe099b6909b7162b982b79a4fef9
Signed-off-by: Hwankyu Jhun <h.jhun@samsung.com>
Hwankyu Jhun [Mon, 10 Jun 2024 23:01:17 +0000 (08:01 +0900)]
Dispose cynara thread
When terminating the process, the cynara thread of the rpc-port must be
released.
Change-Id: Ic10e37bf54fe26f7ef4a526ef01f27b394a0e13c
Signed-off-by: Hwankyu Jhun <h.jhun@samsung.com>
Hwankyu Jhun [Mon, 3 Jun 2024 04:25:22 +0000 (13:25 +0900)]
Release version 1.15.8
Changes:
- Fix wrong setting LD_LIBRARY_PATH
- Merge "Change interface name in .proto file" into tizen
Change-Id: I1296a4dabf12c116758a594033444c89b1d18333
Signed-off-by: Hwankyu Jhun <h.jhun@samsung.com>
Junghoon Park [Mon, 3 Jun 2024 03:43:53 +0000 (03:43 +0000)]
Merge "Change interface name in .proto file" into tizen
Changgyu Choi [Wed, 8 May 2024 04:19:29 +0000 (13:19 +0900)]
Fix wrong setting LD_LIBRARY_PATH
rpc-port source path was changed to "src/rpc-port"
Change-Id: Id3a8b7807f29f3261186df162b0971fdcfe4f9b0
Signed-off-by: Changgyu Choi <changyu.choi@samsung.com>
Changgyu Choi [Wed, 1 May 2024 23:49:33 +0000 (08:49 +0900)]
Release version 1.15.7
Changes:
- Modify directory hierarchy
Change-Id: I54dbfdae653b9855e0aae8242b45e0b017a65d74
Signed-off-by: Changgyu Choi <changyu.choi@samsung.com>
Changgyu Choi [Tue, 30 Apr 2024 09:02:01 +0000 (18:02 +0900)]
Modify directory hierarchy
The rpc-port sources have been moved to 'src/rpc-port'.
src/
+ src/rpc-port
Change-Id: I93ab201047ba4bfa424baaf2c80bc5dd6cd53e59
Signed-off-by: Changgyu Choi <changyu.choi@samsung.com>
jh9216.park [Mon, 15 Apr 2024 04:46:00 +0000 (00:46 -0400)]
Change interface name in .proto file
Change-Id: Icac22f7764d58c354d7c83cc1a0c4870fbe4a5b3
Signed-off-by: jh9216.park <jh9216.park@samsung.com>
Ilho Kim [Fri, 19 Apr 2024 05:25:24 +0000 (14:25 +0900)]
Release version 1.15.6
Changes:
- Fix Receive
Change-Id: I3bb40140f9f5322158dba454ba857312dccb8903
Signed-off-by: Ilho Kim <ilho159.kim@samsung.com>
Ilho Kim [Fri, 19 Apr 2024 05:14:36 +0000 (14:14 +0900)]
Fix Receive
After returning the EINTR in the first read, even if the read is successful
it regarded as the EINTR case and continue loop
Change-Id: Ia7cfa4cf60c7131b63d5a782ebf5e2b719e3c6c5
Signed-off-by: Ilho Kim <ilho159.kim@samsung.com>
Hwankyu Jhun [Mon, 15 Apr 2024 04:47:51 +0000 (13:47 +0900)]
Release version 1.15.5
Changes:
- Add logs for debugging
Change-Id: Ia367311c94f443848293960422dc0c6691741dee
Signed-off-by: Hwankyu Jhun <h.jhun@samsung.com>
Hwankyu Jhun [Mon, 15 Apr 2024 03:27:46 +0000 (12:27 +0900)]
Add logs for debugging
To check cynara check time, this patch adds logs.
Change-Id: I56e87942f0f984ab77635c3f5ce97c4fa306734c
Signed-off-by: Hwankyu Jhun <h.jhun@samsung.com>
Hwankyu Jhun [Thu, 11 Apr 2024 10:36:51 +0000 (19:36 +0900)]
Release version 1.15.4
Changes:
- Handle EINTR error
Change-Id: I619e89c705e4b4114af460ba74e100b8ac12ccb3
Signed-off-by: Hwankyu Jhun <h.jhun@samsung.com>
Hwankyu Jhun [Thu, 11 Apr 2024 10:19:47 +0000 (19:19 +0900)]
Handle EINTR error
Currently, the socket mode is blocking. We should handle EINTR error to
receive the data properly.
Change-Id: I3d3687658a0d2f2349e22bfc5494cdea502123f8
Signed-off-by: Hwankyu Jhun <h.jhun@samsung.com>
Hwankyu Jhun [Mon, 8 Apr 2024 02:12:47 +0000 (11:12 +0900)]
Release version 1.15.3
Changes:
- Fix wrong condition of if statement
- Increase timeout of recv() of client socket
Change-Id: If821b9813c4d95a204823cc8e2a63c5b49c1cdac
Signed-off-by: Hwankyu Jhun <h.jhun@samsung.com>
Hwankyu Jhun [Mon, 8 Apr 2024 01:55:15 +0000 (10:55 +0900)]
Increase timeout of recv() of client socket
This patch increases recv() timeout to 10 seconds from 5 seconds.
Change-Id: I3bfbd30e8646457c9a6da34dc79f1ec43951da09
Signed-off-by: Hwankyu Jhun <h.jhun@samsung.com>
Hwankyu Jhun [Mon, 8 Apr 2024 01:41:06 +0000 (10:41 +0900)]
Fix wrong condition of if statement
The condition of the if statement must be '!port_path_.empty()'.
Change-Id: Ic18f6cf743f2c94267462d0a2c5b61c577d63588
Signed-off-by: Hwankyu Jhun <h.jhun@samsung.com>
Hwankyu Jhun [Fri, 5 Apr 2024 09:04:11 +0000 (18:04 +0900)]
Release version 1.15.2
Changes:
- Fix crash issue related to delete this
Change-Id: Id7404c31faddfa7b6038564191cc40e86ce7813f
Signed-off-by: Hwankyu Jhun <h.jhun@samsung.com>
Hwankyu Jhun [Fri, 5 Apr 2024 08:22:39 +0000 (17:22 +0900)]
Fix crash issue related to delete this
While calling OnFileCreated(), we should not release the FileMonitor
instance. If it's deleted, it causes the crash issue.
Change-Id: I203db1fec079f705d3f6008944f0c8f3848cb04d
Signed-off-by: Hwankyu Jhun <h.jhun@samsung.com>
Hwankyu Jhun [Fri, 5 Apr 2024 00:22:04 +0000 (09:22 +0900)]
Release version 1.15.1
Changes:
- Separate benchmark tool from rpc-port
- Remove duplicated code
- Delete port path
Change-Id: I202d269259f180f16506f80d576b69f08c02a4d8
Signed-off-by: Hwankyu Jhun <h.jhun@samsung.com>
Hwankyu Jhun [Fri, 5 Apr 2024 00:03:07 +0000 (09:03 +0900)]
Delete port path
While calling a destructor of Stub, the port path should be deleted
if the caller is a daemon or service.
Change-Id: I806d5f0aeafbcf8740dbd2d4ef52b0fa5408d4b1
Signed-off-by: Hwankyu Jhun <h.jhun@samsung.com>
Hwankyu Jhun [Thu, 4 Apr 2024 23:29:44 +0000 (08:29 +0900)]
Remove duplicated code
Before entering the if statement code, calling SetNonblock() can be called.
Change-Id: I901e18226c8abb822acecfb2fd1e4e5057611286
Signed-off-by: Hwankyu Jhun <h.jhun@samsung.com>
Hwankyu Jhun [Wed, 3 Apr 2024 07:56:53 +0000 (16:56 +0900)]
Separate benchmark tool from rpc-port
The rpc-port-benchmark package is added.
The tools are moved to the package.
The following servies of systemd are added for socket & dbus activation:
- rpc-port-benchmark-server-tidl.service
- rpc-port-benchmark-server-tidl.socket
- rpc-port-benchmark-server-dbus.service
- tizen.appfw.rpcport.benchmark.dbus.busname
- tizen.appfw.rpcport.benchmark.dbus.service
- rpc-port-benchmark-client-tidl.service
- rpc-port-benchmark-client-dbus.service
Change-Id: I3d39ef2c6c452069ff0656b967cfe5b70f11a450
Signed-off-by: Hwankyu Jhun <h.jhun@samsung.com>
Hwankyu Jhun [Wed, 3 Apr 2024 09:40:54 +0000 (18:40 +0900)]
Release version 1.15.0
Changes:
- Allow dbus for root user
- Support benchmark tool for gRPC over UDS
- Support socket activation of systemd
Change-Id: Ie0bab45632d84b5ef711868353fc925693dde1ce
Signed-off-by: Hwankyu Jhun <h.jhun@samsung.com>