Move libsandhook.edxp.so to /data/misc to avoid magisk hide
incompatibility
This commit is contained in:
parent
d92b051894
commit
a1f9bdc7c7
|
|
@ -36,13 +36,11 @@ inline constexpr bool is64 = Is64();
|
|||
|
||||
static const auto kLibArtName = "libart.so"s;
|
||||
static const auto kLibFwName = "libandroidfw.so"s;
|
||||
static const auto kLibSandHookName = "libsandhook.edxp.so"s;
|
||||
|
||||
static const auto kLibBasePath =
|
||||
LP_SELECT("/system/lib/"s,
|
||||
"/system/lib64/"s);
|
||||
static const auto kLibArtLegacyPath = kLibBasePath + kLibArtName;
|
||||
static const auto kLibSandHookPath = kLibBasePath + kLibSandHookName;
|
||||
static const auto kLibFwPath = kLibBasePath + kLibFwName;
|
||||
|
||||
inline constexpr const char *const BoolToString(bool b) {
|
||||
|
|
|
|||
|
|
@ -60,16 +60,21 @@ namespace edxp {
|
|||
|
||||
inline const auto &GetInstallerPackageName() const { return installer_pkg_name_; }
|
||||
|
||||
inline const auto &GetLibSandHookName() const { return kLibSandHookName; }
|
||||
|
||||
inline const auto &GetDataPathPrefix() const { return data_path_prefix_; }
|
||||
|
||||
inline static const auto &GetMiscPath() {return misc_path_;}
|
||||
inline static const auto &GetMiscPath() { return misc_path_; }
|
||||
|
||||
inline static auto GetFrameworkPath(const std::string &suffix = {}) {
|
||||
return misc_path_ / "framework" / suffix;
|
||||
}
|
||||
|
||||
inline static auto GetLibSandHookName() {
|
||||
if constexpr(edxp::is64)
|
||||
return GetFrameworkPath("lib64/libsandhook.edxp.so");
|
||||
else
|
||||
return GetFrameworkPath("lib/libsandhook.edxp.so");
|
||||
}
|
||||
|
||||
inline auto GetXposedPropPath() const { return GetFrameworkPath(kXposedPropName); }
|
||||
|
||||
inline auto GetConfigPath(const std::string &suffix = {}) const {
|
||||
|
|
@ -98,7 +103,7 @@ namespace edxp {
|
|||
|
||||
static const auto &GetInjectDexPaths() { return inject_dex_paths_; };
|
||||
|
||||
bool IsInstaller(const std::string& pkg_name) const {
|
||||
bool IsInstaller(const std::string &pkg_name) const {
|
||||
return pkg_name == installer_pkg_name_ || pkg_name == kPrimaryInstallerPkgName;
|
||||
}
|
||||
|
||||
|
|
|
|||
|
|
@ -141,7 +141,7 @@ namespace edxp {
|
|||
|
||||
if (variant_ == SANDHOOK) {
|
||||
//for SandHook variant
|
||||
ScopedDlHandle sandhook_handle(kLibSandHookPath.c_str());
|
||||
ScopedDlHandle sandhook_handle(ConfigManager::GetLibSandHookName().c_str());
|
||||
if (!sandhook_handle.IsValid()) {
|
||||
return;
|
||||
}
|
||||
|
|
|
|||
|
|
@ -213,6 +213,15 @@ ui_print "- ${LANG_CUST_INST_COPY_LIB}"
|
|||
|
||||
rm -rf "/data/misc/$MISC_PATH/framework"
|
||||
mv "${MODPATH}/system/framework" "/data/misc/$MISC_PATH/framework"
|
||||
|
||||
if [[ "${VARIANTS}" == "SandHook" ]]; then
|
||||
mkdir -p "/data/misc/$MISC_PATH/framework/lib"
|
||||
mv "${MODPATH}/system/lib/libsandhook.edxp.so" "/data/misc/$MISC_PATH/framework/lib/libsandhook.edxp.so"
|
||||
if [ "$IS64BIT" = true ]; then
|
||||
mkdir -p "/data/misc/$MISC_PATH/framework/lib64"
|
||||
mv "${MODPATH}/system/lib64/libsandhook.edxp.so" "/data/misc/$MISC_PATH/framework/lib64/libsandhook.edxp.so"
|
||||
fi
|
||||
fi
|
||||
set_perm_recursive /data/misc/$MISC_PATH/framework root root 0755 0644 "u:object_r:magisk_file:s0" || abortC "! ${LANG_CUST_ERR_PERM}"
|
||||
|
||||
mv "${MODPATH}/system/lib/libriru_edxp.so" "${MODPATH}/system/lib/${LIB_RIRU_EDXP}"
|
||||
|
|
@ -220,25 +229,6 @@ if [[ "${IS64BIT}" == true ]]; then
|
|||
mv "${MODPATH}/system/lib64/libriru_edxp.so" "${MODPATH}/system/lib64/${LIB_RIRU_EDXP}"
|
||||
fi
|
||||
|
||||
if [[ "${VARIANTS}" == "SandHook" ]]; then
|
||||
mv "${MODPATH}/system/lib/libsandhook.edxp.so" "${MODPATH}/system/lib/${LIB_SANDHOOK_EDXP}"
|
||||
if [[ "${IS64BIT}" == true ]]; then
|
||||
mv "${MODPATH}/system/lib64/libsandhook.edxp.so" "${MODPATH}/system/lib64/${LIB_SANDHOOK_EDXP}"
|
||||
fi
|
||||
fi
|
||||
|
||||
ui_print "- ${LANG_CUST_INST_RAND_LIB_1}"
|
||||
ui_print " - ${LANG_CUST_INST_RAND_LIB_2}"
|
||||
ui_print " - ${LANG_CUST_INST_RAND_LIB_3}"
|
||||
sed -i 's:libriru_edxp.so:'"${LIB_RIRU_EDXP}"':g' "${MODPATH}/system/lib/${LIB_RIRU_EDXP}"
|
||||
sed -i 's:libsandhook.edxp.so:'"${LIB_SANDHOOK_EDXP}"':g' "${MODPATH}/system/lib/${LIB_RIRU_EDXP}"
|
||||
|
||||
ui_print " - ${LANG_CUST_INST_RAND_LIB_4}"
|
||||
if [[ "${IS64BIT}" == true ]]; then
|
||||
sed -i 's:libriru_edxp.so:'"${LIB_RIRU_EDXP}"':g' "${MODPATH}/system/lib64/${LIB_RIRU_EDXP}"
|
||||
sed -i 's:libsandhook.edxp.so:'"${LIB_SANDHOOK_EDXP}"':g' "${MODPATH}/system/lib64/${LIB_RIRU_EDXP}"
|
||||
fi
|
||||
|
||||
ui_print "- ${LANG_CUST_INST_REM_OLDCONF}"
|
||||
|
||||
if [[ -f "${RIRU_MODULES}/edxp.prop" ]]; then
|
||||
|
|
|
|||
Loading…
Reference in New Issue