diff options
Diffstat (limited to 'src')
| -rw-r--r-- | src/focaccia/qemu/x86.py | 19 |
1 files changed, 19 insertions, 0 deletions
diff --git a/src/focaccia/qemu/x86.py b/src/focaccia/qemu/x86.py index d8641fc..eccd0ef 100644 --- a/src/focaccia/qemu/x86.py +++ b/src/focaccia/qemu/x86.py @@ -18,7 +18,22 @@ emulated_system_calls = { 21: SyscallInfo('access'), 24: SyscallInfo('sched_yield'), 34: SyscallInfo('pause'), + 35: SyscallInfo('nanosleep', patchup_address_registers=['rdi', 'rsi']), 39: SyscallInfo('getpid'), + 41: SyscallInfo('socket'), + 42: SyscallInfo('connect', patchup_address_registers=['rsi']), + 43: SyscallInfo('accept', patchup_address_registers=['rsi', 'rdx']), + 44: SyscallInfo('sendto'), + 45: SyscallInfo('recvfrom', patchup_address_registers=['rsi']), + 46: SyscallInfo('sendmsg'), + 47: SyscallInfo('recvmsg', patchup_address_registers=['rsi']), + 49: SyscallInfo('bind', patchup_address_registers=['rsi']), + 50: SyscallInfo('listen'), + 51: SyscallInfo('getsockname', patchup_address_registers=['rsi', 'rdx']), + 52: SyscallInfo('getpeername', patchup_address_registers=['rsi', 'rdx']), + 53: SyscallInfo('sockpair', patchup_address_registers=['r10']), + 54: SyscallInfo('setsockopt'), + 55: SyscallInfo('getsockpair', patchup_address_registers=['r10', 'r8']), 72: SyscallInfo('fcntl', patchup_address_registers=['rdx']), 73: SyscallInfo('flock'), 74: SyscallInfo('fsync'), @@ -44,6 +59,10 @@ emulated_system_calls = { 94: SyscallInfo('lchown'), 95: SyscallInfo('umask'), 102: SyscallInfo('getuid'), + 213: SyscallInfo('epoll_create'), + 232: SyscallInfo('epoll_wait', patchup_address_registers=['rsi']), + 233: SyscallInfo('epoll_ctl', patchup_address_registers=['r10']), + 281: SyscallInfo('epoll_pwait', patchup_address_registers=['rsi', 'r8']), 318: SyscallInfo('getrandom', patchup_address_registers=['rdi']) } |