diff options
Diffstat (limited to 'src/stdio/rename.c')
-rw-r--r-- | src/stdio/rename.c | 14 |
1 files changed, 14 insertions, 0 deletions
diff --git a/src/stdio/rename.c b/src/stdio/rename.c new file mode 100644 index 0000000..f540adb --- /dev/null +++ b/src/stdio/rename.c @@ -0,0 +1,14 @@ +#include <stdio.h> +#include <fcntl.h> +#include "syscall.h" + +int rename(const char *old, const char *new) +{ +#if defined(SYS_rename) + return syscall(SYS_rename, old, new); +#elif defined(SYS_renameat) + return syscall(SYS_renameat, AT_FDCWD, old, AT_FDCWD, new); +#else + return syscall(SYS_renameat2, AT_FDCWD, old, AT_FDCWD, new, 0); +#endif +} |