OLD | NEW |
1 #include <stdio.h> | 1 #include <stdio.h> |
2 #include <errno.h> | 2 #include <errno.h> |
3 #include <fcntl.h> | 3 #include <fcntl.h> |
4 #include "syscall.h" | 4 #include "syscall.h" |
5 | 5 |
6 int remove(const char *path) | 6 int remove(const char* path) { |
7 { | |
8 #ifdef SYS_unlink | 7 #ifdef SYS_unlink |
9 » int r = __syscall(SYS_unlink, path); | 8 int r = __syscall(SYS_unlink, path); |
10 #else | 9 #else |
11 » int r = __syscall(SYS_unlinkat, AT_FDCWD, path, 0); | 10 int r = __syscall(SYS_unlinkat, AT_FDCWD, path, 0); |
12 #endif | 11 #endif |
13 #ifdef SYS_rmdir | 12 #ifdef SYS_rmdir |
14 » if (r==-EISDIR) r = __syscall(SYS_rmdir, path); | 13 if (r == -EISDIR) |
| 14 r = __syscall(SYS_rmdir, path); |
15 #else | 15 #else |
16 » if (r==-EISDIR) r = __syscall(SYS_unlinkat, AT_FDCWD, path, AT_REMOVEDIR
); | 16 if (r == -EISDIR) |
| 17 r = __syscall(SYS_unlinkat, AT_FDCWD, path, AT_REMOVEDIR); |
17 #endif | 18 #endif |
18 » return __syscall_ret(r); | 19 return __syscall_ret(r); |
19 } | 20 } |
OLD | NEW |