Skip to content

Commit

Permalink
umount old hijack binary
Browse files Browse the repository at this point in the history
  • Loading branch information
vvb2060 authored and topjohnwu committed Jan 18, 2023
1 parent 7769ba5 commit e836909
Showing 1 changed file with 14 additions and 14 deletions.
28 changes: 14 additions & 14 deletions native/src/zygisk/entry.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -224,7 +224,20 @@ static void setup_files(int client, const sock_cred *cred) {
return;
}

// Hijack some binary in /system/bin to host loader
const char *hbin;
string mbin;
int app_fd;
bool is_64_bit = str_ends(buf, "64");
if (is_64_bit) {
hbin = HIJACK_BIN64;
mbin = MAGISKTMP + "/" ZYGISKBIN "/loader64.so";
app_fd = app_process_64;
} else {
hbin = HIJACK_BIN32;
mbin = MAGISKTMP + "/" ZYGISKBIN "/loader32.so";
app_fd = app_process_32;
}

if (!zygote_started) {
// First zygote launch, record time
Expand All @@ -237,6 +250,7 @@ static void setup_files(int client, const sock_cred *cred) {
close(zygiskd_sockets[1]);
zygiskd_sockets[0] = -1;
zygiskd_sockets[1] = -1;
xumount2(hbin, MNT_DETACH);
}
++zygote_start_count;

Expand All @@ -260,20 +274,6 @@ static void setup_files(int client, const sock_cred *cred) {
// Ack
write_int(client, 0);

// Hijack some binary in /system/bin to host loader
const char *hbin;
string mbin;
int app_fd;
if (is_64_bit) {
hbin = HIJACK_BIN64;
mbin = MAGISKTMP + "/" ZYGISKBIN "/loader64.so";
app_fd = app_process_64;
} else {
hbin = HIJACK_BIN32;
mbin = MAGISKTMP + "/" ZYGISKBIN "/loader32.so";
app_fd = app_process_32;
}

// Receive and bind mount loader
int ld_fd = xopen(mbin.data(), O_WRONLY | O_TRUNC | O_CREAT | O_CLOEXEC, 0755);
string ld_data = read_string(client);
Expand Down

0 comments on commit e836909

Please sign in to comment.