syscalls_amd64.go 953 B

12345678910111213141516171819202122232425262728293031323334353637
  1. //go:build linux && amd64
  2. package python_syscall
  3. import "syscall"
  4. const (
  5. SYS_GETRANDOM = 318
  6. SYS_RSEQ = 334
  7. )
  8. var ALLOW_SYSCALLS = []int{
  9. // file io
  10. syscall.SYS_WRITE, syscall.SYS_CLOSE,
  11. // thread
  12. syscall.SYS_FUTEX,
  13. // memory
  14. syscall.SYS_MMAP, syscall.SYS_BRK, syscall.SYS_MPROTECT, syscall.SYS_MUNMAP, syscall.SYS_RT_SIGRETURN,
  15. // user/group
  16. syscall.SYS_SETUID, syscall.SYS_SETGID,
  17. // process
  18. syscall.SYS_GETPID, syscall.SYS_GETPPID, syscall.SYS_GETTID,
  19. syscall.SYS_EXIT, syscall.SYS_EXIT_GROUP,
  20. syscall.SYS_TGKILL, syscall.SYS_RT_SIGACTION,
  21. // time
  22. syscall.SYS_CLOCK_GETTIME, syscall.SYS_GETTIMEOFDAY, syscall.SYS_NANOSLEEP,
  23. syscall.SYS_EPOLL_CTL, syscall.SYS_CLOCK_NANOSLEEP, syscall.SYS_PSELECT6,
  24. syscall.SYS_TIME,
  25. syscall.SYS_RT_SIGPROCMASK, syscall.SYS_SIGALTSTACK,
  26. }
  27. var ERROR_CODE_SYSCALLS = []int{
  28. // file io
  29. syscall.SYS_OPENAT, syscall.SYS_NEWFSTATAT, syscall.SYS_IOCTL, syscall.SYS_READ, syscall.SYS_LSEEK,
  30. }