Commit Graph

496 Commits

Author SHA1 Message Date
Ylarod
5a6ab43ea4 add module config, migrate managedFeatures (#2965)
Co-authored-by: YuKongA <70465933+YuKongA@users.noreply.github.com>
2025-11-20 22:17:33 +08:00
ShirkNeko
c574f39ae3 kernel/manager: No longer need to add unmounting for default mount points 2025-11-20 21:38:21 +08:00
ShirkNeko
954ecd9644 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-20 21:38:01 +08:00
ShirkNeko
8250c0ecc2 Reapply "kernel: expose umount list to ioctl interface #2950"
This reverts commit 088996da9b.
2025-11-20 20:07:59 +08:00
ShirkNeko
088996da9b Revert "kernel: expose umount list to ioctl interface #2950"
This reverts commit 029ae8d389.
2025-11-20 18:48:59 +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
生于生时 亡于亡刻
c8020b2066 chore(ksud): bump ksud's deps (#585)
Name                                              Project            Compat   Latest   Kind         Platform
----                                              -------            ------   ------   ----         --------
addr2line->gimli                                  0.31.1             Removed  Removed  Normal       ---
ahash->cfg-if                                     1.0.0              Removed  Removed  Normal       ---
ahash->once_cell                                  1.21.3             Removed  Removed  Normal       cfg(not(all(target_arch = "arm", target_os = "none")))
ahash->version_check                              0.9.5              Removed  Removed  Build        ---
ahash->zerocopy                                   0.8.25             Removed  Removed  Normal       ---
android_logger                                    0.14.1             ---      0.15.1   Normal       cfg(target_os = "android")
android_logger->env_filter                        0.1.3              0.1.4    0.1.4    Normal       ---
android_logger->log                               0.4.27             0.4.28   0.4.28   Normal       ---
android_system_properties->libc                   0.2.172            0.2.177  0.2.177  Normal       ---
anstream->anstyle                                 1.0.10             1.0.13   1.0.13   Normal       ---
anstream->anstyle-parse                           0.2.6              0.2.7    0.2.7    Normal       ---
anstream->anstyle-query                           1.1.2              1.1.5    1.1.5    Normal       ---
anstream->anstyle-wincon                          3.0.7              3.0.11   3.0.11   Normal       cfg(windows)
anstream->colorchoice                             1.0.3              1.0.4    1.0.4    Normal       ---
anstream->is_terminal_polyfill                    1.70.1             1.70.2   1.70.2   Normal       ---
anstyle-query->windows-sys                        0.59.0             0.61.2   0.61.2   Normal       cfg(windows)
anstyle-wincon->anstyle                           1.0.10             1.0.13   1.0.13   Normal       ---
anstyle-wincon->once_cell                         1.21.3             Removed  Removed  Normal       cfg(windows)
anstyle-wincon->windows-sys                       0.59.0             0.61.2   0.61.2   Normal       cfg(windows)
anyhow                                            1.0.98             1.0.100  1.0.100  Normal       ---
arbitrary->derive_arbitrary                       1.4.1              1.4.2    1.4.2    Normal       ---
async-trait->proc-macro2                          1.0.95             1.0.103  1.0.103  Normal       ---
async-trait->quote                                1.0.40             1.0.42   1.0.42   Normal       ---
async-trait->syn                                  2.0.101            2.0.110  2.0.110  Normal       ---
backtrace->addr2line                              0.24.2             Removed  Removed  Normal       cfg(not(all(windows, target_env = "msvc", not(target_vendor = "uwp"))))
backtrace->cfg-if                                 1.0.0              Removed  Removed  Normal       ---
backtrace->libc                                   0.2.172            Removed  Removed  Normal       cfg(not(all(windows, target_env = "msvc", not(target_vendor = "uwp"))))
backtrace->miniz_oxide                            0.8.8              Removed  Removed  Normal       cfg(not(all(windows, target_env = "msvc", not(target_vendor = "uwp"))))
backtrace->object                                 0.36.7             Removed  Removed  Normal       cfg(not(all(windows, target_env = "msvc", not(target_vendor = "uwp"))))
backtrace->rustc-demangle                         0.1.24             Removed  Removed  Normal       ---
backtrace->windows-targets                        0.52.6             Removed  Removed  Normal       cfg(any(windows, target_os = "cygwin"))
cc->shlex                                         1.3.0              ---      Removed  Normal       ---
chrono                                            0.4.41             0.4.42   0.4.42   Normal       ---
chrono->android-tzdata                            0.1.1              Removed  Removed  Normal       cfg(target_os = "android")
chrono->iana-time-zone                            0.1.63             0.1.64   0.1.64   Normal       cfg(unix)
chrono->js-sys                                    0.3.77             0.3.82   0.3.82   Normal       cfg(all(target_arch = "wasm32", not(any(target_os = "emscripten", target_os = "wasi"))))
chrono->wasm-bindgen                              0.2.100            0.2.105  0.2.105  Normal       cfg(all(target_arch = "wasm32", not(any(target_os = "emscripten", target_os = "wasi"))))
chrono->windows-link                              0.1.3              0.2.1    0.2.1    Normal       cfg(windows)
clap                                              4.5.38             4.5.51   4.5.51   Normal       ---
clap->clap_builder                                4.5.38             4.5.51   4.5.51   Normal       ---
clap->clap_derive                                 4.5.32             4.5.49   4.5.49   Normal       ---
clap_builder->anstream                            0.6.18             0.6.21   0.6.21   Normal       ---
clap_builder->anstyle                             1.0.10             1.0.13   1.0.13   Normal       ---
clap_builder->clap_lex                            0.7.4              0.7.6    0.7.6    Normal       ---
clap_derive->proc-macro2                          1.0.95             1.0.103  1.0.103  Normal       ---
clap_derive->quote                                1.0.40             1.0.42   1.0.42   Normal       ---
clap_derive->syn                                  2.0.101            2.0.110  2.0.110  Normal       ---
const_format                                      0.2.34             0.2.35   0.2.35   Normal       ---
const_format_proc_macros->proc-macro2             1.0.95             1.0.103  1.0.103  Normal       ---
const_format_proc_macros->quote                   1.0.40             1.0.42   1.0.42   Normal       ---
core2->memchr                                     2.7.4              2.7.6    2.7.6    Normal       ---
cpufeatures->libc                                 0.2.172            0.2.177  0.2.177  Normal       aarch64-linux-android
crc->crc-catalog                                  2.4.0              ---      Removed  Normal       ---
crc32fast->cfg-if                                 1.0.0              1.0.4    1.0.4    Normal       ---
crossbeam-channel->crossbeam-utils                0.8.21             ---      Removed  Normal       ---
crypto-common->typenum                            1.18.0             1.19.0   1.19.0   Normal       ---
deranged->powerfmt                                0.2.0              ---      Removed  Normal       ---
derive-new->proc-macro2                           1.0.95             1.0.103  1.0.103  Normal       ---
derive-new->quote                                 1.0.40             1.0.42   1.0.42   Normal       ---
derive-new->syn                                   2.0.101            2.0.110  2.0.110  Normal       ---
derive_arbitrary->proc-macro2                     1.0.95             1.0.103  1.0.103  Normal       ---
derive_arbitrary->quote                           1.0.40             1.0.42   1.0.42   Normal       ---
derive_arbitrary->syn                             2.0.101            2.0.110  2.0.110  Normal       ---
digest->crypto-common                             0.1.6              0.1.7    0.1.7    Normal       ---
encoding_rs->cfg-if                               1.0.0              1.0.4    1.0.4    Normal       ---
env_filter->log                                   0.4.27             0.4.28   0.4.28   Normal       ---
env_logger->env_filter                            0.1.3              0.1.4    0.1.4    Normal       ---
env_logger->log                                   0.4.27             0.4.28   0.4.28   Normal       ---
errno->libc                                       0.2.172            0.2.177  0.2.177  Normal       cfg(target_os = "hermit")
errno->windows-sys                                0.59.0             0.61.2   0.61.2   Normal       cfg(windows)
errno-dragonfly->cc                               1.2.22             1.2.46   1.2.46   Build        ---
errno-dragonfly->libc                             0.2.172            0.2.177  0.2.177  Normal       ---
extattr->libc                                     0.2.172            0.2.177  0.2.177  Normal       ---
filetime->cfg-if                                  1.0.0              1.0.4    Removed  Normal       ---
filetime->libc                                    0.2.172            0.2.177  Removed  Normal       cfg(unix)
filetime->libredox                                0.1.9              0.1.10   Removed  Normal       cfg(target_os = "redox")
filetime->windows-sys                             0.60.2             ---      Removed  Normal       cfg(windows)
flate2->crc32fast                                 1.4.2              1.5.0    1.5.0    Normal       ---
flate2->miniz_oxide                               0.8.8              0.8.9    0.8.9    Normal       ---
fsevent-sys->libc                                 0.2.172            0.2.177  0.2.177  Normal       ---
generic-array->typenum                            1.18.0             1.19.0   1.19.0   Normal       ---
getopts                                           0.2.21             0.2.24   0.2.24   Normal       ---
getopts->unicode-width                            0.1.14             0.2.2    0.2.2    Normal       ---
getrandom->cfg-if                                 1.0.0              1.0.4    1.0.4    Normal       ---
getrandom->libc                                   0.2.172            0.2.177  0.2.177  Normal       cfg(all(any(target_os = "linux", target_os = "android"), not(any(all(target_os = "linux", target_env = ""), getrandom_backend = "custom", getrandom_backend = "linux_raw", getrandom_backend = "rdrand", getrandom_backend = "rndr"))))
getrandom->r-efi                                  5.2.0              5.3.0    5.3.0    Normal       cfg(all(target_os = "uefi", getrandom_backend = "efi_rng"))
getrandom->wasi                                   0.14.2+wasi-0.2.4  Removed  Removed  Normal       cfg(all(target_arch = "wasm32", target_os = "wasi", target_env = "p2"))
hashbrown->ahash                                  0.8.12             Removed  Removed  Normal       ---
iana-time-zone->js-sys                            0.3.77             0.3.82   0.3.82   Normal       cfg(all(target_arch = "wasm32", target_os = "unknown"))
iana-time-zone->log                               0.4.27             0.4.28   0.4.28   Normal       cfg(all(target_arch = "wasm32", target_os = "unknown"))
iana-time-zone->wasm-bindgen                      0.2.100            0.2.105  0.2.105  Normal       cfg(all(target_arch = "wasm32", target_os = "unknown"))
iana-time-zone->windows-core                      0.61.0             0.62.2   0.62.2   Normal       cfg(target_os = "windows")
iana-time-zone-haiku->cc                          1.2.22             1.2.46   1.2.46   Build        ---
include-flate->include-flate-codegen              0.2.0              0.3.1    0.3.1    Normal       ---
include-flate->lazy_static                        1.5.0              Removed  Removed  Normal       ---
include-flate->libflate                           2.1.0              2.2.1    2.2.1    Normal       ---
include-flate-codegen->libflate                   2.1.0              2.2.1    2.2.1    Normal       ---
include-flate-codegen->proc-macro2                1.0.95             1.0.103  1.0.103  Normal       ---
include-flate-codegen->quote                      1.0.40             1.0.42   1.0.42   Normal       ---
include-flate-codegen->syn                        2.0.101            2.0.110  2.0.110  Normal       ---
indexmap->hashbrown                               0.15.2             0.16.0   0.16.0   Normal       ---
inotify->bitflags                                 1.3.2              ---      2.10.0   Normal       ---
inotify->libc                                     0.2.172            0.2.177  0.2.177  Normal       ---
inotify-sys->libc                                 0.2.172            0.2.177  0.2.177  Normal       ---
is_executable                                     1.0.4              1.0.5    1.0.5    Normal       ---
is_executable->winapi                             0.3.9              Removed  Removed  Normal       cfg(target_os = "windows")
java-properties->regex-lite                       0.1.6              0.1.8    0.1.8    Normal       ---
js-sys->wasm-bindgen                              0.2.100            0.2.105  0.2.105  Normal       ---
jwalk->rayon                                      1.10.0             1.11.0   1.11.0   Normal       ---
kqueue->libc                                      0.2.172            0.2.177  0.2.177  Normal       ---
kqueue-sys->libc                                  0.2.172            0.2.177  0.2.177  Normal       ---
libc                                              0.2.172            0.2.177  0.2.177  Normal       ---
libflate->crc32fast                               1.4.2              1.5.0    1.5.0    Normal       ---
libflate->dary_heap                               0.3.7              0.3.8    0.3.8    Normal       ---
libflate->libflate_lz77                           2.1.0              2.2.0    2.2.0    Normal       ---
libflate_lz77->hashbrown                          0.14.5             0.16.0   0.16.0   Normal       ---
libredox->bitflags                                2.8.0              2.10.0   Removed  Normal       ---
libredox->libc                                    0.2.172            0.2.177  Removed  Normal       ---
libredox->redox_syscall                           0.5.17             0.5.18   Removed  Normal       ---
log                                               0.4.27             0.4.28   0.4.28   Normal       ---
lzma-rs->byteorder                                1.5.0              ---      Removed  Normal       ---
lzma-rs->crc                                      3.3.0              ---      Removed  Normal       ---
lzma-sys->cc                                      1.2.22             1.2.46   1.2.46   Build        ---
lzma-sys->cc                                      1.2.22             1.2.46   Removed  Build        ---
lzma-sys->libc                                    0.2.172            0.2.177  0.2.177  Normal       ---
lzma-sys->libc                                    0.2.172            0.2.177  Removed  Normal       ---
lzma-sys->pkg-config                              0.3.32             ---      Removed  Build        ---
miniz_oxide->adler2                               2.0.0              2.0.1    2.0.1    Normal       ---
miniz_oxide->adler2                               2.0.0              Removed  Removed  Normal       ---
mio->libc                                         0.2.172            0.2.177  0.2.177  Normal       cfg(target_os = "wasi")
mio->log                                          0.4.27             0.4.28   0.4.28   Normal       ---
mio->windows-sys                                  0.48.0             ---      0.61.2   Normal       cfg(windows)
nom->memchr                                       2.7.4              2.7.6    2.7.6    Normal       ---
notify                                            6.1.1              ---      8.2.0    Normal       ---
notify->bitflags                                  2.8.0              2.10.0   2.10.0   Normal       cfg(target_os = "macos")
notify->crossbeam-channel                         0.5.15             ---      Removed  Normal       ---
notify->filetime                                  0.2.26             ---      Removed  Normal       ---
notify->inotify                                   0.9.6              ---      0.11.0   Normal       cfg(any(target_os = "linux", target_os = "android"))
notify->libc                                      0.2.172            0.2.177  0.2.177  Normal       ---
notify->log                                       0.4.27             0.4.28   0.4.28   Normal       ---
notify->mio                                       0.8.11             ---      1.1.0    Normal       cfg(any(target_os = "freebsd", target_os = "openbsd", target_os = "netbsd", target_os = "dragonflybsd"))
notify->windows-sys                               0.48.0             ---      0.60.2   Normal       cfg(windows)
num-traits->autocfg                               1.4.0              1.5.0    1.5.0    Build        ---
object->memchr                                    2.7.4              Removed  Removed  Normal       ---
proc-macro2->unicode-ident                        1.0.18             1.0.22   1.0.22   Normal       ---
proc-macro2->unicode-ident                        1.0.18             1.0.22   Removed  Normal       ---
proc-macro2->unicode-ident                        1.0.18             Removed  Removed  Normal       ---
quote->proc-macro2                                1.0.95             1.0.103  1.0.103  Normal       ---
quote->proc-macro2                                1.0.95             1.0.103  Removed  Normal       ---
quote->proc-macro2                                1.0.95             Removed  Removed  Normal       ---
rayon->rayon-core                                 1.12.1             1.13.0   1.13.0   Normal       ---
redox_syscall->bitflags                           2.8.0              2.10.0   Removed  Normal       ---
regex-lite                                        0.1.6              0.1.8    0.1.8    Normal       ---
rust-embed                                        8.7.2              8.9.0    8.9.0    Normal       ---
rust-embed->include-flate                         0.3.0              0.3.1    0.3.1    Normal       ---
rust-embed->rust-embed-impl                       8.7.2              8.9.0    8.9.0    Normal       ---
rust-embed->rust-embed-utils                      8.7.2              8.9.0    8.9.0    Normal       ---
rust-embed-impl->proc-macro2                      1.0.95             1.0.103  1.0.103  Normal       ---
rust-embed-impl->quote                            1.0.40             1.0.42   1.0.42   Normal       ---
rust-embed-impl->rust-embed-utils                 8.7.2              8.9.0    8.9.0    Normal       ---
rust-embed-impl->syn                              2.0.101            2.0.110  2.0.110  Normal       ---
rustix                                            0.38.34            1.1.2    1.1.2    Normal       cfg(any(target_os = "android", target_os = "linux"))
rustix->bitflags                                  2.8.0              2.10.0   2.10.0   Normal       ---
rustix->errno                                     0.3.10             0.3.14   0.3.14   Development  ---
rustix->itoa                                      1.0.15             Removed  Removed  Normal       ---
rustix->libc                                      0.2.172            0.2.177  0.2.177  Development  ---
rustix->linux-raw-sys                             0.4.15             0.11.0   0.11.0   Normal       cfg(all(any(target_os = "android", target_os = "linux"), any(rustix_use_libc, miri, not(all(target_os = "linux", target_endian = "little", any(target_arch = "arm", all(target_arch = "aarch64", target_pointer_width = "64"), target_arch = "riscv64", all(rustix_use_experimental_asm, target_arch = "powerpc64"), all(rustix_use_experimental_asm, target_arch = "mips"), all(rustix_use_experimental_asm, target_arch = "mips32r6"), all(rustix_use_experimental_asm, target_arch = "mips64"), all(rustix_use_experimental_asm, target_arch = "mips64r6"), target_arch = "x86", all(target_arch = "x86_64", target_pointer_width = "64")))))))
rustix->linux-raw-sys                             0.9.4              0.11.0   0.11.0   Normal       cfg(all(any(target_os = "android", target_os = "linux"), any(rustix_use_libc, miri, not(all(target_os = "linux", any(target_endian = "little", any(target_arch = "s390x", target_arch = "powerpc")), any(target_arch = "arm", all(target_arch = "aarch64", target_pointer_width = "64"), target_arch = "riscv64", all(rustix_use_experimental_asm, target_arch = "powerpc"), all(rustix_use_experimental_asm, target_arch = "powerpc64"), all(rustix_use_experimental_asm, target_arch = "s390x"), all(rustix_use_experimental_asm, target_arch = "mips"), all(rustix_use_experimental_asm, target_arch = "mips32r6"), all(rustix_use_experimental_asm, target_arch = "mips64"), all(rustix_use_experimental_asm, target_arch = "mips64r6"), target_arch = "x86", all(target_arch = "x86_64", target_pointer_width = "64")))))))
rustix->once_cell                                 1.21.3             Removed  Removed  Normal       cfg(any(target_os = "android", target_os = "linux"))
rustix->windows-sys                               0.52.0             0.61.2   0.61.2   Normal       cfg(windows)
rustix->windows-sys                               0.59.0             0.61.2   0.61.2   Normal       cfg(windows)
same-file->winapi-util                            0.1.9              0.1.11   0.1.11   Normal       cfg(windows)
serde                                             1.0.219            1.0.228  1.0.228  Normal       ---
serde->serde_derive                               1.0.219            1.0.228  1.0.228  Normal       ---
serde->serde_derive                               1.0.219            1.0.228  Removed  Normal       ---
serde_derive->proc-macro2                         1.0.95             1.0.103  1.0.103  Normal       ---
serde_derive->proc-macro2                         1.0.95             1.0.103  Removed  Normal       ---
serde_derive->quote                               1.0.40             1.0.42   1.0.42   Normal       ---
serde_derive->quote                               1.0.40             1.0.42   Removed  Normal       ---
serde_derive->syn                                 2.0.101            2.0.110  2.0.110  Normal       ---
serde_derive->syn                                 2.0.101            2.0.110  Removed  Normal       ---
serde_json                                        1.0.140            1.0.145  1.0.145  Normal       ---
serde_json->memchr                                2.7.4              2.7.6    2.7.6    Normal       ---
serde_json->serde                                 1.0.219            1.0.228  1.0.228  Normal       ---
sha1->cfg-if                                      1.0.0              1.0.4    1.0.4    Normal       ---
sha2->cfg-if                                      1.0.0              1.0.4    1.0.4    Normal       ---
sha256->async-trait                               0.1.88             0.1.89   0.1.89   Normal       ---
sha256->bytes                                     1.10.1             1.11.0   1.11.0   Normal       ---
sha256->tokio                                     1.45.0             1.48.0   1.48.0   Normal       ---
syn->proc-macro2                                  1.0.95             1.0.103  1.0.103  Normal       ---
syn->proc-macro2                                  1.0.95             1.0.103  Removed  Normal       ---
syn->proc-macro2                                  1.0.95             Removed  Removed  Normal       ---
syn->quote                                        1.0.40             1.0.42   1.0.42   Normal       ---
syn->quote                                        1.0.40             1.0.42   Removed  Normal       ---
syn->quote                                        1.0.40             Removed  Removed  Normal       ---
syn->unicode-ident                                1.0.18             1.0.22   1.0.22   Normal       ---
syn->unicode-ident                                1.0.18             1.0.22   Removed  Normal       ---
syn->unicode-ident                                1.0.18             Removed  Removed  Normal       ---
tempfile                                          3.20.0             3.23.0   3.23.0   Normal       ---
tempfile->getrandom                               0.3.3              0.3.4    0.3.4    Normal       cfg(any(unix, windows, target_os = "wasi"))
tempfile->rustix                                  1.0.7              1.1.2    1.1.2    Normal       cfg(any(unix, target_os = "wasi"))
tempfile->windows-sys                             0.59.0             0.61.2   0.61.2   Normal       cfg(windows)
time->deranged                                    0.4.0              0.5.5    0.5.5    Normal       ---
time->deranged                                    0.4.0              0.5.5    Removed  Normal       ---
time->num-conv                                    0.1.0              ---      Removed  Normal       ---
time->powerfmt                                    0.2.0              ---      Removed  Normal       ---
time->serde                                       1.0.219            1.0.228  1.0.228  Normal       ---
time->serde                                       1.0.219            1.0.228  Removed  Normal       ---
time->time-core                                   0.1.4              0.1.6    0.1.6    Normal       ---
time->time-core                                   0.1.4              0.1.6    Removed  Normal       ---
tokio->backtrace                                  0.3.75             Removed  Removed  Normal       cfg(tokio_taskdump)
tokio->bytes                                      1.10.1             1.11.0   1.11.0   Normal       ---
walkdir->winapi-util                              0.1.9              0.1.11   0.1.11   Normal       cfg(windows)
wasi->wit-bindgen-rt                              0.39.0             Removed  Removed  Normal       ---
wasm-bindgen->cfg-if                              1.0.0              1.0.4    1.0.4    Normal       ---
wasm-bindgen->rustversion                         1.0.20             1.0.22   1.0.22   Normal       ---
wasm-bindgen->wasm-bindgen-macro                  0.2.100            0.2.105  0.2.105  Normal       ---
wasm-bindgen-backend->bumpalo                     3.17.0             Removed  Removed  Normal       ---
wasm-bindgen-backend->log                         0.4.27             Removed  Removed  Normal       ---
wasm-bindgen-backend->proc-macro2                 1.0.95             Removed  Removed  Normal       ---
wasm-bindgen-backend->quote                       1.0.40             Removed  Removed  Normal       ---
wasm-bindgen-backend->syn                         2.0.101            Removed  Removed  Normal       ---
wasm-bindgen-backend->wasm-bindgen-shared         0.2.100            Removed  Removed  Normal       ---
wasm-bindgen-macro->quote                         1.0.40             1.0.42   1.0.42   Normal       ---
wasm-bindgen-macro->wasm-bindgen-macro-support    0.2.100            0.2.105  0.2.105  Normal       ---
wasm-bindgen-macro-support->proc-macro2           1.0.95             1.0.103  1.0.103  Normal       ---
wasm-bindgen-macro-support->quote                 1.0.40             1.0.42   1.0.42   Normal       ---
wasm-bindgen-macro-support->syn                   2.0.101            2.0.110  2.0.110  Normal       ---
wasm-bindgen-macro-support->wasm-bindgen-backend  0.2.100            Removed  Removed  Normal       ---
wasm-bindgen-macro-support->wasm-bindgen-shared   0.2.100            0.2.105  0.2.105  Normal       ---
wasm-bindgen-shared->unicode-ident                1.0.18             1.0.22   1.0.22   Normal       ---
wasm-bindgen-shared->unicode-ident                1.0.18             Removed  Removed  Normal       ---
which                                             7.0.3              ---      8.0.0    Normal       ---
which->either                                     1.15.0             ---      Removed  Normal       ---
which->rustix                                     1.0.7              1.1.2    1.1.2    Normal       cfg(any(unix, target_os = "wasi", target_os = "redox"))
winapi->winapi-i686-pc-windows-gnu                0.4.0              Removed  Removed  Normal       i686-pc-windows-gnu
winapi->winapi-x86_64-pc-windows-gnu              0.4.0              Removed  Removed  Normal       x86_64-pc-windows-gnu
winapi-util->windows-sys                          0.59.0             0.61.2   0.61.2   Normal       cfg(windows)
windows-core->windows-implement                   0.60.0             0.60.2   0.60.2   Normal       ---
windows-core->windows-interface                   0.59.1             0.59.3   0.59.3   Normal       ---
windows-core->windows-link                        0.1.3              0.2.1    0.2.1    Normal       ---
windows-core->windows-result                      0.3.2              0.4.1    0.4.1    Normal       ---
windows-core->windows-strings                     0.4.0              0.5.1    0.5.1    Normal       ---
windows-implement->proc-macro2                    1.0.95             1.0.103  1.0.103  Normal       ---
windows-implement->quote                          1.0.40             1.0.42   1.0.42   Normal       ---
windows-implement->syn                            2.0.101            2.0.110  2.0.110  Normal       ---
windows-interface->proc-macro2                    1.0.95             1.0.103  1.0.103  Normal       ---
windows-interface->quote                          1.0.40             1.0.42   1.0.42   Normal       ---
windows-interface->syn                            2.0.101            2.0.110  2.0.110  Normal       ---
windows-result->windows-link                      0.1.3              0.2.1    0.2.1    Normal       ---
windows-strings->windows-link                     0.1.3              0.2.1    0.2.1    Normal       ---
windows-sys->windows-targets                      0.48.5             ---      0.53.5   Normal       ---
windows-sys->windows-targets                      0.48.5             ---      Removed  Normal       ---
windows-sys->windows-targets                      0.52.6             Removed  Removed  Normal       ---
windows-sys->windows-targets                      0.53.3             0.53.5   Removed  Normal       ---
windows-targets->windows-link                     0.1.3              0.2.1    Removed  Normal       cfg(windows_raw_dylib)
windows-targets->windows_aarch64_gnullvm          0.48.5             ---      0.53.1   Normal       aarch64-pc-windows-gnullvm
windows-targets->windows_aarch64_gnullvm          0.48.5             ---      Removed  Normal       aarch64-pc-windows-gnullvm
windows-targets->windows_aarch64_gnullvm          0.52.6             Removed  Removed  Normal       aarch64-pc-windows-gnullvm
windows-targets->windows_aarch64_gnullvm          0.53.0             0.53.1   Removed  Normal       aarch64-pc-windows-gnullvm
windows-targets->windows_aarch64_msvc             0.48.5             ---      0.53.1   Normal       cfg(all(target_arch = "aarch64", target_env = "msvc", not(windows_raw_dylib)))
windows-targets->windows_aarch64_msvc             0.48.5             ---      Removed  Normal       cfg(all(target_arch = "aarch64", target_env = "msvc", not(windows_raw_dylib)))
windows-targets->windows_aarch64_msvc             0.52.6             Removed  Removed  Normal       cfg(all(target_arch = "aarch64", target_env = "msvc", not(windows_raw_dylib)))
windows-targets->windows_aarch64_msvc             0.53.0             0.53.1   Removed  Normal       cfg(all(target_arch = "aarch64", target_env = "msvc", not(windows_raw_dylib)))
windows-targets->windows_i686_gnu                 0.48.5             ---      0.53.1   Normal       cfg(all(target_arch = "x86", target_env = "gnu", not(windows_raw_dylib)))
windows-targets->windows_i686_gnu                 0.48.5             ---      Removed  Normal       cfg(all(target_arch = "x86", target_env = "gnu", not(windows_raw_dylib)))
windows-targets->windows_i686_gnu                 0.52.6             Removed  Removed  Normal       cfg(all(target_arch = "x86", target_env = "gnu", not(target_abi = "llvm"), not(windows_raw_dylib)))
windows-targets->windows_i686_gnu                 0.53.0             0.53.1   Removed  Normal       cfg(all(target_arch = "x86", target_env = "gnu", not(target_abi = "llvm"), not(windows_raw_dylib)))
windows-targets->windows_i686_gnullvm             0.52.6             Removed  Removed  Normal       i686-pc-windows-gnullvm
windows-targets->windows_i686_gnullvm             0.53.0             0.53.1   Removed  Normal       i686-pc-windows-gnullvm
windows-targets->windows_i686_msvc                0.48.5             ---      0.53.1   Normal       cfg(all(target_arch = "x86", target_env = "msvc", not(windows_raw_dylib)))
windows-targets->windows_i686_msvc                0.48.5             ---      Removed  Normal       cfg(all(target_arch = "x86", target_env = "msvc", not(windows_raw_dylib)))
windows-targets->windows_i686_msvc                0.52.6             Removed  Removed  Normal       cfg(all(target_arch = "x86", target_env = "msvc", not(windows_raw_dylib)))
windows-targets->windows_i686_msvc                0.53.0             0.53.1   Removed  Normal       cfg(all(target_arch = "x86", target_env = "msvc", not(windows_raw_dylib)))
windows-targets->windows_x86_64_gnu               0.48.5             ---      0.53.1   Normal       cfg(all(target_arch = "x86_64", target_env = "gnu", not(target_abi = "llvm"), not(windows_raw_dylib)))
windows-targets->windows_x86_64_gnu               0.48.5             ---      Removed  Normal       cfg(all(target_arch = "x86_64", target_env = "gnu", not(target_abi = "llvm"), not(windows_raw_dylib)))
windows-targets->windows_x86_64_gnu               0.52.6             Removed  Removed  Normal       cfg(all(target_arch = "x86_64", target_env = "gnu", not(target_abi = "llvm"), not(windows_raw_dylib)))
windows-targets->windows_x86_64_gnu               0.53.0             0.53.1   Removed  Normal       cfg(all(target_arch = "x86_64", target_env = "gnu", not(target_abi = "llvm"), not(windows_raw_dylib)))
windows-targets->windows_x86_64_gnullvm           0.48.5             ---      0.53.1   Normal       x86_64-pc-windows-gnullvm
windows-targets->windows_x86_64_gnullvm           0.48.5             ---      Removed  Normal       x86_64-pc-windows-gnullvm
windows-targets->windows_x86_64_gnullvm           0.52.6             Removed  Removed  Normal       x86_64-pc-windows-gnullvm
windows-targets->windows_x86_64_gnullvm           0.53.0             0.53.1   Removed  Normal       x86_64-pc-windows-gnullvm
windows-targets->windows_x86_64_msvc              0.48.5             ---      0.53.1   Normal       cfg(all(target_arch = "x86_64", target_env = "msvc", not(windows_raw_dylib)))
windows-targets->windows_x86_64_msvc              0.48.5             ---      Removed  Normal       cfg(all(target_arch = "x86_64", target_env = "msvc", not(windows_raw_dylib)))
windows-targets->windows_x86_64_msvc              0.52.6             Removed  Removed  Normal       cfg(all(any(target_arch = "x86_64", target_arch = "arm64ec"), target_env = "msvc", not(windows_raw_dylib)))
windows-targets->windows_x86_64_msvc              0.53.0             0.53.1   Removed  Normal       cfg(all(any(target_arch = "x86_64", target_arch = "arm64ec"), target_env = "msvc", not(windows_raw_dylib)))
wit-bindgen-rt->bitflags                          2.8.0              Removed  Removed  Normal       ---
xz2->lzma-sys                                     0.1.20             ---      Removed  Normal       ---
zerocopy->zerocopy-derive                         0.8.25             Removed  Removed  Normal       ---
zerocopy-derive->proc-macro2                      1.0.95             Removed  Removed  Normal       ---
zerocopy-derive->quote                            1.0.40             Removed  Removed  Normal       ---
zerocopy-derive->syn                              2.0.101            Removed  Removed  Normal       ---
zip                                               3.0.0              ---      6.0.0    Normal       ---
zip->arbitrary                                    1.4.1              1.4.2    1.4.2    Normal       cfg(fuzzing)
zip->crc32fast                                    1.4.2              1.5.0    1.5.0    Normal       ---
zip->deflate64                                    0.1.9              0.1.10   0.1.10   Normal       ---
zip->deflate64                                    0.1.9              0.1.10   Removed  Normal       ---
zip->flate2                                       1.1.1              1.1.5    1.1.5    Normal       ---
zip->indexmap                                     2.9.0              2.12.0   2.12.0   Normal       ---
zip->lzma-rs                                      0.3.0              ---      Removed  Normal       ---
zip->memchr                                       2.7.4              2.7.6    2.7.6    Normal       ---
zip->time                                         0.3.41             0.3.44   0.3.44   Normal       ---
zip->time                                         0.3.41             0.3.44   Removed  Normal       ---
zip->xz2                                          0.1.7              ---      Removed  Normal       ---
zip->zopfli                                       0.8.2              0.8.3    0.8.3    Normal       ---
zopfli->bumpalo                                   3.17.0             3.19.0   3.19.0   Normal       ---
zopfli->crc32fast                                 1.4.2              1.5.0    1.5.0    Normal       ---
zopfli->log                                       0.4.27             0.4.28   0.4.28   Normal       ---

Signed-off-by: Tools-app <localhost.hutao@gmail.com>
2025-11-16 15:47:11 +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
ShirkNeko
89ce65e8ba Use a more appropriate minor version number 2025-11-05 16:41:30 +08:00
ShirkNeko
0400b94674 v2.0.0 2025-11-05 15:43:10 +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
02474a5953 update embed ksuinit to v2 2025-11-02 23:49:46 +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
5ec1cff
b1564b77a2 ksud: refine mount
- `magic_mount` now takes the tmp_path from its argument
- `.notmpfs` and `.nomount` now behave the same

skip:
ksud: cache tmp path (74ce44de21963fddc83897846eed28eca89d78aa)

Co-authored-by: shatyuka <shatyuka@qq.com>
Signed-off-by: Faris <rsuntk@yukiprjkt.my.id>
2025-10-19 18:39:57 +08:00
Wang Han
cd78c2693a Don't write newline character to cgroup node (#2804)
This prevents su hang on oplus devices, maybe related to bad kernel
hooks.
2025-10-16 12:28:36 +08:00