feat: brk and sbrk (mmap based)
[lunaix-os.git] / lunaix-os / usr / api / unistd.c
1 #include <lunaix/syscall.h>
2 #include <unistd.h>
3
4 __LXSYSCALL(pid_t, fork)
5
6 __LXSYSCALL1(int, brk, void*, addr)
7
8 __LXSYSCALL1(void*, sbrk, ssize_t, size)
9
10 __LXSYSCALL(pid_t, getpid)
11
12 __LXSYSCALL(pid_t, getppid)
13
14 __LXSYSCALL(pid_t, getpgid)
15
16 __LXSYSCALL2(pid_t, setpgid, pid_t, pid, pid_t, pgid)
17
18 __LXSYSCALL1(void, _exit, int, status)
19
20 __LXSYSCALL1(unsigned int, sleep, unsigned int, seconds)
21
22 __LXSYSCALL(int, pause)
23
24 __LXSYSCALL2(int, kill, pid_t, pid, int, signum)
25
26 __LXSYSCALL1(unsigned int, alarm, unsigned int, seconds)
27
28 __LXSYSCALL2(int, link, const char*, oldpath, const char*, newpath)
29
30 __LXSYSCALL1(int, rmdir, const char*, pathname)
31
32 __LXSYSCALL3(int, read, int, fd, void*, buf, size_t, count)
33
34 __LXSYSCALL3(int, write, int, fd, void*, buf, size_t, count)
35
36 __LXSYSCALL3(int, readlink, const char*, path, char*, buf, size_t, size)
37
38 __LXSYSCALL3(int, lseek, int, fd, off_t, offset, int, options)
39
40 __LXSYSCALL1(int, unlink, const char*, pathname)
41
42 __LXSYSCALL1(int, close, int, fd)
43
44 __LXSYSCALL2(int, dup2, int, oldfd, int, newfd)
45
46 __LXSYSCALL1(int, dup, int, oldfd)
47
48 __LXSYSCALL1(int, fsync, int, fildes)
49
50 __LXSYSCALL2(int, symlink, const char*, pathname, const char*, link_target)
51
52 __LXSYSCALL1(int, chdir, const char*, path)
53
54 __LXSYSCALL1(int, fchdir, int, fd)
55
56 __LXSYSCALL2(char*, getcwd, char*, buf, size_t, size)
57
58 __LXSYSCALL2(int, rename, const char*, oldpath, const char*, newpath)
59
60 __LXSYSCALL4(int,
61              getxattr,
62              const char*,
63              path,
64              const char*,
65              name,
66              void*,
67              value,
68              size_t,
69              len)
70
71 __LXSYSCALL4(int,
72              setxattr,
73              const char*,
74              path,
75              const char*,
76              name,
77              void*,
78              value,
79              size_t,
80              len)
81
82 __LXSYSCALL4(int,
83              fgetxattr,
84              int,
85              fd,
86              const char*,
87              name,
88              void*,
89              value,
90              size_t,
91              len)
92
93 __LXSYSCALL4(int,
94              fsetxattr,
95              int,
96              fd,
97              const char*,
98              name,
99              void*,
100              value,
101              size_t,
102              len)
103
104 __LXSYSCALL4(int,
105              readlinkat,
106              int,
107              dirfd,
108              const char*,
109              pathname,
110              char*,
111              buf,
112              size_t,
113              size)
114
115 __LXSYSCALL2(int, unlinkat, int, fd, const char*, pathname)
116
117 __LXSYSCALL1(int, mkdir, const char*, path)
118
119 __LXSYSCALL3(int,
120              execve,
121              const char*,
122              filename,
123              const char**,
124              argv,
125              const char**,
126              envp)