this repo has no description
1
fork

Configure Feed

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

Implement sys_symlinkat()

+29
+1
src/kernel/emulation/linux/CMakeLists.txt
··· 65 65 unistd/readlink.c 66 66 unistd/readlinkat.c 67 67 unistd/symlink.c 68 + unistd/symlinkat.c 68 69 unistd/link.c 69 70 unistd/linkat.c 70 71 unistd/unlink.c
+2
src/kernel/emulation/linux/syscalls.c
··· 37 37 #include "unistd/writev.h" 38 38 #include "unistd/getegid.h" 39 39 #include "unistd/symlink.h" 40 + #include "unistd/symlinkat.h" 40 41 #include "unistd/umask.h" 41 42 #include "unistd/chroot.h" 42 43 #include "unistd/link.h" ··· 354 355 [471] = sys_linkat, 355 356 [472] = sys_unlinkat, 356 357 [473] = sys_readlinkat, 358 + [474] = sys_symlinkat, 357 359 [500] = sys_getentropy, 358 360 }; 359 361
+19
src/kernel/emulation/linux/unistd/symlinkat.c
··· 1 + #include "symlinkat.h" 2 + #include "../base.h" 3 + #include "../errno.h" 4 + #include <linux-syscalls/linux.h> 5 + #include "../../../../../platform-include/sys/errno.h" 6 + #include "../common_at.h" 7 + 8 + extern char* strcpy(char* dst, const char* src); 9 + 10 + long sys_symlinkat(int fd, const char* path, const char* link) 11 + { 12 + int ret; 13 + 14 + ret = LINUX_SYSCALL(__NR_symlinkat, atfd(fd), path, link); 15 + if (ret < 0) 16 + ret = errno_linux_to_bsd(ret); 17 + 18 + return ret; 19 + }
+7
src/kernel/emulation/linux/unistd/symlinkat.h
··· 1 + #ifndef LINUX_SYMLINKAT_H 2 + #define LINUX_SYMLINKAT_H 3 + 4 + long sys_symlinkat(int fd, const char* path, const char* link); 5 + 6 + #endif 7 +