2024-09-12 19:49:02 +02:00

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