this repo has no description
1
fork

Configure Feed

Select the types of activity you want to include in your feed.

Implement sys_readlinkat()

+28
+1
src/kernel/emulation/linux/CMakeLists.txt
··· 63 63 unistd/access.c 64 64 unistd/faccessat.c 65 65 unistd/readlink.c 66 + unistd/readlinkat.c 66 67 unistd/symlink.c 67 68 unistd/link.c 68 69 unistd/linkat.c
+2
src/kernel/emulation/linux/syscalls.c
··· 32 32 #include "unistd/truncate.h" 33 33 #include "unistd/ftruncate.h" 34 34 #include "unistd/readlink.h" 35 + #include "unistd/readlinkat.h" 35 36 #include "unistd/readv.h" 36 37 #include "unistd/writev.h" 37 38 #include "unistd/getegid.h" ··· 352 353 [470] = sys_fstatat64, 353 354 [471] = sys_linkat, 354 355 [472] = sys_unlinkat, 356 + [473] = sys_readlinkat, 355 357 [500] = sys_getentropy, 356 358 }; 357 359
+18
src/kernel/emulation/linux/unistd/readlinkat.c
··· 1 + #include "readlink.h" 2 + #include "../base.h" 3 + #include "../errno.h" 4 + #include <linux-syscalls/linux.h> 5 + #include "../common_at.h" 6 + 7 + extern __SIZE_TYPE__ strlen(const char* str); 8 + 9 + long sys_readlinkat(int fd, const char* path, char* buf, int count) 10 + { 11 + int ret; 12 + 13 + ret = LINUX_SYSCALL(__NR_readlinkat, atfd(fd), path, buf, count); 14 + if (ret < 0) 15 + ret = errno_linux_to_bsd(ret); 16 + 17 + return ret; 18 + }
+7
src/kernel/emulation/linux/unistd/readlinkat.h
··· 1 + #ifndef LINUX_READLINKAT_H 2 + #define LINUX_READLINKAT_H 3 + 4 + long sys_readlinkat(int fd, const char* path, char* buf, int count); 5 + 6 + #endif 7 +