Viewing: syscall.h
📄 syscall.h (Read Only) ⬅ To go back
#ifndef SYSCALL_H
#define SYSCALL_H

#include <stdint.h>

void syscall_init(void);

enum {
    SYSCALL_WRITE = 1,
    SYSCALL_EXIT  = 2,
    SYSCALL_GETPID = 3,

    SYSCALL_OPEN  = 4,
    SYSCALL_READ  = 5,
    SYSCALL_CLOSE = 6,

    SYSCALL_WAITPID = 7,

    SYSCALL_LSEEK = 9,
    SYSCALL_FSTAT = 10,
    SYSCALL_STAT = 11,

    SYSCALL_DUP = 12,
    SYSCALL_DUP2 = 13,
    SYSCALL_PIPE = 14,
    SYSCALL_PIPE2 = 34,
    SYSCALL_EXECVE = 15,
    SYSCALL_FORK = 16,
    SYSCALL_GETPPID = 17,
    SYSCALL_POLL = 18,
    SYSCALL_KILL = 19,
    SYSCALL_SELECT = 20,
    SYSCALL_IOCTL = 21,
    SYSCALL_SETSID = 22,
    SYSCALL_SETPGID = 23,
    SYSCALL_GETPGRP = 24,

    SYSCALL_SIGACTION = 25,
    SYSCALL_SIGPROCMASK = 26,
    SYSCALL_SIGRETURN = 27,

    SYSCALL_MKDIR = 28,
    SYSCALL_UNLINK = 29,

    SYSCALL_GETDENTS = 30,

    SYSCALL_FCNTL = 31,

    SYSCALL_CHDIR = 32,
    SYSCALL_GETCWD = 33,
    SYSCALL_DUP3 = 35,

    SYSCALL_OPENAT = 36,
    SYSCALL_FSTATAT = 37,
    SYSCALL_UNLINKAT = 38,

    SYSCALL_RENAME = 39,
    SYSCALL_RMDIR = 40,

    SYSCALL_BRK = 41,
    SYSCALL_NANOSLEEP = 42,
    SYSCALL_CLOCK_GETTIME = 43,
    SYSCALL_MMAP = 44,
    SYSCALL_MUNMAP = 45,

    SYSCALL_SHMGET = 46,
    SYSCALL_SHMAT  = 47,
    SYSCALL_SHMDT  = 48,
    SYSCALL_SHMCTL = 49,

    SYSCALL_CHMOD  = 50,
    SYSCALL_CHOWN  = 51,
    SYSCALL_GETUID = 52,
    SYSCALL_GETGID = 53,

    SYSCALL_LINK     = 54,
    SYSCALL_SYMLINK  = 55,
    SYSCALL_READLINK = 56,

    SYSCALL_SET_THREAD_AREA = 57,

    SYSCALL_SOCKET    = 58,
    SYSCALL_BIND      = 59,
    SYSCALL_LISTEN    = 60,
    SYSCALL_ACCEPT    = 61,
    SYSCALL_CONNECT   = 62,
    SYSCALL_SEND      = 63,
    SYSCALL_RECV      = 64,
    SYSCALL_SENDTO    = 65,
    SYSCALL_RECVFROM  = 66,

    SYSCALL_CLONE     = 67,
    SYSCALL_GETTID    = 68,

    SYSCALL_FSYNC     = 69,
    SYSCALL_FDATASYNC = 70,
    SYSCALL_SIGPENDING = 71,
    SYSCALL_PREAD     = 72,
    SYSCALL_PWRITE    = 73,
    SYSCALL_ACCESS    = 74,
    SYSCALL_UMASK     = 75,
    SYSCALL_SETUID    = 76,
    SYSCALL_SETGID    = 77,
    SYSCALL_TRUNCATE  = 78,
    SYSCALL_FTRUNCATE = 79,
    SYSCALL_SIGSUSPEND = 80,
    SYSCALL_READV     = 81,
    SYSCALL_WRITEV    = 82,
    SYSCALL_ALARM     = 83,
    SYSCALL_TIMES     = 84,
    SYSCALL_FUTEX     = 85,
    SYSCALL_SIGALTSTACK = 86,
    SYSCALL_FLOCK     = 87,
    SYSCALL_GETEUID   = 88,
    SYSCALL_GETEGID   = 89,
    SYSCALL_SETEUID   = 90,
    SYSCALL_SETEGID   = 91,
    SYSCALL_SETITIMER  = 92,
    SYSCALL_GETITIMER  = 93,
    SYSCALL_WAITID     = 94,
    SYSCALL_SIGQUEUE   = 95,
    SYSCALL_POSIX_SPAWN = 96,
    SYSCALL_MQ_OPEN     = 97,
    SYSCALL_MQ_CLOSE    = 98,
    SYSCALL_MQ_SEND     = 99,
    SYSCALL_MQ_RECEIVE  = 100,
    SYSCALL_MQ_UNLINK   = 101,
    SYSCALL_SEM_OPEN    = 102,
    SYSCALL_SEM_CLOSE   = 103,
    SYSCALL_SEM_WAIT    = 104,
    SYSCALL_SEM_POST    = 105,
    SYSCALL_SEM_UNLINK  = 106,
    SYSCALL_SEM_GETVALUE = 107,
    SYSCALL_GETADDRINFO  = 108,
    SYSCALL_DLOPEN       = 109,
    SYSCALL_DLSYM        = 110,
    SYSCALL_DLCLOSE      = 111,

    SYSCALL_EPOLL_CREATE = 112,
    SYSCALL_EPOLL_CTL    = 113,
    SYSCALL_EPOLL_WAIT   = 114,

    SYSCALL_INOTIFY_INIT     = 115,
    SYSCALL_INOTIFY_ADD_WATCH = 116,
    SYSCALL_INOTIFY_RM_WATCH  = 117,

    SYSCALL_SENDMSG  = 118,
    SYSCALL_RECVMSG  = 119,

    SYSCALL_PIVOT_ROOT = 120,

    SYSCALL_AIO_READ    = 121,
    SYSCALL_AIO_WRITE   = 122,
    SYSCALL_AIO_ERROR   = 123,
    SYSCALL_AIO_RETURN  = 124,
    SYSCALL_AIO_SUSPEND = 125,

    SYSCALL_MOUNT = 126,

    SYSCALL_GETTIMEOFDAY = 127,
    SYSCALL_MPROTECT     = 128,
    SYSCALL_GETRLIMIT    = 129,
    SYSCALL_SETRLIMIT    = 130,
    SYSCALL_SETSOCKOPT   = 131,
    SYSCALL_GETSOCKOPT   = 132,
    SYSCALL_SHUTDOWN     = 133,
    SYSCALL_GETPEERNAME  = 134,
    SYSCALL_GETSOCKNAME  = 135,
    SYSCALL_UNAME        = 136,
    SYSCALL_GETRUSAGE    = 137,
    SYSCALL_UMOUNT2      = 138,
    SYSCALL_WAIT4        = 139,
    SYSCALL_MADVISE      = 140,
    SYSCALL_EXECVEAT     = 141,
};

#endif