glibc/io
Mark Wielaard 8b7b7f75d9 Add LFS support for fts functions (bug 11460)
fts didn't have large-file support yet and fts.h had an #error preventing
usage when _FILE_OFFSET_BITS was set. This required nasty workarounds for
programs using fts with LFS. This patch implements LFS support for fts by
adding FTS64 and FTENT64 variants plus fts64 functions. Which are simple
aliases for 64bit off_t arches.

Also includes a simple testcase for some of the fts functions with or
without LFS enabled.

	[BZ #11460]
	* io/Makefile (routines): Add fts64.
	(tests): Add tst-fts and tst-fts-lfs.
	(CFLAGS-fts64.c): New.
	* io/Versions (GLIBC_2.23): New.
	* io/fts.c: Replace FTS with FTSOBJ, FTSENT with FTSENTRY. Use
	function defines FTS_OPEN, FTS_CLOSE, FTS_READ, FTS_SET and
	FTS_CHILDREN. Define FTSOBJ, FTSENTRY, FTS_OPEN, FTS_CLOSE,
	FTS_READ, FTS_SET, FTS_CHILDREN, INO_T, STAT and LSTAT if necessary.
	* io/fts.h (FTS64): New if _USE_LARGEFILE64.
	(FTSENT64): Likewise.
	(fts64_children): Likewise.
	(fts64_close): Likewise.
	(fts64_open): Likewise.
	(fts64_read): Likewise.
	(fts64_set): Likewise.
	* io/fts64.c: New file.
	* io/tst-fts.c: New test.
	* io/tst-fts-lfs.c: Likewise.
	* sysdeps/unix/sysv/linux/aarch64/libc.abilist (GLIBC_2.23): Add
	GLIBC_2.23, fts64_children, fts64_close, fts64_open, fts64_read and
	fts64_set.
	* sysdeps/unix/sysv/linux/alpha/libc.abilist: Likewise.
	* sysdeps/unix/sysv/linux/arm/libc.abilist: Likewise.
	* sysdeps/unix/sysv/linux/hppa/libc.abilist: Likewise.
	* sysdeps/unix/sysv/linux/i386/libc.abilist: Likewise.
	* sysdeps/unix/sysv/linux/ia64/libc.abilist: Likewise.
	* sysdeps/unix/sysv/linux/m68k/coldfire/libc.abilist: Likewise.
	* sysdeps/unix/sysv/linux/m68k/m680x0/libc.abilist: Likewise.
	* sysdeps/unix/sysv/linux/microblaze/libc.abilist: Likewise.
	* sysdeps/unix/sysv/linux/mips/mips32/fpu/libc.abilist: Likewise.
	* sysdeps/unix/sysv/linux/mips/mips32/nofpu/libc.abilist: Likewise.
	* sysdeps/unix/sysv/linux/mips/mips64/n32/libc.abilist: Likewise.
	* sysdeps/unix/sysv/linux/mips/mips64/n64/libc.abilist: Likewise.
	* sysdeps/unix/sysv/linux/nios2/libc.abilist: Likewise.
	* sysdeps/unix/sysv/linux/powerpc/powerpc32/fpu/libc.abilist:
	Likewise.
	* sysdeps/unix/sysv/linux/powerpc/powerpc32/nofpu/libc.abilist:
	Likewise.
	* sysdeps/unix/sysv/linux/powerpc/powerpc64/libc.abilist: Likewise.
	* sysdeps/unix/sysv/linux/powerpc/powerpc64/libc-le.abilist: Likewise.
	* sysdeps/unix/sysv/linux/s390/s390-32/libc.abilist: Likewise.
	* sysdeps/unix/sysv/linux/s390/s390-64/libc.abilist: Likewise.
	* sysdeps/unix/sysv/linux/sh/libc.abilist: Likewise.
	* sysdeps/unix/sysv/linux/sparc/sparc32/libc.abilist: Likewise.
	* sysdeps/unix/sysv/linux/sparc/sparc64/libc.abilist: Likewise.
	* sysdeps/unix/sysv/linux/tile/tilegx/tilegx32/libc.abilist: Likewise.
	* sysdeps/unix/sysv/linux/tile/tilegx/tilegx64/libc.abilist: Likewise.
	* sysdeps/unix/sysv/linux/tile/tilepro/libc.abilist: Likewise.
	* sysdeps/unix/sysv/linux/x86_64/64/libc.abilist: Likewise.
	* sysdeps/unix/sysv/linux/x86_64/x32/libc.abilist: Likewise.
	* sysdeps/wordsize-64/fts.c: New file.
	* sysdeps/wordsize-64/fts64.c: Likewise.
	* sysdeps/unix/sysv/linux/mips/mips64/n64/fts.c: Likewise.
	* sysdeps/unix/sysv/linux/mips/mips64/n64/fts64.c: Likewise.
	* sysdeps/unix/sysv/linux/x86_64/x32/fts.c: likewise.
	* sysdeps/unix/sysv/linux/x86_64/x32/fts64.c: likewise.
2015-11-06 11:24:16 +01:00
..
bits linux: open and openat ignore 'mode' with O_TMPFILE in flags 2015-02-24 13:19:22 +05:30
sys Update copyright dates with scripts/update-copyrights. 2015-01-02 16:29:47 +00:00
Makefile Add LFS support for fts functions (bug 11460) 2015-11-06 11:24:16 +01:00
Versions Add LFS support for fts functions (bug 11460) 2015-11-06 11:24:16 +01:00
access.c Convert 703 function definitions to prototype style. 2015-10-16 20:21:49 +00:00
bug-ftw1.c Update copyright dates with scripts/update-copyrights. 2015-01-02 16:29:47 +00:00
bug-ftw2.c Update copyright dates with scripts/update-copyrights. 2015-01-02 16:29:47 +00:00
bug-ftw3.c Update. 2002-02-07 17:54:45 +00:00
bug-ftw4.c Update copyright dates with scripts/update-copyrights. 2015-01-02 16:29:47 +00:00
bug-ftw5.c [BZ #4076] 2007-02-21 09:36:46 +00:00
chdir.c Convert 703 function definitions to prototype style. 2015-10-16 20:21:49 +00:00
chmod.c Convert 703 function definitions to prototype style. 2015-10-16 20:21:49 +00:00
chown.c Convert 703 function definitions to prototype style. 2015-10-16 20:21:49 +00:00
close.c Convert 703 function definitions to prototype style. 2015-10-16 20:21:49 +00:00
creat.c Convert 703 function definitions to prototype style. 2015-10-16 20:21:49 +00:00
creat64.c Convert 703 function definitions to prototype style. 2015-10-16 20:21:49 +00:00
dup.c Convert 703 function definitions to prototype style. 2015-10-16 20:21:49 +00:00
dup2.c Convert 703 function definitions to prototype style. 2015-10-16 20:21:49 +00:00
dup3.c Convert 703 function definitions to prototype style. 2015-10-16 20:21:49 +00:00
euidaccess.c Convert 703 function definitions to prototype style. 2015-10-16 20:21:49 +00:00
faccessat.c Convert 703 function definitions to prototype style. 2015-10-16 20:21:49 +00:00
fchdir.c Update copyright dates with scripts/update-copyrights. 2015-01-02 16:29:47 +00:00
fchmod.c Convert 703 function definitions to prototype style. 2015-10-16 20:21:49 +00:00
fchmodat.c Convert 703 function definitions to prototype style. 2015-10-16 20:21:49 +00:00
fchown.c Convert 703 function definitions to prototype style. 2015-10-16 20:21:49 +00:00
fchownat.c Convert 703 function definitions to prototype style. 2015-10-16 20:21:49 +00:00
fcntl.c Fix some stub prototypes missing ... after K&R conversion 2015-11-05 15:00:12 -08:00
fcntl.h linux: open and openat ignore 'mode' with O_TMPFILE in flags 2015-02-24 13:19:22 +05:30
flock.c Convert 703 function definitions to prototype style. 2015-10-16 20:21:49 +00:00
fstat.c Update copyright dates with scripts/update-copyrights. 2015-01-02 16:29:47 +00:00
fstat64.c Update copyright dates with scripts/update-copyrights. 2015-01-02 16:29:47 +00:00
fstatat.c Update copyright dates with scripts/update-copyrights. 2015-01-02 16:29:47 +00:00
fstatat64.c Update copyright dates with scripts/update-copyrights. 2015-01-02 16:29:47 +00:00
fstatfs.c Update copyright dates with scripts/update-copyrights. 2015-01-02 16:29:47 +00:00
fstatfs64.c Update copyright dates with scripts/update-copyrights. 2015-01-02 16:29:47 +00:00
fstatvfs.c Update copyright dates with scripts/update-copyrights. 2015-01-02 16:29:47 +00:00
fstatvfs64.c Update copyright dates with scripts/update-copyrights. 2015-01-02 16:29:47 +00:00
fts.c Add LFS support for fts functions (bug 11460) 2015-11-06 11:24:16 +01:00
fts.h Add LFS support for fts functions (bug 11460) 2015-11-06 11:24:16 +01:00
fts64.c Add LFS support for fts functions (bug 11460) 2015-11-06 11:24:16 +01:00
ftw.c Convert 113 more function definitions to prototype style (files with assertions). 2015-10-20 11:54:09 +00:00
ftw.h Update copyright dates with scripts/update-copyrights. 2015-01-02 16:29:47 +00:00
ftw64.c Update copyright dates with scripts/update-copyrights. 2015-01-02 16:29:47 +00:00
ftwtest-sh Make io/ftwtest-sh remove temporary files on early exit. 2015-10-21 21:18:21 +00:00
ftwtest.c Update. 2003-11-07 23:00:00 +00:00
futimens.c Update copyright dates with scripts/update-copyrights. 2015-01-02 16:29:47 +00:00
fxstat.c Update copyright dates with scripts/update-copyrights. 2015-01-02 16:29:47 +00:00
fxstat64.c Update copyright dates with scripts/update-copyrights. 2015-01-02 16:29:47 +00:00
fxstatat.c Update copyright dates with scripts/update-copyrights. 2015-01-02 16:29:47 +00:00
fxstatat64.c Update copyright dates with scripts/update-copyrights. 2015-01-02 16:29:47 +00:00
getcwd.c Update copyright dates with scripts/update-copyrights. 2015-01-02 16:29:47 +00:00
getdirname.c Update copyright dates with scripts/update-copyrights. 2015-01-02 16:29:47 +00:00
getwd.c Convert 703 function definitions to prototype style. 2015-10-16 20:21:49 +00:00
have_o_cloexec.c Update copyright dates with scripts/update-copyrights. 2015-01-02 16:29:47 +00:00
isatty.c Convert 703 function definitions to prototype style. 2015-10-16 20:21:49 +00:00
lchmod.c Update copyright dates with scripts/update-copyrights. 2015-01-02 16:29:47 +00:00
lchown.c Convert 703 function definitions to prototype style. 2015-10-16 20:21:49 +00:00
link.c Convert 703 function definitions to prototype style. 2015-10-16 20:21:49 +00:00
linkat.c Convert 703 function definitions to prototype style. 2015-10-16 20:21:49 +00:00
lockf.c Update copyright dates with scripts/update-copyrights. 2015-01-02 16:29:47 +00:00
lockf64.c Update copyright dates with scripts/update-copyrights. 2015-01-02 16:29:47 +00:00
lseek.c Convert 703 function definitions to prototype style. 2015-10-16 20:21:49 +00:00
lseek64.c Update copyright dates with scripts/update-copyrights. 2015-01-02 16:29:47 +00:00
lstat.c Update copyright dates with scripts/update-copyrights. 2015-01-02 16:29:47 +00:00
lstat64.c Update copyright dates with scripts/update-copyrights. 2015-01-02 16:29:47 +00:00
lxstat.c Update copyright dates with scripts/update-copyrights. 2015-01-02 16:29:47 +00:00
lxstat64.c Update copyright dates with scripts/update-copyrights. 2015-01-02 16:29:47 +00:00
mkdir.c Convert 703 function definitions to prototype style. 2015-10-16 20:21:49 +00:00
mkdirat.c Convert 703 function definitions to prototype style. 2015-10-16 20:21:49 +00:00
mkfifo.c Convert 703 function definitions to prototype style. 2015-10-16 20:21:49 +00:00
mkfifoat.c Convert 703 function definitions to prototype style. 2015-10-16 20:21:49 +00:00
mknod.c Update copyright dates with scripts/update-copyrights. 2015-01-02 16:29:47 +00:00
mknodat.c Update copyright dates with scripts/update-copyrights. 2015-01-02 16:29:47 +00:00
open.c Convert 703 function definitions to prototype style. 2015-10-16 20:21:49 +00:00
open64.c Convert 703 function definitions to prototype style. 2015-10-16 20:21:49 +00:00
open64_2.c linux: open and openat ignore 'mode' with O_TMPFILE in flags 2015-02-24 13:19:22 +05:30
open_2.c linux: open and openat ignore 'mode' with O_TMPFILE in flags 2015-02-24 13:19:22 +05:30
openat.c linux: open and openat ignore 'mode' with O_TMPFILE in flags 2015-02-24 13:19:22 +05:30
openat64.c linux: open and openat ignore 'mode' with O_TMPFILE in flags 2015-02-24 13:19:22 +05:30
openat64_2.c linux: open and openat ignore 'mode' with O_TMPFILE in flags 2015-02-24 13:19:22 +05:30
openat_2.c linux: open and openat ignore 'mode' with O_TMPFILE in flags 2015-02-24 13:19:22 +05:30
pipe.c Convert 24 more function definitions to prototype style (array parameters). 2015-10-20 11:51:03 +00:00
pipe2.c Convert 24 more function definitions to prototype style (array parameters). 2015-10-20 11:51:03 +00:00
poll.c Update copyright dates with scripts/update-copyrights. 2015-01-02 16:29:47 +00:00
poll.h initial import 1995-02-18 01:27:10 +00:00
posix_fadvise.c Update copyright dates with scripts/update-copyrights. 2015-01-02 16:29:47 +00:00
posix_fadvise64.c Update copyright dates with scripts/update-copyrights. 2015-01-02 16:29:47 +00:00
posix_fallocate.c posix_fallocate, posix_fallocate64 stub: Do not set errno 2015-04-24 20:08:43 +02:00
posix_fallocate64.c posix_fallocate, posix_fallocate64 stub: Do not set errno 2015-04-24 20:08:43 +02:00
ppoll.c Update copyright dates with scripts/update-copyrights. 2015-01-02 16:29:47 +00:00
pwd.c Update copyright dates with scripts/update-copyrights. 2015-01-02 16:29:47 +00:00
read.c Update copyright dates with scripts/update-copyrights. 2015-01-02 16:29:47 +00:00
readlink.c Convert 703 function definitions to prototype style. 2015-10-16 20:21:49 +00:00
readlinkat.c Convert 703 function definitions to prototype style. 2015-10-16 20:21:49 +00:00
rmdir.c Convert 703 function definitions to prototype style. 2015-10-16 20:21:49 +00:00
sendfile.c Update copyright dates with scripts/update-copyrights. 2015-01-02 16:29:47 +00:00
sendfile64.c Update copyright dates with scripts/update-copyrights. 2015-01-02 16:29:47 +00:00
stat.c Update copyright dates with scripts/update-copyrights. 2015-01-02 16:29:47 +00:00
stat64.c Update copyright dates with scripts/update-copyrights. 2015-01-02 16:29:47 +00:00
statfs.c Update copyright dates with scripts/update-copyrights. 2015-01-02 16:29:47 +00:00
statfs64.c Update copyright dates with scripts/update-copyrights. 2015-01-02 16:29:47 +00:00
statvfs.c Update copyright dates with scripts/update-copyrights. 2015-01-02 16:29:47 +00:00
statvfs64.c Update copyright dates with scripts/update-copyrights. 2015-01-02 16:29:47 +00:00
symlink.c Convert 703 function definitions to prototype style. 2015-10-16 20:21:49 +00:00
symlinkat.c Convert 703 function definitions to prototype style. 2015-10-16 20:21:49 +00:00
test-lfs.c Do not leave files behind in /tmp from testing. 2015-10-15 22:29:06 +00:00
test-stat.c Update copyright dates with scripts/update-copyrights. 2015-01-02 16:29:47 +00:00
test-stat2.c Update copyright dates with scripts/update-copyrights. 2015-01-02 16:29:47 +00:00
test-utime.c Update copyright dates with scripts/update-copyrights. 2015-01-02 16:29:47 +00:00
tst-faccessat.c * sysdeps/unix/sysv/linux/renameat.c (__atfct_seterrno_2): Correcty 2006-01-22 00:57:24 +00:00
tst-fchmodat.c * sysdeps/unix/sysv/linux/renameat.c (__atfct_seterrno_2): Correcty 2006-01-22 00:57:24 +00:00
tst-fchownat.c * io/tst-fchownat.c: Correctly handle _POSIX_CHOWN_RESTRICTED 2008-03-08 05:21:41 +00:00
tst-fcntl.c Move io/tst-fcntl temporary file creation to do_prepare. 2015-10-21 23:37:02 +00:00
tst-fstatat.c * sysdeps/unix/sysv/linux/renameat.c (__atfct_seterrno_2): Correcty 2006-01-22 00:57:24 +00:00
tst-fts-lfs.c Add LFS support for fts functions (bug 11460) 2015-11-06 11:24:16 +01:00
tst-fts.c Add LFS support for fts functions (bug 11460) 2015-11-06 11:24:16 +01:00
tst-futimesat.c * io/Makefile (routines): Add fstatat, fstatat64, fxstatat, fxstatat64, 2005-11-11 20:02:07 +00:00
tst-getcwd.c Update copyright dates with scripts/update-copyrights. 2015-01-02 16:29:47 +00:00
tst-linkat.c (do_test): Pass new parameter to linkat. 2006-02-27 00:59:21 +00:00
tst-mkdirat.c * io/Makefile (tests): Add tst-symlinkat, tst-linkat, tst-readlinkat, 2006-01-20 23:24:42 +00:00
tst-mkfifoat.c * io/Makefile (tests): Add tst-symlinkat, tst-linkat, tst-readlinkat, 2006-01-20 23:24:42 +00:00
tst-mknodat.c tst-mknodat: create a FIFO instead of a socket 2012-09-28 21:33:52 +02:00
tst-openat.c * sysdeps/unix/sysv/linux/renameat.c (__atfct_seterrno_2): Correcty 2006-01-22 00:57:24 +00:00
tst-posix_fallocate.c Include <fcntl.h>. 2007-07-28 18:04:22 +00:00
tst-readlinkat.c * io/Makefile (tests): Add tst-symlinkat, tst-linkat, and 2006-01-20 21:55:16 +00:00
tst-renameat.c * sysdeps/unix/sysv/linux/renameat.c (__atfct_seterrno_2): Correcty 2006-01-22 00:57:24 +00:00
tst-statvfs.c Update. 2003-10-27 04:05:04 +00:00
tst-symlinkat.c * io/Makefile (tests): Add tst-symlinkat, tst-linkat, and 2006-01-20 21:55:16 +00:00
tst-ttyname_r.c * nis/nis_subr.c (nis_getnames): Revert last change. 2006-12-05 21:28:15 +00:00
tst-unlinkat.c * io/Makefile (routines): Add fstatat, fstatat64, fxstatat, fxstatat64, 2005-11-11 20:02:07 +00:00
ttyname.c Convert 703 function definitions to prototype style. 2015-10-16 20:21:49 +00:00
ttyname_r.c Convert 703 function definitions to prototype style. 2015-10-16 20:21:49 +00:00
umask.c Convert 703 function definitions to prototype style. 2015-10-16 20:21:49 +00:00
unlink.c Convert 703 function definitions to prototype style. 2015-10-16 20:21:49 +00:00
unlinkat.c Convert 703 function definitions to prototype style. 2015-10-16 20:21:49 +00:00
utime.c Convert 703 function definitions to prototype style. 2015-10-16 20:21:49 +00:00
utime.h Update copyright dates with scripts/update-copyrights. 2015-01-02 16:29:47 +00:00
utimensat.c Update copyright dates with scripts/update-copyrights. 2015-01-02 16:29:47 +00:00
write.c Update copyright dates with scripts/update-copyrights. 2015-01-02 16:29:47 +00:00
xmknod.c Update copyright dates with scripts/update-copyrights. 2015-01-02 16:29:47 +00:00
xmknodat.c Update copyright dates with scripts/update-copyrights. 2015-01-02 16:29:47 +00:00
xstat.c Update copyright dates with scripts/update-copyrights. 2015-01-02 16:29:47 +00:00
xstat64.c Update copyright dates with scripts/update-copyrights. 2015-01-02 16:29:47 +00:00