Syscall
uint32 Syscall() const { return fSyscall; }
Context(Syscall *sc, char *data, MemoryReader &reader,
Syscall *fSyscall;
class Syscall {
Syscall(string name, string returnTypeName, TypeHandler *returnTypeHandler)
Syscall *set_area_protection = get_syscall("_kern_set_area_protection");
Syscall *map_file = get_syscall("_kern_map_file");
Syscall *set_memory_protection = get_syscall("_kern_set_memory_protection");
Syscall *create = get_syscall("_kern_create_area");
Syscall *transfer = get_syscall("_kern_transfer_area");
Syscall *clone = get_syscall("_kern_clone_area");
Syscall *reserve_address_range = get_syscall("_kern_reserve_address_range");
Syscall *poll = get_syscall("_kern_poll");
Syscall *select = get_syscall("_kern_select");
Syscall *wait_for_objects = get_syscall("_kern_wait_for_objects");
Syscall *event_queue_select = get_syscall("_kern_event_queue_select");
Syscall *event_queue_wait = get_syscall("_kern_event_queue_wait");
Syscall *wait_for_child = get_syscall("_kern_wait_for_child");
Syscall *wait_for_thread_etc = get_syscall("_kern_wait_for_thread_etc");
Syscall *exec = get_syscall("_kern_exec");
Syscall *load_image = get_syscall("_kern_load_image");
Syscall *open = get_syscall("_kern_open");
Syscall *closeRange = get_syscall("_kern_close_range");
Syscall *fcntl = get_syscall("_kern_fcntl");
Syscall *createPipe = get_syscall("_kern_create_pipe");
Syscall *dup2 = get_syscall("_kern_dup2");
Syscall *readStat = get_syscall("_kern_read_stat");
Syscall *readIndexStat = get_syscall("_kern_read_index_stat");
Syscall *ioctl = get_syscall("_kern_ioctl");
Syscall *mutex_sem_acquire = get_syscall("_kern_mutex_sem_acquire");
Syscall *mutex_sem_release = get_syscall("_kern_mutex_sem_release");
Syscall *mutex_lock = get_syscall("_kern_mutex_lock");
Syscall *mutex_unlock = get_syscall("_kern_mutex_unblock");
Syscall *mutex_switch_lock = get_syscall("_kern_mutex_switch_lock");
Syscall *recv = get_syscall("_kern_recv");
Syscall *recvfrom = get_syscall("_kern_recvfrom");
Syscall *recvmsg = get_syscall("_kern_recvmsg");
Syscall *send = get_syscall("_kern_send");
Syscall *sendmsg = get_syscall("_kern_sendmsg");
Syscall *sendto = get_syscall("_kern_sendto");
Syscall *socket = get_syscall("_kern_socket");
Syscall *shutdown = get_syscall("_kern_shutdown_socket");
Syscall *socketPair = get_syscall("_kern_socketpair");
Syscall *accept = get_syscall("_kern_accept");
Syscall *getsockopt = get_syscall("_kern_getsockopt");
Syscall *setsockopt = get_syscall("_kern_setsockopt");
Syscall *getrlimit = get_syscall("_kern_getrlimit");
Syscall *setrlimit = get_syscall("_kern_setrlimit");
Syscall *setSignalMask = get_syscall("_kern_set_signal_mask");
Syscall *sigwait = get_syscall("_kern_sigwait");
Syscall *sigsuspend = get_syscall("_kern_sigsuspend");
Syscall *sigpending = get_syscall("_kern_sigpending");
Syscall *sendSignal = get_syscall("_kern_send_signal");
Syscall *sigaction = get_syscall("_kern_sigaction");
static vector<Syscall*> sSyscallVector;
static map<string, Syscall*> sSyscallMap;
Syscall *
map<string, Syscall *>::const_iterator i = sSyscallMap.find(name);
Syscall *syscall = sSyscallVector[i];
Syscall *syscall = sSyscallVector[i];
record_syscall_stats(const Syscall& syscall, debug_post_syscall& message)
print_syscall(FILE *outputFile, Syscall* syscall, debug_pre_syscall &message,
print_syscall(FILE *outputFile, Syscall* syscall, debug_post_syscall &message,
extern void get_syscalls0(vector<Syscall*> &syscalls);
extern void get_syscalls1(vector<Syscall*> &syscalls);
extern void get_syscalls2(vector<Syscall*> &syscalls);
extern void get_syscalls3(vector<Syscall*> &syscalls);
extern void get_syscalls4(vector<Syscall*> &syscalls);
extern void get_syscalls5(vector<Syscall*> &syscalls);
extern void get_syscalls6(vector<Syscall*> &syscalls);
extern void get_syscalls7(vector<Syscall*> &syscalls);
extern void get_syscalls8(vector<Syscall*> &syscalls);
extern void get_syscalls9(vector<Syscall*> &syscalls);
extern void get_syscalls10(vector<Syscall*> &syscalls);
extern void get_syscalls11(vector<Syscall*> &syscalls);
extern void get_syscalls12(vector<Syscall*> &syscalls);
extern void get_syscalls13(vector<Syscall*> &syscalls);
extern void get_syscalls14(vector<Syscall*> &syscalls);
extern void get_syscalls15(vector<Syscall*> &syscalls);
extern void get_syscalls16(vector<Syscall*> &syscalls);
extern void get_syscalls17(vector<Syscall*> &syscalls);
extern void get_syscalls18(vector<Syscall*> &syscalls);
extern void get_syscalls19(vector<Syscall*> &syscalls);
Syscall* syscall = get_syscall(buffer);
Syscall* syscall = sSyscallVector[syscallNumber];
Syscall* syscall = sSyscallVector[syscallNumber];
class Syscall;
Syscall *get_syscall(const char *name);
B_PRIu32 "\n", postSyscallEvent->GetSyscallInfo().Syscall());
switch (info.Syscall()) {
Syscall syscall;
const Syscall& syscall = fSyscalls[i];
const Syscall& syscall = fSyscalls[i];
void _ParseSyscall(Tokenizer& tokenizer, Syscall& syscall)
void _ParseParameter(Tokenizer& tokenizer, Syscall& syscall)
void _ParseFunctionPointerParameter(Tokenizer& tokenizer, Syscall& syscall,
vector<Syscall> fSyscalls;
Syscall::CountParameters() const
Syscall::ParameterAt(int index) const
Syscall::LastParameter() const
Syscall::SetReturnType(int size, const char* name)
Syscall::SetReturnType(const char* name, int size, int usedSize,
Syscall::AddParameter(const char* typeName, const char* parameterName,
Syscall::AddParameter(int size, const char* typeName, const char* parameterName)
struct SyscallVector::_SyscallVector : public vector<Syscall*> {
Syscall*
Syscall*
Syscall* syscall = new Syscall(name, kernelName);
const Syscall* syscall = fSyscallVector->SyscallAt(i);
const Syscall* syscall = fSyscallVector->SyscallAt(i);
const Syscall* syscall = fSyscallVector->SyscallAt(i);
const Syscall* syscall = fSyscallVector->SyscallAt(i);
const Syscall* syscall = fSyscallVector->SyscallAt(i);
const Syscall* syscall = fSyscallVector->SyscallAt(i);
struct Syscall::ParameterVector : public vector<Parameter*> {
Syscall::Syscall(const char* name, const char* kernelName)
Syscall::~Syscall()
Syscall* CreateSyscall(const char* name,
class Syscall {
Syscall(const char* name,
~Syscall();
Syscall* SyscallAt(int index) const;