Skip to content

Commit

Permalink
Merge branch 'topjohnwu:master' into development
Browse files Browse the repository at this point in the history
  • Loading branch information
jyotidwi authored Nov 11, 2023
2 parents 0c43c12 + cfb20b0 commit 80e3761
Show file tree
Hide file tree
Showing 73 changed files with 1,941 additions and 2,343 deletions.
3 changes: 0 additions & 3 deletions .gitmodules
Original file line number Diff line number Diff line change
Expand Up @@ -22,9 +22,6 @@
[submodule "zlib"]
path = native/src/external/zlib
url = https://android.googlesource.com/platform/external/zlib
[submodule "parallel-hashmap"]
path = native/src/external/parallel-hashmap
url = https://github.com/greg7mdp/parallel-hashmap.git
[submodule "zopfli"]
path = native/src/external/zopfli
url = https://github.com/google/zopfli.git
Expand Down
4 changes: 2 additions & 2 deletions README.MD
Original file line number Diff line number Diff line change
Expand Up @@ -19,8 +19,8 @@ Some highlight features:

[Github](https://github.com/topjohnwu/Magisk/) is the only source where you can get official Magisk information and downloads.

[![](https://img.shields.io/badge/Magisk-v26.3-blue)](https://github.com/topjohnwu/Magisk/releases/tag/v26.3)
[![](https://img.shields.io/badge/Magisk%20Beta-v26.3-blue)](https://github.com/topjohnwu/Magisk/releases/tag/v26.3)
[![](https://img.shields.io/badge/Magisk-v26.4-blue)](https://github.com/topjohnwu/Magisk/releases/tag/v26.4)
[![](https://img.shields.io/badge/Magisk%20Beta-v26.4-blue)](https://github.com/topjohnwu/Magisk/releases/tag/v26.4)
[![](https://img.shields.io/badge/Magisk-Canary-red)](https://raw.githubusercontent.com/topjohnwu/magisk-files/canary/app-release.apk)
[![](https://img.shields.io/badge/Magisk-Debug-red)](https://raw.githubusercontent.com/topjohnwu/magisk-files/canary/app-debug.apk)

Expand Down
56 changes: 28 additions & 28 deletions app/src/main/res/values-tr/strings.xml
Original file line number Diff line number Diff line change
Expand Up @@ -34,7 +34,7 @@
<!--Install-->
<string name="keep_force_encryption">Zorla şifrelemeyi koru</string>
<string name="keep_dm_verity">AVB 2.0/dm-verity\'yi koruyun</string>
<string name="patch_vbmeta">Önyükleme görüntüsünde vbmeta yaması</string>
<string name="patch_vbmeta">Önyükleme görüntüsünde vbmeta yamasını uygula</string>
<string name="recovery_mode">Kurtarma Modu</string>
<string name="install_options_title">Seçenekler</string>
<string name="install_method_title">Yöntem</string>
Expand All @@ -55,24 +55,24 @@
<string name="touch_filtered_warning">Bir uygulama bir Süper Kullanıcı isteğini engellediği için Magisk yanıtınızı doğrulayamıyor</string>
<string name="deny">Reddet</string>
<string name="prompt">Hemen</string>
<string name="grant">İzin</string>
<string name="su_warning">Cihazınıza tam erişim sağlar.\nEmin değilseniz reddedin!</string>
<string name="grant">İzin ver</string>
<string name="su_warning">Cihazınıza tam erişim sağlar.\nEğer emin değilseniz reddedin!</string>
<string name="forever">Daima</string>
<string name="once">Bir kere</string>
<string name="tenmin">10 dakika</string>
<string name="twentymin">20 dakika</string>
<string name="thirtymin">30 dakika</string>
<string name="sixtymin">60 dakika</string>
<string name="su_allow_toast">%1$s Süper Kullanıcı hakları verildi</string>
<string name="su_deny_toast">%1$s Süper Kullanıcı hakları reddedildi</string>
<string name="su_snack_grant">%1$s Süper Kullanıcı hakları verildi</string>
<string name="su_snack_deny">%1$s Süper Kullanıcı hakları reddedildi</string>
<string name="su_snack_notif_on">%1$s bildirimleri etkinleştirildi</string>
<string name="su_snack_notif_off">%1$s bildirimleri devre dışı bırakıldı</string>
<string name="su_snack_log_on">%1$s günlüğü etkinleştirildi</string>
<string name="su_snack_log_off">%1$s günlüğü devre dışı bırakıldı</string>
<string name="su_allow_toast">%1$s uygulamasının Süper Kullanıcı izni verildi</string>
<string name="su_deny_toast">%1$s uygulamasının Süper Kullanıcı izni reddedildi</string>
<string name="su_snack_grant">%1$s uygulamasının Süper Kullanıcı izni verildi</string>
<string name="su_snack_deny">%1$s uygulamasının Süper Kullanıcı izni reddedildi</string>
<string name="su_snack_notif_on">%1$s uygulamasının bildirimleri etkinleştirildi</string>
<string name="su_snack_notif_off">%1$s uygulamasının bildirimleri devre dışı bırakıldı</string>
<string name="su_snack_log_on">%1$s uygulamasının günlüğü etkinleştirildi</string>
<string name="su_snack_log_off">%1$s uygulamasının günlüğü devre dışı bırakıldı</string>
<string name="su_revoke_title">İptal et?</string>
<string name="su_revoke_msg">%1$s Süper Kullanıcı haklarını iptal etmeyi onaylayın</string>
<string name="su_revoke_msg">%1$s uygulamasının Süper Kullanıcı haklarını iptal etmeyi onaylayın</string>
<string name="toast">Tost</string>
<string name="none">Hiçbiri</string>

Expand All @@ -99,11 +99,11 @@

<!--Module-->
<string name="no_info_provided">(Bilgi verilmedi)</string>
<string name="reboot_userspace">Yumuşak yeniden başlatma</string>
<string name="reboot_recovery">Kurtarma için Yeniden Başlatın</string>
<string name="reboot_bootloader">Bootloader için Yeniden Başlatın</string>
<string name="reboot_download">İndirmek için Yeniden Başlatın</string>
<string name="reboot_edl">EDL için Yeniden Başlatın</string>
<string name="reboot_userspace">Yazılımsal olarak yeniden başlat</string>
<string name="reboot_recovery">Kurtarma modunda Yeniden Başlat</string>
<string name="reboot_bootloader">Önyükleyici modunda Yeniden Başlat</string>
<string name="reboot_download">Download modu için Yeniden Başlat</string>
<string name="reboot_edl">EDL modunda Yeniden Başlat</string>
<string name="module_version_author">%1$s / %2$s</string>
<string name="module_state_remove">Kaldır</string>
<string name="module_state_restore">Geri yükle</string>
Expand All @@ -119,9 +119,9 @@
<!--Settings-->
<string name="settings_dark_mode_title">Tema Modu</string>
<string name="settings_dark_mode_message">Tarzınıza en uygun modu seçin!</string>
<string name="settings_dark_mode_light">Daima Açık</string>
<string name="settings_dark_mode_light">Her zaman Açık</string>
<string name="settings_dark_mode_system">Sistemi Takip Et</string>
<string name="settings_dark_mode_dark">Daima Koyu</string>
<string name="settings_dark_mode_dark">Her zaman Koyu</string>
<string name="settings_download_path_title">İndirme yolu</string>
<string name="settings_download_path_message">Dosyalar %1$s konumuna kaydedilecek</string>
<string name="settings_hide_app_title">Magisk uygulamasını gizleyin</string>
Expand All @@ -131,7 +131,7 @@
<string name="language">Dil</string>
<string name="system_default">(Sistem Varsayılanı)</string>
<string name="settings_check_update_title">Güncellemeleri Kontrol Et</string>
<string name="settings_check_update_summary">Arka planda güncellemeleri periyodik olarak kontrol edin</string>
<string name="settings_check_update_summary">Arka planda güncellemeleri düzenli olarak kontrol edin</string>
<string name="settings_update_channel_title">Güncelleme Kanalı</string>
<string name="settings_update_stable">Stabil</string>
<string name="settings_update_beta">Beta</string>
Expand Down Expand Up @@ -165,7 +165,7 @@
<string name="superuser_notification">Süper Kullanıcı Bildirimi</string>
<string name="settings_su_reauth_title">Yükseltmeden sonra yeniden kimlik doğrulaması yapın</string>
<string name="settings_su_reauth_summary">Uygulamaları yükselttikten sonra Süper Kullanıcı izinlerini tekrar isteyin</string>
<string name="settings_su_tapjack_title">Sahte Ekran Koruması</string>
<string name="settings_su_tapjack_title">Sahte Ekran (Tapjacking) Koruması</string>
<string name="settings_su_tapjack_summary">Süper Kullanıcı bilgi istemi iletişim kutusu, herhangi bir başka pencere veya yer paylaşımı tarafından engellendiğinde girişe yanıt vermeyecektir.</string>
<string name="settings_customization">Özelleştir</string>
<string name="setting_add_shortcut_summary">Uygulamayı gizledikten sonra adın ve simgenin tanınmasının zor olması durumunda ana ekrana güzel bir kısayol ekleyin</string>
Expand Down Expand Up @@ -216,26 +216,26 @@
<string name="restore_done">Geri yükleme tamamlandı!</string>
<string name="restore_fail">Stok yedeği mevcut değil!</string>
<string name="setup_fail">Kurulum başarısız oldu</string>
<string name="env_fix_title">Ek Kurulum Gerektirir</string>
<string name="env_fix_title">Ek Kurulum Gerekiyor</string>
<string name="env_fix_msg">Magisk\'in düzgün çalışması için cihazınızın ek kuruluma ihtiyacı var. Devam etmek ve yeniden başlatmak istiyor musunuz?</string>
<string name="env_full_fix_msg">Cihazınızın düzgün çalışması için Magisk\'in yeniden yüklenmeye ihtiyacı var. Lütfen Magisk\'i uygulama içinde yeniden yükleyin, kurtarma modu doğru cihaz bilgilerini alamıyor.</string>
<string name="setup_msg">Ortam kurulumu çalıştırılıyor…</string>
<string name="authenticate">Kimlik Doğrula</string>
<string name="unsupport_magisk_title">Desteklenmeyen Magisk Sürümü</string>
<string name="unsupport_magisk_msg">Uygulamanın bu sürümü, %1$s\'den daha düşük Magisk sürümlerini desteklemiyor.\n\nUygulama, Magisk kurulu değilmiş gibi davranacak, lütfen Magisk\'i mümkün olan en kısa sürede yükseltin.</string>
<string name="unsupport_general_title">Anormal Durum</string>
<string name="unsupport_system_app_msg">Bu uygulamayı bir sistem uygulaması olarak çalıştırmak desteklenmiyor. Lütfen uygulamayı bir kullanıcı uygulamasına geri döndürün.</string>
<string name="unsupport_other_su_msg">Magisk\'ten olmayan bir \"su\" ikili dosyası algılandı. Lütfen rakip kök çözümlerini kaldırın ve/veya Magisk\'i yeniden yükleyin.</string>
<string name="unsupport_system_app_msg">Bu uygulamayı bir sistem uygulaması olarak çalıştırma desteklenmiyor. Lütfen uygulamayı bir kullanıcı uygulamasına geri döndürün.</string>
<string name="unsupport_other_su_msg">Magisk\'ten olmayan bir \"su\" ikili dosyası algılandı. Lütfen başka kök çözümlerini kaldırın ve/veya Magisk\'i yeniden yükleyin.</string>
<string name="unsupport_external_storage_msg">Magisk, harici depolama birimine kurulur. Lütfen uygulamayı dahili depolamaya taşıyın.</string>
<string name="unsupport_nonroot_stub_msg">Kök kaybolduğu için gizli Magisk uygulaması çalışmaya devam edemiyor. Lütfen orijinal APK\'yı geri yükleyin.</string>
<string name="unsupport_nonroot_stub_title">@string/settings_restore_app_title</string>
<string name="external_rw_permission_denied">Bu işlevi etkinleştirmek için depolama izni verin</string>
<string name="post_notifications_denied">Bu işlevi etkinleştirmek için bildirim izni verin</string>
<string name="install_unknown_denied">Bu işlevi etkinleştirmek için "bilinmeyen uygulamaları yükle"ye izin verin</string>
<string name="external_rw_permission_denied">Bu işlevi etkinleştirmek için depolama izni veriniz.</string>
<string name="post_notifications_denied">Bu işlevi etkinleştirmek için bildirim izni veriniz.</string>
<string name="install_unknown_denied">Bu işlevi etkinleştirmek için "Bilinmeyen uygulamaları yükle" ayarına izin veriniz.</string>
<string name="add_shortcut_title">Ana ekrana kısayol ekle</string>
<string name="add_shortcut_msg">Bu uygulamayı gizledikten sonra adını ve simgesini tanımak zorlaşabilir. Ana ekrana hoş bir kısayol eklemek ister misiniz?</string>
<string name="app_not_found">Bu eylemi gerçekleştirecek uygulama bulunamadı</string>
<string name="reboot_apply_change">Değişiklikleri uygulamak için yeniden başlatın</string>
<string name="restore_app_confirmation">Bu, gizli uygulamayı orijinal uygulamaya geri yükleyecektir. Gerçekten bunu yapmak istiyor musun?</string>
<string name="restore_app_confirmation">Bu işlem, gizli uygulamayı orijinal uygulama ile değiştirecektir. Bu işlemi yapmak istediğinizden emin misiniz?</string>

</resources>
16 changes: 5 additions & 11 deletions build.py
Original file line number Diff line number Diff line change
Expand Up @@ -246,7 +246,7 @@ def run_ndk_build(flags):
error("Build binary failed!")
os.chdir("..")
for arch in archs:
for tgt in support_targets + ["libinit-ld.so", "libzygisk-ld.so"]:
for tgt in support_targets + ["libinit-ld.so"]:
source = op.join("native", "libs", arch, tgt)
target = op.join("native", "out", arch, tgt)
mv(source, target)
Expand Down Expand Up @@ -342,9 +342,6 @@ def dump_bin_header(args):
preload = op.join("native", "out", arch, "libinit-ld.so")
with open(preload, "rb") as src:
text = binary_dump(src, "init_ld_xz")
preload = op.join("native", "out", arch, "libzygisk-ld.so")
with open(preload, "rb") as src:
text += binary_dump(src, "zygisk_ld", compressor=lambda x: x)
write_if_diff(op.join(native_gen_path, f"{arch}_binaries.h"), text)


Expand Down Expand Up @@ -395,8 +392,9 @@ def build_binary(args):
flag = ""
clean = False

if "magisk" in args.target or "magiskinit" in args.target:
flag += " B_PRELOAD=1"
if "magisk" in args.target:
flag += " B_MAGISK=1"
clean = True

if "magiskpolicy" in args.target:
flag += " B_POLICY=1"
Expand All @@ -417,14 +415,10 @@ def build_binary(args):
if flag:
run_ndk_build(flag)

# magiskinit and magisk embeds preload.so
# magiskinit embeds preload.so

flag = ""

if "magisk" in args.target:
flag += " B_MAGISK=1"
clean = True

if "magiskinit" in args.target:
flag += " B_INIT=1"

Expand Down
11 changes: 11 additions & 0 deletions docs/changes.md
Original file line number Diff line number Diff line change
@@ -1,5 +1,16 @@
# Magisk Changelog

### v26.4

- [MagiskBoot] Don't pad zeros if signed boot image is larger
- [MagiskPolicy] Fix `genfscon` and `filename_trans`
- [MagiskPolicy] Fix bug in `libsepol`
- [Zygisk] Fix and simplify file descriptor sanitization logic
- [App] Prevent OOM when patching AP tarfiles
- [App] Fix bug in device configuration detection
- [Daemon] Fix certificate parsing of APKs
- [General] Fix logging errors from C++ code being ignored

### v26.3

- [General] Fix device information detection script
Expand Down
12 changes: 12 additions & 0 deletions docs/releases/26400.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,12 @@
## 2023.11.5 Magisk v26.4

- [MagiskBoot] Don't pad zeros if signed boot image is larger
- [MagiskPolicy] Fix `genfscon` and `filename_trans`
- [MagiskPolicy] Fix bug in `libsepol`
- [Zygisk] Fix and simplify file descriptor sanitization logic
- [App] Prevent OOM when patching AP tarfiles
- [App] Fix bug in device configuration detection
- [Daemon] Fix certificate parsing of APKs
- [General] Fix logging errors from C++ code being ignored

### Full Changelog: [here](https://topjohnwu.github.io/Magisk/changes.html)
1 change: 1 addition & 0 deletions docs/releases/index.md
Original file line number Diff line number Diff line change
@@ -1,5 +1,6 @@
# Release Notes

- [v26.4](26400.md)
- [v26.3](26300.md)
- [v26.2](26200.md)
- [v26.1](26100.md)
Expand Down
2 changes: 1 addition & 1 deletion gradle.properties
Original file line number Diff line number Diff line change
Expand Up @@ -27,5 +27,5 @@ android.nonFinalResIds=false

# Magisk
magisk.stubVersion=38
magisk.versionCode=26302
magisk.versionCode=26401
magisk.ondkVersion=r26.1
1 change: 1 addition & 0 deletions native/src/Android-rs.mk
Original file line number Diff line number Diff line change
Expand Up @@ -8,6 +8,7 @@ LIBRARY_PATH = ../out/$(TARGET_ARCH_ABI)/libmagisk-rs.a
ifneq (,$(wildcard $(LOCAL_PATH)/$(LIBRARY_PATH)))
include $(CLEAR_VARS)
LOCAL_MODULE := magisk-rs
LOCAL_EXPORT_C_INCLUDES := src/core/include
LOCAL_SRC_FILES := $(LIBRARY_PATH)
include $(PREBUILT_STATIC_LIBRARY)
endif
Expand Down
24 changes: 8 additions & 16 deletions native/src/Android.mk
Original file line number Diff line number Diff line change
Expand Up @@ -11,7 +11,6 @@ LOCAL_MODULE := magisk
LOCAL_STATIC_LIBRARIES := \
libbase \
libsystemproperties \
libphmap \
liblsplt \
libmagisk-rs

Expand All @@ -27,20 +26,19 @@ LOCAL_SRC_FILES := \
core/selinux.cpp \
core/module.cpp \
core/thread.cpp \
core/resetprop/resetprop.cpp \
core/core-rs.cpp \
core/resetprop/resetprop.cpp \
core/su/su.cpp \
core/su/connect.cpp \
core/su/pts.cpp \
core/su/su_daemon.cpp \
zygisk/entry.cpp \
zygisk/main.cpp \
zygisk/utils.cpp \
zygisk/hook.cpp \
zygisk/memory.cpp \
zygisk/deny/cli.cpp \
zygisk/deny/utils.cpp \
zygisk/deny/revert.cpp
core/zygisk/entry.cpp \
core/zygisk/main.cpp \
core/zygisk/module.cpp \
core/zygisk/hook.cpp \
core/deny/cli.cpp \
core/deny/utils.cpp \
core/deny/revert.cpp

LOCAL_LDLIBS := -llog
LOCAL_LDFLAGS := -Wl,--dynamic-list=src/exported_sym.txt
Expand All @@ -57,12 +55,6 @@ LOCAL_SRC_FILES := init/preload.c
LOCAL_STRIP_MODE := --strip-all
include $(BUILD_SHARED_LIBRARY)

include $(CLEAR_VARS)
LOCAL_MODULE := zygisk-ld
LOCAL_SRC_FILES := zygisk/loader.c
LOCAL_STRIP_MODE := --strip-all
include $(BUILD_SHARED_LIBRARY)

endif

ifdef B_INIT
Expand Down
1 change: 0 additions & 1 deletion native/src/base/include/base.hpp
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,6 @@
#include "../files.hpp"
#include "../misc.hpp"
#include "../logging.hpp"
#include "../missing.hpp"
#include "../base-rs.hpp"

using rust::xpipe2;
Expand Down
4 changes: 2 additions & 2 deletions native/src/base/misc.hpp
Original file line number Diff line number Diff line change
Expand Up @@ -262,9 +262,9 @@ std::vector<std::string> split(std::string_view s, std::string_view delims);
std::vector<std::string_view> split_view(std::string_view, std::string_view delims);

// Similar to vsnprintf, but the return value is the written number of bytes
int vssprintf(char *dest, size_t size, const char *fmt, va_list ap);
__printflike(3, 0) int vssprintf(char *dest, size_t size, const char *fmt, va_list ap);
// Similar to snprintf, but the return value is the written number of bytes
int ssprintf(char *dest, size_t size, const char *fmt, ...);
__printflike(3, 4) int ssprintf(char *dest, size_t size, const char *fmt, ...);
// This is not actually the strscpy from the Linux kernel.
// Silently truncates, and returns the number of bytes written.
extern "C" size_t strscpy(char *dest, const char *src, size_t size);
Expand Down
17 changes: 0 additions & 17 deletions native/src/base/missing.hpp

This file was deleted.

1 change: 1 addition & 0 deletions native/src/base/xwrap.hpp
Original file line number Diff line number Diff line change
@@ -1,5 +1,6 @@
#pragma once

#include <unistd.h>
#include <dirent.h>
#include <stdio.h>
#include <poll.h>
Expand Down
2 changes: 1 addition & 1 deletion native/src/core/applet_stub.cpp
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
#include <sys/stat.h>

#include <magisk.hpp>
#include <consts.hpp>
#include <selinux.hpp>
#include <base.hpp>

Expand Down
7 changes: 1 addition & 6 deletions native/src/core/applets.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@
#include <sys/types.h>
#include <sys/stat.h>

#include <magisk.hpp>
#include <consts.hpp>
#include <selinux.hpp>
#include <base.hpp>

Expand Down Expand Up @@ -31,11 +31,6 @@ int main(int argc, char *argv[]) {

string_view argv0 = basename(argv[0]);

// app_process is actually not an applet
if (argv0.starts_with("app_process")) {
return app_process_main(argc, argv);
}

umask(0);

if (argv[0][0] == '\0') {
Expand Down
Loading

0 comments on commit 80e3761

Please sign in to comment.