Hash :
c79f3527
Author :
Date :
2015-05-29T03:11:59
linkat: avoid OS X 10.10 trailing slash with symlink bug On Darwin 14.3.0 linkat(,"path1",,"dangling_symlink/",) causes the symlink to be dereferenced, and if it points to a non existent file, that file will be created as a hard link to "path1". This fixes a test failure in test-linkat.c. * m4/linkat.m4 (gl_FUNC_LINKAT): Augment the test with this case. The existing workaround in linkat.c for trailing slash issues, suffices for this case. * doc/posix-functions/linkat.texi: Add OS X 10.10 to the list of platforms with trailing slash issues.
@node linkat
@section @code{linkat}
@findex linkat
POSIX specification:@* @url{http://www.opengroup.org/onlinepubs/9699919799/functions/linkat.html}
Gnulib module: linkat
Portability problems fixed by Gnulib:
@itemize
@item
This function is missing on some platforms:
glibc 2.3.6, Mac OS X < 10.10, FreeBSD 6.0, NetBSD 5.0, OpenBSD 3.8, Minix 3.1.8,
AIX 5.1, HP-UX 11, IRIX 6.5, OSF/1 5.1, Solaris 10, Cygwin 1.5.x, mingw, MSVC 9, Interix 3.5, BeOS.
But the replacement function is not safe to be used in libraries and is not multithread-safe.
@item
This function fails to directly hardlink symlinks on some platforms:
Mac OS X 10.10.
@item
This function fails to reject trailing slashes on non-directories on
some platforms:
AIX 7.1, Solaris 11 2011-11, Mac OS X 10.10.
@item
This functions does not support @code{AT_SYMLINK_FOLLOW} on some platforms:
Linux kernel 2.6.17.
@end itemize
Portability problems not fixed by Gnulib:
@itemize
@end itemize