From 297e9e3cf59540f16b8260a01ef7c6cd01d9e554 Mon Sep 17 00:00:00 2001 From: Andrea Fioraldi Date: Wed, 23 Oct 2019 19:48:18 +0200 Subject: move is_valid_addr in afl-qemu-common.h --- qemu_mode/patches/afl-qemu-common.h | 18 ++++++++++++++++++ 1 file changed, 18 insertions(+) (limited to 'qemu_mode/patches/afl-qemu-common.h') diff --git a/qemu_mode/patches/afl-qemu-common.h b/qemu_mode/patches/afl-qemu-common.h index 1da3359d..409a7eab 100644 --- a/qemu_mode/patches/afl-qemu-common.h +++ b/qemu_mode/patches/afl-qemu-common.h @@ -81,3 +81,21 @@ void tcg_gen_afl_compcov_log_call(void *func, target_ulong cur_loc, void tcg_gen_afl_maybe_log_call(target_ulong cur_loc); + +/* Check if an address is valid in the current mapping */ + +static inline int is_valid_addr(target_ulong addr) { + + int l, flags; + target_ulong page; + void * p; + + page = addr & TARGET_PAGE_MASK; + l = (page + TARGET_PAGE_SIZE) - addr; + + flags = page_get_flags(page); + if (!(flags & PAGE_VALID) || !(flags & PAGE_READ)) return 0; + + return 1; + +} -- cgit 1.4.1