Ylarod
ccb59cb7ca
ksud: larger config value size limit, update docs
2025-11-22 17:15:57 +08:00
Tools-app
36d93501c8
Fix compile on x86_64
...
Co-authored-by: weishu <twsxtd@gmail.com >
Signed-off-by: Tools-app <localhost.hutao@gmail.com >
2025-11-22 16:58:25 +08:00
生于生时 亡于亡刻
27f6db889a
chore(ksud): enable clippy::all, clippy::pedantic && make clippy happy ( #617 )
...
* Revert "chore(ksud): bump ksud's deps (#585 )"
* Because it may cause compilation errors.
This reverts commit c8020b2066 .
* chore(ksud): remove unused Result
Signed-off-by: Tools-app <localhost.hutao@gmail.com >
* chore(ksud): enable clippy::all, clippy::pedantic && make clippy happy
https://rust-lang.github.io/rust-clippy/master/index.html#map_unwrap_or
https://rust-lang.github.io/rust-clippy/master/index.html#uninlined_format_args
https://rust-lang.github.io/rust-clippy/master/index.html#used_underscore_items
https://rust-lang.github.io/rust-clippy/master/index.html#redundant_closure_for_method_calls
https://rust-lang.github.io/rust-clippy/master/index.html#redundant_pub_crate
...
and use some #![allow(...)] or #[allow(...)]
Signed-off-by: Tools-app <localhost.hutao@gmail.com >
---------
Signed-off-by: Tools-app <localhost.hutao@gmail.com >
2025-11-22 16:58:19 +08:00
Wang Han
79b78e35ba
ksud: Use regex to validate module id ( #2968 )
...
https://github.com/tiann/KernelSU/blob/main/website/docs/guide/module.md?plain=1#L106
2025-11-21 13:10:15 +08:00
Ylarod
e3ef521de5
add module config, migrate managedFeatures ( #2965 )
...
Co-authored-by: YuKongA <70465933+YuKongA@users.noreply.github.com >
2025-11-20 22:06:12 +08:00
ShirkNeko
3d4e0e48b4
[skip ci]ksud: fmt & clippy
2025-11-20 20:30:06 +08:00
ShirkNeko
ff3071ca08
Step 5-1-1: No longer need to add unmounting for default mount points
2025-11-20 19:53:18 +08:00
ShirkNeko
ba1aaaa160
ksud: fix build
2025-11-19 21:18:53 +08:00
weishu
a4e5a571bd
ksud: Fix the metamodule's non-meta stage script, which is executed twice.
2025-11-19 21:11:10 +08:00
ShirkNeko
a8acea9180
support metamodule, remove built-in overlayfs mount
...
Co-authored-by: weishu <twsxtd@gmail.com >
Co-authored-by: YuKongA <70465933+YuKongA@users.noreply.github.com >
Co-authored-by: Ylarod <me@ylarod.cn >
2025-11-19 19:33:01 +08:00
ShirkNeko
a14551b3ec
Introducing miuix
...
Co-authored-by: YuKongA <70465933+YuKongA@users.noreply.github.com >
2025-11-19 16:11:33 +08:00
ShirkNeko
22cb7596a7
ksud: fmt & fix build
2025-11-18 12:44:27 +08:00
backslashxx
029ae8d389
kernel: expose umount list to ioctl interface ( #2950 )
...
This idea is borrowed from simonpunk's susfs4ksu.
What we see here is that, yeah well, lets just have userspace send us
what it
wants unmounted, this is better than hardcoding everything.
This also solves that issue where MNT_DETACH fails, as long as we send
unmountables in proper order.
A small anti-duplicate mechanism is also added.
While in-kernel umount is a bit worse than zygisk-provider-based ones,
this can still
serve as a healthy alternative.
---------
- Remove duplicate checks
Signed-off-by: backslashxx <118538522+backslashxx@users.noreply.github.com >
Co-authored-by: weishu <twsxtd@gmail.com >
Co-authored-by: ShirkNeko <109797057+ShirkNeko@users.noreply.github.com >
2025-11-18 12:36:42 +08:00
Wang Han
58c8289890
kernel/ksud: Fix KSU_IOCTL_NUKE_EXT4_SYSFS definition
2025-11-18 12:17:00 +08:00
weishu
94fa1e360a
ksud: Add cli interface for nuke_ext4_sysfs
2025-11-18 12:15:49 +08:00
ShirkNeko
c4d8c49e5c
kernel/manager/ksud: Add switch functionality to sulog
...
Signed-off-by: ShirkNeko <109797057+ShirkNeko@users.noreply.github.com >
2025-11-16 16:53:55 +08:00
生于生时 亡于亡刻
98e617f1bd
refactor(ksud): refactor ksud's kpm
...
- remove useless code
- ignore create dir all return
- when kpm file delete failed, return Error
2025-11-16 07:11:16 +08:00
生于生时 亡于亡刻
92a483d222
ksud: Optimise ksud ( #576 )
...
* opt: Optimize printing for result isn't successful
- print chain && backtrace to stderr
Signed-off-by: Tools-app <localhost.hutao@gmail.com >
* ci(ksud): add CARGO_TERM_COLOR for build
Signed-off-by: Tools-app <localhost.hutao@gmail.com >
* fix(ksud): fix uninstall package name is `me.weishu.kernelsu`
Signed-off-by: Tools-app <localhost.hutao@gmail.com >
* fix(ksud): Reverted to a private function for get_kernel_version
Signed-off-by: Tools-app <localhost.hutao@gmail.com >
* chore: format code for magic_mount.rs
Signed-off-by: Tools-app <localhost.hutao@gmail.com >
* fix: fix rustfmt
Signed-off-by: Tools-app <localhost.hutao@gmail.com >
* feat: Move the statement to the correct place && remove allow dead_code
Signed-off-by: Tools-app <localhost.hutao@gmail.com >
---------
Signed-off-by: Tools-app <localhost.hutao@gmail.com >
2025-11-15 18:25:17 +08:00
YuKongA
12fc2e6d5e
userspace: remove vendor_boot selection logic
...
- Only patch it when user actively selects vendor_boot.
2025-11-13 20:36:44 +08:00
ShirkNeko
5ce6c210c4
manager: install: add choose partition support
...
manager: fix KsuCli cmd
userspace: reuse choose_boot_device
- manager: simplify find boot image
Co-authored-by: weishu <twsxtd@gmail.com >
Co-authored-by: YuKongA <70465933+YuKongA@users.noreply.github.com >
Co-authored-by: ShirkNeko <109797057+ShirkNeko@users.noreply.github.com >
2025-11-11 15:16:11 +08:00
ShirkNeko
548258f922
kernel: Rewrite the kernel source code ( #554 )
...
* clean unused header
* on_module_mounted in ksud.c
* refact: use app_profile
* unified hook manager
* add zygote to hook target
* move reboot hook to supercall.c
* refactor: kernel_umount setuid_hook
* update mark rules, add init mark tracker
* remove reboot from check_syscall_fastpath
* update setuid_hook, remove uneeded sucompat enable
* log freely
* kernel: Migrate kprobe hook configuration items
* kernel: fix build
* cli: add ksud debug mark
* Fix rustfmt warning
---------
Co-authored-by: Ylarod <me@ylarod.cn >
Co-authored-by: Wang Han <416810799@qq.com >
Co-authored-by: ShirkNeko <109797057+ShirkNeko@users.noreply.github.com >
2025-11-09 01:14:26 +08:00
生于生时 亡于亡刻
7b4b5b431f
fix: fix ksud install error ( #550 )
...
Signed-off-by: Tools-app <localhost.hutao@gmail.com >
2025-11-08 17:31:58 +05:30
ShirkNeko
18ad2afadb
Reworking fdwrapper
...
Co-authored-by: 5ec1cff <ewtqyqyewtqyqy@gmail.com >
Co-authored-by: 5ec1cff <56485584+5ec1cff@users.noreply.github.com >
Co-authored-by: Ylarod <me@ylarod.cn >
2025-11-08 19:03:14 +08:00
生于生时 亡于亡刻
ed6b2e0a8e
opt: Optimize the kpm && uid_scanner ( #549 )
...
* opt: Optimize the structure of kpm.rs
Signed-off-by: Tools-app <localhost.hutao@gmail.com >
* opt: Optimize the uid_scanner startup logic in userspace && code style
Signed-off-by: Tools-app <localhost.hutao@gmail.com >
* opt: rename kpm's ioctl
Signed-off-by: Tools-app <localhost.hutao@gmail.com >
* opt: rename ksucalls::KsuKpmCmd's arg2..arg5
using
```rust
pub struct KsuKpmCmd {
pub control_code: u64,
pub arg1: u64,
pub arg2: u64,
pub result_code: u64,
}
```
This makes it easier to distinguish parameters.
Signed-off-by: Tools-app <localhost.hutao@gmail.com >
---------
Signed-off-by: Tools-app <localhost.hutao@gmail.com >
2025-11-08 13:43:32 +05:30
ShirkNeko
860bdce295
ksud :fmt
2025-11-08 12:41:03 +08:00
生于生时 亡于亡刻
d8a8ef6458
fix: fix self exe path error && opt: Optimize ensure_dir_exists processing ( #541 )
...
* fix: fix self exe path error
* opt: Optimize ensure_dir_exists processing
---------
Signed-off-by: Tools-app <localhost.hutao@gmail.com >
2025-11-08 12:34:22 +08:00
ShirkNeko
d37a78ea2d
fix build & cleanup
2025-11-08 11:48:35 +08:00
Ylarod
776bcc4d5d
rename to proxy_file
2025-11-08 11:36:15 +08:00
ShirkNeko
53d763cdf9
manager: Implement editable and removable mount points for LKM
2025-11-07 15:37:04 +08:00
ShirkNeko
03a164ebb7
kernel: By default, MNT_DETACH is used as the value for the mount point.
2025-11-07 13:37:09 +08:00
ShirkNeko
4769065cfc
ksud: Implementing editable, removable mount points
2025-11-07 13:15:07 +08:00
ShirkNeko
02f1aec6e9
ksud: Fix clippy
2025-11-07 00:11:02 +08:00
5ec1cff
826661dffb
feature: add devpts fd wrapper ( #21 )
...
This feature is intended to resolve devpts problem.
2025-11-06 23:56:53 +08:00
Ylarod
a2193841d5
skip init_features in safe mode
2025-11-06 23:03:43 +08:00
ShirkNeko
3dde6d9a25
manager: some ui changes
...
* Steeing: add enhanced security dropdown
* Settings: allow change module update check
* Settings: allow always enable/disable feat
* misc: update all deps
---------
Co-authored-by: weishu <twsxtd@gmail.com >
Co-authored-by: Ylarod <me@ylarod.cn >
Co-authored-by: YuKongA <70465933+YuKongA@users.noreply.github.com >
Co-authored-by: ShirkNeko <109797057+ShirkNeko@users.noreply.github.com >
2025-11-06 22:54:43 +08:00
Ylarod
91312effba
fix sepolicy patch hint ( #2872 )
2025-11-06 12:53:09 +08:00
Ylarod
1cc9fce2c6
rename to managedFeatures
2025-11-04 21:29:11 +08:00
ShirkNeko
7103779a11
ksud: Migrating KPM to ioctl
...
- Fix compatibility manager issues with legacy kernels
Co-authored-by: AlexLiuDev233 <wzylin11@outlook.com >
Co-authored-by: ShirkNeko <109797057+ShirkNeko@users.noreply.github.com >
2025-11-04 00:35:26 +08:00
ShirkNeko
e0bce04e79
ksud: clippy happy & fmt
2025-11-03 12:24:36 +08:00
Ylarod
ab8e966b7f
add check_managed_features to installer.sh
2025-11-03 11:48:03 +08:00
Ylarod
7ece40bb2c
ksud: add managed_feature
2025-11-03 11:47:39 +08:00
Ylarod
8ebe60ca04
update ioctl macro ( #2850 )
2025-11-02 20:15:55 +08:00
ShirkNeko
980613c6a9
ksud: fmt
2025-11-02 20:07:35 +08:00
ShirkNeko
47bcc956a3
fix lot ( #518 )
...
* refact: use feature subsystem
* use 64bit feature
* fix
* add fixme
* add feature max to get_info
* use 32bit feature id
* allow root to get/set feature
* more clean perm_check functions
* fix
* add feature command to ksud
kernel: do not expose perm checker
* fix security_task_fix_setuid_handler_pre
* add android16-6.12 ci
* manager: add kernel_umount switch
Co-authored-by: YuKongA <70465933+YuKongA@users.noreply.github.com >
* manager: Reinstate the LKM selection function
* kernel: add name and print command value
- Optimise sulog log display
Co-authored-by: Ylarod <me@ylarod.cn >
Co-authored-by: ShirkNeko <109797057+ShirkNeko@users.noreply.github.com >
* fix
* ksud: clippy
---------
Co-authored-by: Ylarod <me@ylarod.cn >
Co-authored-by: YuKongA <70465933+YuKongA@users.noreply.github.com >
Co-authored-by: weishu <twsxtd@gmail.com >
2025-11-02 20:01:24 +08:00
ShirkNeko
320e08b8fb
new supercall impl ( #511 )
...
* refactor: replace throne tracker with ksud token
* use snprintf
* refactor: new supercall impl
- Import the sukisu command
* disable seccomp for supercall users
* kernel: fmt clear
* kernel: Enable macro protection for sulog
- Only enabled on kernel versions greater than 5.10.245
* kernel: Refactor kprobe hooks and implement LSM hooks for improved security handling
* debug mode
* kernel: Add functionality to generate and validate authentication tokens for cmd_su
* kernel: Simplified manual SU command processing for code
* kernel: replace renameat hook with fsnotify
* Revert "refactor: replace throne tracker with ksud token"
This reverts commit aa2cbbf9cd .
* kernel: fix compile
* kernel: fix compile below 6.0
* Fix compile err; Add become_manager
* kernel: install fd for manager automaticlly
- extend to import the corresponding command
* manager: new supercall impl
* temp changes for ksud
* ksud: fix compile
* fix wrong opcode
* kernel: fix compile
* kernel: Fixed hook type and KPM status retrieval errors
* kernel: Fixed potential null pointer issue with current->mm in kernel version 5.10
When calling get_full_comm() within system call hooks, current->mm may be null (prctl). A fallback mechanism for current->comm must be added beforehand to prevent null pointer dereferences when accessing mm->arg_start/arg_end.
Signed-off-by: ShirkNeko <109797057+ShirkNeko@users.noreply.github.com >
* ksud: fix cargo check
* manager: Fixed an issue where the KSUD release and user-mode scanning switch failed to function correctly.
- kernel: fix spin lock mutual
kernel: Fixed potential null pointer issue with current->mm in kernel version 5.10
When calling get_full_comm() within system call hooks, current->mm may be null (prctl). A fallback mechanism for current->comm must be added beforehand to prevent null pointer dereferences when accessing mm->arg_start/arg_end.
kernel: try introduce like susfs's method to fix prctl delay
* seccomp: allow reboot
* use u32
* update clang-format
* 4 spaces save the world
* ksud: Fix build on macOS
* manager: bump minimal supported kernel.
- When get_hook_type is empty, display “Unknown”.
* Fix ksud build (#2841 )
* try fix ksud
* fix for macos
* remove any
* Fix ksud build, take 3
* try fix allowlist
* bring lsm hook back
* fix: a lot again
* Fix ksud build, take 4 (#2846 )
Remove init_driver_fd function for non-linux/android targets
* manager: Return to the native method via KSUd installation
* Merge with susfs-mian format
---------
Signed-off-by: ShirkNeko <109797057+ShirkNeko@users.noreply.github.com >
Co-authored-by: Ylarod <me@ylarod.cn >
Co-authored-by: weishu <twsxtd@gmail.com >
Co-authored-by: AlexLiuDev233 <wzylin11@outlook.com >
Co-authored-by: Wang Han <416810799@qq.com >
2025-11-01 23:30:30 +08:00
由崎黑板
7a338b1b43
Revert "Disable Samsung Activation Verify to solve -45(2000) error during activation on China Mainland Samsung devices ( #446 )" ( #492 )
...
This reverts commit 7ef9230d66 .
2025-10-26 22:22:11 +08:00
ShirkNeko
b5e5be2572
Revert: ksud, kernel: Pick some upstream changes and remove unused functions
...
* Upstream commit:
f130f7572f
Signed-off-by: Faris <rsuntk@yukiprjkt.my.id >
2025-10-22 00:09:56 +08:00
ShirkNeko
9c07fa6889
ksud: Fixed compilation errors
2025-10-19 19:00:47 +08:00
Faris
b6e2fa383a
ksud: fix compilation and remove unused imports
...
Signed-off-by: Faris <rsuntk@yukiprjkt.my.id >
2025-10-19 18:44:07 +08:00
Ylarod
61f85a029e
ksud, kernel: Pick some upstream changes and remove unused functions
...
* Upstream commit:
f130f7572f
Signed-off-by: Faris <rsuntk@yukiprjkt.my.id >
2025-10-19 18:41:30 +08:00