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