Commit Graph

63 Commits

Author SHA1 Message Date
Mygod
8ad03e38e8 Add support for daemon launching without relocation
Improves RAM usage and potentially addresses #368.

Inspired by: fc42e8274e/service/src/main/java/com/topjohnwu/superuser/internal/RootServiceManager.java (L186)
2022-05-15 18:15:23 -04:00
Mygod
b411ecc8c9 Move read stderr inside doInit 2022-05-15 17:50:00 -04:00
Mygod
f136770e04 Address #339 2022-02-27 16:29:10 -05:00
Mygod
f9db79cb1f Handle edge case exception of flush 2022-02-21 20:33:05 -05:00
Mygod
1cf961b23c Stop using thread pools 2021-11-26 23:05:25 -05:00
Mygod
f50d579fd3 Wrap race condition in CancellationException 2021-08-29 19:45:14 -04:00
Mygod
fb8538ecbe Fix race conditions for cancellables 2021-08-29 19:45:14 -04:00
Mygod
c3f5f43b02 Add debug for readUnexpectedStderr 2021-05-31 13:25:01 -04:00
Mygod
0a2e13556a Optimize usage of SparseArray 2021-05-31 02:10:00 -04:00
Mygod
afa80add94 Prevent race condition while reading uuid 2021-05-30 19:30:58 -04:00
Mygod
87a1b8b08d Refine code style 2021-05-27 13:33:26 -04:00
Mygod
2e83f8b22d Use synchronized instead of Mutex 2021-05-25 14:14:38 -04:00
Mygod
4ad0e596d0 Refine implementation of init 2021-05-25 14:12:05 -04:00
Mygod
d9f67661d3 Handle IOException in readUnexpectedStderr 2021-05-25 13:38:54 -04:00
Mygod
9c04af0d61 Fix counter not protected by mutex 2021-05-20 17:10:40 -04:00
Mygod
a344398624 Handle unexpected death 2021-05-09 10:23:21 -04:00
Mygod
5c4f88967b Migrate from deprecated APIs 2021-05-05 10:04:55 -04:00
Mygod
310b55553b Suppress EBADF for RootServer as well 2021-04-24 12:56:04 -04:00
Mygod
78398a9eef Reduce process premature death warnings 2021-04-16 15:39:12 -04:00
Mygod
a1d86e4929 Fix bufferedReaders not closed 2021-02-02 03:03:50 +08:00
Mygod
df6676950d Fix throwing in finally 2020-12-10 09:16:05 +08:00
Mygod
795caee54d Prevent RootServer.create cancelling the entire scope 2020-11-08 01:49:12 -05:00
Mygod
973c947d4a Shutdown RootServer forcibly if timeout 2020-11-04 07:27:24 +08:00
Mygod
18f27baa23 Remove timber 2020-08-24 01:40:23 +08:00
Mygod
1029728f22 Refine code style 2020-08-18 05:43:30 +08:00
Mygod
35055bc074 Fix deprecations 2020-08-18 05:02:09 +08:00
Mygod
2989094efd Update dependencies 2020-08-18 04:43:53 +08:00
Mygod
618360a6c9 More informative error message 2020-08-12 10:37:03 -04:00
Mygod
de9d2a744f Ensure crash is reflected 2020-08-12 12:01:23 +08:00
Mygod
c3b2d476e5 Improve logging 2020-08-08 07:51:47 +08:00
Mygod
6b10334919 Remove dependency on librootjava 2020-08-08 07:18:28 +08:00
Mygod
32161d4997 Refine locating ld.config.txt 2020-08-08 02:43:45 +08:00
Mygod
f1bead4316 Revert "Use /data if possible"
This reverts commit 9fae52277e.
2020-08-07 23:15:57 +08:00
Mygod
9fae52277e Use /data if possible 2020-08-07 09:53:08 +08:00
Mygod
4e9561fc86 Run root server in unrestricted SELinux context on Android 10+
Related bug: https://github.com/Chainfire/librootjava/issues/21
2020-08-07 09:37:05 +08:00
Mygod
83154e6d38 Check for active while locked 2020-07-28 03:39:41 +08:00
Mygod
70ca91cd08 Prevent callback being called twice when cancelling 2020-07-28 03:31:37 +08:00
Mygod
680021a27b Prevent Samsung KNOX hijacking stdout 2020-07-28 03:16:21 +08:00
Mygod
8908605767 Prevent future write attempts to System.out 2020-07-24 03:38:45 +08:00
Mygod
5e52e63d1d Do not rely on supporting -n for cp
Fixes #176.
2020-07-23 09:45:49 +08:00
Mygod
3fead73a12 Refine logging 2020-07-23 07:50:38 +08:00
Mygod
ecd277cd81 Update dependencies 2020-07-23 07:37:09 +08:00
Mygod
b0cfb6be68 Add debug logging 2020-07-20 09:09:03 +08:00
Mygod
2da3b9b5a3 Fix #173 2020-07-19 02:35:38 +08:00
Mygod
a90df1b88c Downgrade coroutines until Kotlin 1.4 2020-07-18 03:41:50 +08:00
Mygod
6bef518ac0 Make sure unregistering callback is not cancelled 2020-07-18 03:28:14 +08:00
Mygod
14beddd0dd Sync debug value to Logger 2020-07-10 04:33:58 +08:00
Mygod
07df004ecf Add back relocating appProcess
Fixes #170.

Fixes
2020-07-08 23:22:50 +08:00
Mygod
05fead2431 Skip patching LD_LIBRARY_PATH for Android 7+ 2020-07-07 07:55:12 +08:00
Mygod
90f49b3159 Throw CancellationException directly, without wrapping in RemoteException 2020-07-07 06:28:45 +08:00