topjohnwu
ab5fedda0b
Prevent Magisk database race condition
...
The database should only be accessed by a single process, which is magiskd.
This means 'magisk --sqlite [SQL]' has to be updated to pass the SQL command to the daemon.
In addition, open the database connection with SQLITE_OPEN_FULLMUTEX to support multithread in magiskd.
2018-11-16 03:20:30 -05:00
topjohnwu
ba70269398
Directly print output over socket
2018-11-16 01:49:15 -05:00
topjohnwu
ab74290fe3
Move magiskhide config into database
2018-11-16 01:15:34 -05:00
topjohnwu
3aad9d8166
Add CLI to detect MagiskHide status
2018-11-16 00:37:41 -05:00
topjohnwu
89e0be0099
Fix a bug causing magiskhide CLI freezing
2018-11-13 02:22:55 -05:00
topjohnwu
ef40c1212e
Prevent infinite loop if process is killed
...
Close #761
2018-11-13 02:11:02 -05:00
topjohnwu
3a2a2a4ffa
Micro optimizations
2018-11-13 02:07:02 -05:00
topjohnwu
9592a69986
Prevent unmounting non-custom mount points
2018-11-13 01:53:48 -05:00
topjohnwu
8745c7884e
Rename Array to Vector
...
Finally get rid of the C style vector, rename the template class to its proper name
2018-11-08 05:03:59 -05:00
topjohnwu
be5f00aa1a
Prevent stack overflow when managing hide list
2018-11-07 22:46:56 -05:00
topjohnwu
7c12bf7fa1
Modernize code base
2018-11-07 02:10:38 -05:00
topjohnwu
cda57dd4b4
Fully migrate Magisk to C++
2018-11-04 04:15:51 -05:00
topjohnwu
6339ba6bfb
Upgrade libutils to C++
2018-11-03 03:06:01 -04:00
topjohnwu
a7824af5a8
Expose persist prop API
2018-11-03 00:15:21 -04:00
topjohnwu
b8a3cc8b60
Separate magiskhide logic from main daemon
2018-11-01 14:08:33 -04:00
topjohnwu
27c688252d
Store hidelist in magisk database
2018-11-01 13:23:12 -04:00
topjohnwu
2efc423cf8
Add missing flags and move debug logging logic to libutils
2018-10-28 04:25:31 -04:00
topjohnwu
1046dd5eda
Default to cmdline logging
2018-10-27 18:34:38 -04:00
topjohnwu
a9121fa28f
Reorganize libutils and cleanups
2018-10-12 21:46:09 -04:00
topjohnwu
acf7c0c665
Minor reorganization of daemons
2018-10-12 00:50:47 -04:00
topjohnwu
60b3b8ddce
Better incremental builds
2018-09-27 03:56:56 -04:00
topjohnwu
df8b047bca
Generalize logging interface
2018-09-27 03:11:10 -04:00
topjohnwu
1d53335ae5
Dynamic load libselinux
2018-09-27 00:09:59 -04:00
topjohnwu
7b5d79d313
Kill all processes using the same UID of the target
...
To workaround OOS embryo optimization
2018-08-08 05:47:58 +08:00
topjohnwu
5be035fd44
Try logging a little harder
2018-08-03 01:58:56 +08:00
topjohnwu
f339a087a2
Let Magisk compile against SDK 16
2018-07-13 22:14:32 +08:00
topjohnwu
c6fc0e587e
Support hardlink based proc ns
2018-07-11 23:41:38 +08:00
topjohnwu
e7a2144def
Optimize magiskhide to work with the log daemon
2018-07-04 01:52:23 +08:00
topjohnwu
a8030c39b1
Separate logging into its own daemon
2018-07-02 22:11:28 +08:00
topjohnwu
7243b9e72f
Improve log_monitor implementation
2018-07-01 18:18:12 +08:00
osm0sis
a82ef6bd35
MagiskHide: add ro.boot.vbmeta.device_state=locked
2018-06-19 14:23:06 -07:00
topjohnwu
44395e8ff0
Fix root loss issue when MagiskHide is enabled
...
In previous implementations, proc_monitor checks whether the mount namespace of an app is actually separated from zygote using a list generated at startup.
However, for some unknown reason, some devices (e.g. Samsung) has multiple zygote servers running in the background.
This means that app processes spawned from the unlisted zygotes are not checked whether the separation is done or not, causing MagiskHide unmount stuffs in the namespace of zygote, and since zygote is the "mother" of all apps, all apps will no longer have root access.
Since I'm not sure of the reason why multiple zygotes exists, so instead of checking the namespace against a list, compare the current namespace against the parent process's namespace.
This will make sure the namespace is NOT the same as the parent process, which is supposed to be the zygote server.
2018-06-20 04:55:34 +08:00
topjohnwu
838f3cc01e
Simplify hiding conditions
2018-06-17 05:16:52 +08:00
topjohnwu
d08fd0561a
Remove invincible mode
2018-06-17 01:28:29 +08:00
topjohnwu
88fae36b8a
Hide sub-services of apps for hiding
...
Close #383
2018-04-29 15:10:35 +08:00
topjohnwu
fb491cfdcf
Add Protobuf support to resetprop
2018-04-29 01:20:48 +08:00
topjohnwu
9484ec0c17
Massive refactoring
...
Remove post-fs mode
2018-04-22 02:16:56 +08:00
topjohnwu
42284c5efb
Test logcat instead of checking logd
2018-04-08 02:12:40 +08:00
topjohnwu
787f7b3035
Remove backwards compatibility symlinks
...
These links cause magiskhide unable to work ideally and add complications. I think I gave enough time for migration
2018-03-27 00:35:59 +08:00
topjohnwu
ae97d011ae
Change MagiskHide state if logd is disabled
2018-03-18 12:17:10 +08:00
topjohnwu
754fafcfe9
Check logd before logging
2018-02-12 02:48:15 +08:00
topjohnwu
40b6fe03c2
Tweak enum
2018-02-11 18:50:42 +08:00
topjohnwu
328fc44194
Rename module core to native
2018-01-27 09:11:28 +08:00