42 lines
1.0 KiB
C
42 lines
1.0 KiB
C
#pragma once
|
|
|
|
#include "qapi/error.h"
|
|
#include "qemu/osdep.h"
|
|
#include "qemu/interval-tree.h"
|
|
|
|
#include "exec/cpu-defs.h"
|
|
|
|
struct libafl_mapinfo {
|
|
target_ulong start;
|
|
target_ulong end;
|
|
target_ulong offset;
|
|
const char* path;
|
|
int flags;
|
|
int is_priv;
|
|
bool is_valid;
|
|
};
|
|
|
|
extern void (*libafl_dump_core_hook)(int host_sig);
|
|
extern int libafl_force_dfl;
|
|
|
|
void libafl_dump_core_exec(int signal);
|
|
|
|
void libafl_qemu_handle_crash(int host_sig, siginfo_t* info, void* puc);
|
|
|
|
IntervalTreeNode* libafl_maps_first(IntervalTreeRoot* map_info);
|
|
IntervalTreeNode* libafl_maps_next(IntervalTreeNode* pageflags_maps_node,
|
|
IntervalTreeRoot* proc_maps_node,
|
|
struct libafl_mapinfo* ret);
|
|
|
|
uint64_t libafl_load_addr(void);
|
|
struct image_info* libafl_get_image_info(void);
|
|
|
|
uint64_t libafl_get_brk(void);
|
|
uint64_t libafl_set_brk(uint64_t new_brk);
|
|
|
|
int _libafl_qemu_user_init(int argc, char** argv, char** envp);
|
|
|
|
#ifdef AS_LIB
|
|
void libafl_qemu_init(int argc, char** argv);
|
|
#endif
|