summaryrefslogtreecommitdiff
path: root/sysdeps/unix/sysv/linux/fchmodat.c
diff options
context:
space:
mode:
Diffstat (limited to 'sysdeps/unix/sysv/linux/fchmodat.c')
-rw-r--r--sysdeps/unix/sysv/linux/fchmodat.c12
1 files changed, 9 insertions, 3 deletions
diff --git a/sysdeps/unix/sysv/linux/fchmodat.c b/sysdeps/unix/sysv/linux/fchmodat.c
index 025634b278..e278426de1 100644
--- a/sysdeps/unix/sysv/linux/fchmodat.c
+++ b/sysdeps/unix/sysv/linux/fchmodat.c
@@ -34,11 +34,17 @@ fchmodat (fd, file, mode, flag)
int flag;
{
if (flag & ~AT_SYMLINK_NOFOLLOW)
- return INLINE_SYSCALL_ERROR_RETURN (-EINVAL, int, -1);
+ {
+ __set_errno (EINVAL);
+ return -1;
+ }
#ifndef __NR_lchmod /* Linux so far has no lchmod syscall. */
if (flag & AT_SYMLINK_NOFOLLOW)
- return INLINE_SYSCALL_ERROR_RETURN (-ENOTSUP, int, -1);
+ {
+ __set_errno (ENOTSUP);
+ return -1;
+ }
#endif
- return INLINE_SYSCALL_RETURN (fchmodat, 3, int, fd, file, mode);
+ return INLINE_SYSCALL (fchmodat, 3, fd, file, mode);
}