mirror of
https://github.com/AFLplusplus/AFLplusplus.git
synced 2025-06-14 02:58:08 +00:00
Merge branch 'dev' into atat-plusplus
This commit is contained in:
@ -144,6 +144,15 @@ void argv_cpy_free(char **argv) {
|
||||
|
||||
char **get_qemu_argv(u8 *own_loc, u8 **target_path_p, int argc, char **argv) {
|
||||
|
||||
if (unlikely(getenv("AFL_QEMU_CUSTOM_BIN"))) {
|
||||
|
||||
WARNF(
|
||||
"AFL_QEMU_CUSTOM_BIN is enabled. "
|
||||
"You must run your target under afl-qemu-trace on your own!");
|
||||
return argv;
|
||||
|
||||
}
|
||||
|
||||
if (!unlikely(own_loc)) { FATAL("BUG: param own_loc is NULL"); }
|
||||
|
||||
u8 *tmp, *cp = NULL, *rsl, *own_copy;
|
||||
@ -333,66 +342,6 @@ char **get_wine_argv(u8 *own_loc, u8 **target_path_p, int argc, char **argv) {
|
||||
|
||||
}
|
||||
|
||||
/* Get libqasan path. */
|
||||
|
||||
u8 *get_libqasan_path(u8 *own_loc) {
|
||||
|
||||
if (!unlikely(own_loc)) { FATAL("BUG: param own_loc is NULL"); }
|
||||
|
||||
u8 *tmp, *cp = NULL, *rsl, *own_copy;
|
||||
|
||||
tmp = getenv("AFL_PATH");
|
||||
|
||||
if (tmp) {
|
||||
|
||||
cp = alloc_printf("%s/libqasan.so", tmp);
|
||||
|
||||
if (access(cp, X_OK)) { FATAL("Unable to find '%s'", tmp); }
|
||||
|
||||
return cp;
|
||||
|
||||
}
|
||||
|
||||
own_copy = ck_strdup(own_loc);
|
||||
rsl = strrchr(own_copy, '/');
|
||||
|
||||
if (rsl) {
|
||||
|
||||
*rsl = 0;
|
||||
|
||||
cp = alloc_printf("%s/libqasan.so", own_copy);
|
||||
ck_free(own_copy);
|
||||
|
||||
if (!access(cp, X_OK)) { return cp; }
|
||||
|
||||
} else {
|
||||
|
||||
ck_free(own_copy);
|
||||
|
||||
}
|
||||
|
||||
if (!access(AFL_PATH "/libqasan.so", X_OK)) {
|
||||
|
||||
if (cp) { ck_free(cp); }
|
||||
|
||||
return ck_strdup(AFL_PATH "/libqasan.so");
|
||||
|
||||
}
|
||||
|
||||
SAYF("\n" cLRD "[-] " cRST
|
||||
"Oops, unable to find the 'libqasan.so' binary. The binary must be "
|
||||
"built\n"
|
||||
" separately by following the instructions in "
|
||||
"qemu_mode/libqasan/README.md. "
|
||||
"If you\n"
|
||||
" already have the binary installed, you may need to specify "
|
||||
"AFL_PATH in the\n"
|
||||
" environment.\n");
|
||||
|
||||
FATAL("Failed to locate 'libqasan.so'.");
|
||||
|
||||
}
|
||||
|
||||
/* Find binary, used by analyze, showmap, tmin
|
||||
@returns the path, allocating the string */
|
||||
|
||||
|
Reference in New Issue
Block a user