-
Notifications
You must be signed in to change notification settings - Fork 312
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Optimize the performance of shadowhook_hook_sym_addr function in arm64.
- Loading branch information
Showing
10 changed files
with
82 additions
and
76 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
|
@@ -22,6 +22,7 @@ | |
// Created by Kelun Cai ([email protected]) on 2021-04-11. | ||
|
||
#pragma once | ||
#include <stdbool.h> | ||
#include <stdint.h> | ||
|
||
#include "xdl.h" | ||
|
@@ -37,7 +38,7 @@ typedef struct { | |
} sh_inst_t; | ||
|
||
int sh_inst_hook(sh_inst_t *self, uintptr_t target_addr, xdl_info_t *dlinfo, uintptr_t new_addr, | ||
uintptr_t *orig_addr, uintptr_t *orig_addr2); | ||
uintptr_t *orig_addr, uintptr_t *orig_addr2, bool ignore_symbol_check); | ||
int sh_inst_unhook(sh_inst_t *self, uintptr_t target_addr); | ||
|
||
void sh_inst_free_after_dlclose(sh_inst_t *self, uintptr_t target_addr); |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
|
@@ -22,15 +22,16 @@ | |
// Created by Kelun Cai ([email protected]) on 2021-04-11. | ||
|
||
#pragma once | ||
#include <stdbool.h> | ||
#include <stdint.h> | ||
|
||
#include "xdl.h" | ||
|
||
int sh_switch_hook(uintptr_t target_addr, uintptr_t new_addr, uintptr_t *orig_addr, size_t *backup_len, | ||
xdl_info_t *dlinfo); | ||
xdl_info_t *dlinfo, bool ignore_symbol_check); | ||
int sh_switch_unhook(uintptr_t target_addr, uintptr_t new_addr); | ||
|
||
int sh_switch_hook_invisible(uintptr_t target_addr, uintptr_t new_addr, uintptr_t *orig_addr, | ||
size_t *backup_len, xdl_info_t *dlinfo); | ||
size_t *backup_len, xdl_info_t *dlinfo, bool ignore_symbol_check); | ||
|
||
void sh_switch_free_after_dlclose(xdl_info_t *dlinfo); |
Oops, something went wrong.