From f39008b26550c574764aaec7aa063df52d6e021e Mon Sep 17 00:00:00 2001 From: Ulrich Drepper Date: Mon, 27 Feb 2006 21:45:10 +0000 Subject: * sysdeps/unix/sysv/linux/linkat.c (linkat): Allow flags to be set when syscall is used. * io/fcntl.h (AT_SYMLINK_FOLLOW): Define. --- sysdeps/unix/sysv/linux/linkat.c | 14 +++++++------- 1 file changed, 7 insertions(+), 7 deletions(-) (limited to 'sysdeps/unix/sysv') diff --git a/sysdeps/unix/sysv/linux/linkat.c b/sysdeps/unix/sysv/linux/linkat.c index e1faf9db56..cfd0e18223 100644 --- a/sysdeps/unix/sysv/linux/linkat.c +++ b/sysdeps/unix/sysv/linux/linkat.c @@ -37,13 +37,6 @@ linkat (fromfd, from, tofd, to, flags) { int result; - // XXX Will be removed once the kernel support is in place. - if (flags != 0) - { - __set_errno (EINVAL); - return -1; - } - #ifdef __NR_linkat # ifndef __ASSUME_ATFCTS if (__have_atfcts >= 0) @@ -60,6 +53,13 @@ linkat (fromfd, from, tofd, to, flags) #endif #ifndef __ASSUME_ATFCTS + /* Without kernel support we cannot handle AT_SYMLINK_FOLLOW. */ + if (flags != 0) + { + __set_errno (EINVAL); + return -1; + } + static const char procfd[] = "/proc/self/fd/%d/%s"; char *buffrom = NULL; -- cgit 1.4.1