glibc/sysdeps/unix/sysv/linux
Zack Weinberg 48a8f83281 Deprecate external use of libio.h and _G_config.h.
libio.h was originally the header for a set of supported GNU
extensions, but they have not been maintained as such in many years,
they are now standing in the way of improvements to stdio, and we
don't think there are any remaining external users.  _G_config.h was
never intended for public use, but predates the bits convention.
Move both of these headers into the bits directory and provide stubs
at top level which issue deprecation warnings.

The contents of (bits/)libio.h and (bits/)_G_config.h are still
exposed to external software via stdio.h; changing that requires more
complex surgery than I have time to attempt right now.

	* libio/libio.h, libio/_G_config.h: New stub headers which issue a
	deprecation warning and then include <bits/libio.h>, <bits/_G_config.h>
	respectively.
	* libio/libio.h: Rename the original version of this file to
	libio/bits/libio.h.  Error out if not included by stdio.h or the
	stub libio.h.
	* include/libio.h: Move to include/bits.  Forward to libio/bits/libio.h.
	* sysdeps/generic/_G_config.h: Move to top-level bits/.  Error out
	if not included by bits/libio.h or the stub _G_config.h.
	* sysdeps/unix/sysv/linux/_G_config.h: Move to
	sysdeps/unix/sysv/linux/bits.  Error out if not included by
	bits/libio.h or the stub _G_config.h.
	* libio/stdio.h: Include bits/libio.h, not libio.h.
	* libio/Makefile: Install bits/libio.h and bits/_G_config.h as
	well as libio.h and _G_config.h.

	* csu/init.c, libio/fmemopen.c, libio/iolibio.h, libio/oldfmemopen.c
	* libio/strfile.h, stdio-common/vfscanf.c
	* sysdeps/pthread/flockfile.c, sysdeps/pthread/funlockfile.c
	Include stdio.h, not _G_config.h nor libio.h.
	* libio/iofgetpos.c: Also rename fgetpos64 out of the way.
	* libio/iofsetpos.c: Also rename fsetpos64 out of the way.

	* scripts/check-installed-headers.sh: Skip libio.h and _G_config.h.
2017-12-24 09:03:28 -08:00
..
aarch64 copy_file_range: New function to copy file data 2017-12-22 10:55:40 +01:00
alpha copy_file_range: New function to copy file data 2017-12-22 10:55:40 +01:00
arm copy_file_range: New function to copy file data 2017-12-22 10:55:40 +01:00
bits Deprecate external use of libio.h and _G_config.h. 2017-12-24 09:03:28 -08:00
generic Hide __chmod and __mkdir [BZ #18822] 2017-09-04 13:38:51 -07:00
hppa copy_file_range: New function to copy file data 2017-12-22 10:55:40 +01:00
i386 copy_file_range: New function to copy file data 2017-12-22 10:55:40 +01:00
ia64 copy_file_range: New function to copy file data 2017-12-22 10:55:40 +01:00
include Hide internal __sysinfo function [BZ #18822] 2017-10-01 16:05:28 -07:00
m68k copy_file_range: New function to copy file data 2017-12-22 10:55:40 +01:00
microblaze copy_file_range: New function to copy file data 2017-12-22 10:55:40 +01:00
mips copy_file_range: New function to copy file data 2017-12-22 10:55:40 +01:00
net Add Linux 4.14 ARPHRD_RAWIP to net/if_arp.h. 2017-11-16 17:52:43 +00:00
netash
netatalk
netax25
neteconet
netinet
netipx
netiucv
netpacket
netrom
netrose
nfs
nios2 copy_file_range: New function to copy file data 2017-12-22 10:55:40 +01:00
powerpc copy_file_range: New function to copy file data 2017-12-22 10:55:40 +01:00
s390 copy_file_range: New function to copy file data 2017-12-22 10:55:40 +01:00
scsi
sh copy_file_range: New function to copy file data 2017-12-22 10:55:40 +01:00
sparc copy_file_range: New function to copy file data 2017-12-22 10:55:40 +01:00
sys sys/ptrace.h: remove obsolete Linux PTRACE_SEIZE_DEVEL constant [BZ #21928] 2017-08-09 22:58:45 +00:00
tile copy_file_range: New function to copy file data 2017-12-22 10:55:40 +01:00
wordsize-64 Mark internal dirent functions with attribute_hidden [BZ #18822] 2017-10-01 15:51:11 -07:00
x86 Linux/x86: Update cancel_jmp_buf to match __jmp_buf_tag [BZ #22563] 2017-12-19 02:44:04 -08:00
x86_64 copy_file_range: New function to copy file data 2017-12-22 10:55:40 +01:00
Implies
Makefile Linux: Implement interfaces for memory protection keys 2017-12-05 15:20:35 +01:00
Versions Linux: Implement interfaces for memory protection keys 2017-12-05 15:20:35 +01:00
_exit.c
a.out.h
accept.c
accept4.c
access.c tunables: Use direct syscall for access (BZ#21744) 2017-07-24 11:21:07 -03:00
adjtime.c
aio_misc.h
aio_sigqueue.c aio: Remove internal_function function attribute 2017-08-31 15:59:06 +02:00
arch-fork.h
bind.c
check_native.c Consolidate non cancellable close call 2017-08-18 18:38:55 -03:00
check_pf.c Consolidate non cancellable close call 2017-08-18 18:38:55 -03:00
clock.c
clock_getcpuclockid.c
clock_getres.c
clock_gettime.c
clock_nanosleep.c
clock_settime.c
close.c Consolidate non cancellable close call 2017-08-18 18:38:55 -03:00
cmsg_nxthdr.c
configure
configure.ac
connect.c
copy_file_range.c copy_file_range: New function to copy file data 2017-12-22 10:55:40 +01:00
creat.c Consolidate Linux creat implementation 2017-05-11 17:27:27 -03:00
creat64.c Consolidate Linux creat implementation 2017-05-11 17:27:27 -03:00
createthread.c
default-sched.h
device-nrs.h
dl-brk.c
dl-execstack.c NPTL: Remove internal_function from stack marking functions 2017-08-13 21:11:38 +02:00
dl-fxstatat64.c
dl-getcwd.c
dl-librecon.h ld.so: Consolidate 2 strtouls into _dl_strtoul [BZ #21528] 2017-06-08 12:52:42 -07:00
dl-openat64.c
dl-opendir.c
dl-origin.c
dl-osinfo.h
dl-sbrk.c
dl-sysdep.c
dl-sysdep.h
dl-vdso.c elf: Remove internal_function attribute 2017-08-31 16:59:37 +02:00
dl-vdso.h elf: Remove internal_function attribute 2017-08-31 16:59:37 +02:00
dl-writev.h
epoll_pwait.c
epoll_wait.c linux: Include <sysdep-cancel.h> for epoll_wait 2017-11-15 14:40:17 -02:00
errqueue.h Consistently use uintN_t not u_intN_t everywhere. 2017-08-07 19:55:34 +00:00
eventfd_read.c
eventfd_write.c
exit-thread.h
faccessat.c
fallocate.c
fallocate64.c
fatal-prepare.h
fchmodat.c
fcntl.c Remove NO_CANCELLATION macro 2017-08-31 16:10:34 -03:00
fd_to_filename.h
fdatasync.c posix: Consolidate Linux fdatasync syscall 2017-05-18 18:06:47 -03:00
fexecve.c Fix fexecve build where syscall macros call sizeof. 2017-09-19 15:50:38 +00:00
filter-nr-syscalls.awk <bits/syscall.h>: Use an arch-independent system call list on Linux 2017-08-28 11:58:52 +02:00
fips-private.h Consolidate non cancellable close call 2017-08-18 18:38:55 -03:00
fpathconf.c
fstatfs64.c
fstatvfs.c Mark __internal_statvfs[64] with attribute_hidden [BZ #18822] 2017-10-01 15:08:32 -07:00
fstatvfs64.c Mark __internal_statvfs[64] with attribute_hidden [BZ #18822] 2017-10-01 15:08:32 -07:00
fsync.c posix: Consolidate Linux fsync syscall 2017-05-18 18:06:47 -03:00
ftime.c
ftruncate.c
ftruncate64.c
futex-internal.h
futimens.c
futimes.c
futimesat.c
fxstat.c
fxstat64.c
fxstatat.c
fxstatat64.c
gai_sigqueue.c resolv: Remove internal_function attribute 2017-08-31 16:07:52 +02:00
gen-syscall-h.awk <bits/syscall.h>: Use an arch-independent system call list on Linux 2017-08-28 11:58:52 +02:00
gentempfd.c Include <string.h> for strcmp call from sysdeps/unix/sysv/linux/gentempfd.c. 2017-09-01 17:14:43 +00:00
getclktck.c
getcwd.c Linux getcwd: Remove internal_function attribute 2017-08-31 15:59:07 +02:00
getdents.c dirent: Remove internal_function attribute 2017-08-31 16:02:40 +02:00
getdents64.c
getdirentries.c
getdirentries64.c
getdtsz.c
getentropy.c
gethostid.c Consolidate non cancellable close call 2017-08-18 18:38:55 -03:00
getipv4sourcefilter.c
getloadavg.c Consolidate non cancellable close call 2017-08-18 18:38:55 -03:00
getlogin.c
getlogin_r.c Consolidate non cancellable close call 2017-08-18 18:38:55 -03:00
getpagesize.c
getpeername.c
getpriority.c
getpt.c Hide internal __bsd_getpt function [BZ #18822] 2017-10-01 16:08:42 -07:00
getrandom.c getrandom: fix comment [BZ #22347] 2017-12-23 14:27:30 +00:00
getrlimit.c
getrlimit64.c Hide internal __new_getrlimit function [BZ #18822] 2017-10-01 18:00:07 -07:00
getsockname.c
getsockopt.c
getsourcefilter.c Hide internal __get_sol function [BZ #18822] 2017-10-01 16:12:24 -07:00
getsourcefilter.h Hide internal __get_sol function [BZ #18822] 2017-10-01 16:12:24 -07:00
getsysstats.c Hide internal sysinfo functions [BZ #18822] 2017-10-01 15:57:21 -07:00
gettimeofday.c
glob-lstat-compat.c posix: Add compat glob symbol to not follow dangling symbols 2017-09-25 18:04:16 -07:00
glob.c posix: Add compat glob symbol to not follow dangling symbols 2017-09-25 18:04:16 -07:00
glob64-lstat-compat.c posix: Add compat glob symbol to not follow dangling symbols 2017-09-25 18:04:16 -07:00
glob64.c Hide internal __glob64 function [BZ #18822] 2017-10-01 18:02:10 -07:00
globfree.c posix: Consolidate Linux glob implementation 2017-09-08 16:34:02 +02:00
globfree64.c posix: Consolidate Linux glob implementation 2017-09-08 16:34:02 +02:00
grantpt.c Consolidate non cancellable close call 2017-08-18 18:38:55 -03:00
if_index.c Check length of ifname before copying it into to ifreq structure. 2017-11-15 08:58:48 -08:00
ifaddrs.c Update sysdeps/unix/sysv/linux/ifaddrs.c 2017-09-27 17:18:32 -07:00
ifreq.c
internal_statvfs.c Mark __internal_statvfs[64] with attribute_hidden [BZ #18822] 2017-10-01 15:08:32 -07:00
internal_statvfs.h Mark __internal_statvfs[64] with attribute_hidden [BZ #18822] 2017-10-01 15:08:32 -07:00
internal_statvfs64.c
ipc_ops.h
ipc_priv.h
kernel-features.h copy_file_range: New function to copy file data 2017-12-22 10:55:40 +01:00
kernel-posix-cpu-timers.h
kernel-posix-timers.h
kernel_sigaction.h
kernel_stat.h
kernel_termios.h
ldd-rewrite.sed
lddlibc4.c
ldsodefs.h
libc_fatal.c Consolidate non cancellable close call 2017-08-18 18:38:55 -03:00
linux_fsinfo.h
listen.c
local-setxid.h
lowlevellock-futex.h
lseek.c
lseek64.c
lutimes.c
lxstat.c
lxstat64.c
malloc-sysdep.h Consolidate non cancellable close call 2017-08-18 18:38:55 -03:00
mlock2.c Implement the mlock2 function 2017-11-27 17:14:29 +01:00
mmap.c posix: Fix mmap for m68k and ia64 (BZ#21908) 2017-08-14 10:35:14 -03:00
mmap64.c Clean pthread functions namespaces for C11 threads 2017-06-23 17:38:17 -03:00
mmap_internal.h posix: Fix mmap for m68k and ia64 (BZ#21908) 2017-08-14 10:35:14 -03:00
mq_close.c
mq_getattr.c
mq_notify.c Consolidate non cancellable close call 2017-08-18 18:38:55 -03:00
mq_open.c
mq_receive.c
mq_send.c
mq_timedreceive.c posix: Consolidate Linux mq_timedreceive syscall 2017-05-18 18:06:47 -03:00
mq_timedsend.c posix: Consolidate Linux mq_timedsend syscall 2017-05-18 18:06:47 -03:00
mq_unlink.c
msgctl.c
msgget.c
msgrcv.c
msgsnd.c
msync.c posix: Consolidate Linux msync syscall 2017-05-18 18:06:47 -03:00
nanosleep.c Consolidate non cancellable nanosleep call 2017-08-22 14:25:08 -03:00
netlink_assert_response.c __netlink_assert_response: Remove internal_function attribute 2017-08-13 21:11:28 +02:00
netlinkaccess.h Mark internal netlink functions with attribute_hidden [BZ #18822] 2017-10-01 15:56:27 -07:00
nice.c
not-cancel.h Remove NO_CANCELLATION macro 2017-08-31 16:10:34 -03:00
not-errno.h tunables: Use direct syscall for access (BZ#21744) 2017-07-24 11:21:07 -03:00
nptl-signals.h Remove __need macros from signal.h. 2017-05-20 19:04:43 -04:00
nscd_setup_thread.c
ntp_gettime.c
ntp_gettimex.c
olddirent.h Mark internal functions with attribute_hidden [BZ #18822] 2017-10-01 15:07:23 -07:00
oldglob.c posix: Add compat glob symbol to not follow dangling symbols 2017-09-25 18:04:16 -07:00
open.c Consolidate non cancellable open call 2017-08-17 16:50:35 -03:00
open64.c Consolidate non cancellable open call 2017-08-17 16:50:35 -03:00
open_by_handle_at.c linux: Consolidate Linux open_by_handle_at syscall 2017-05-18 18:06:47 -03:00
openat.c Consolidate non cancellable openat call 2017-08-18 16:30:05 -03:00
openat64.c Consolidate non cancellable openat call 2017-08-18 16:30:05 -03:00
opendir.c
opensock.c __opensock: Remove internal_function attribute 2017-08-17 10:18:15 +02:00
pathconf.c
pathconf.h Mark internal statfs functions with attribute_hidden [BZ #18822] 2017-10-01 15:18:25 -07:00
paths.h
pause.c Consolidate non cancellable pause call 2017-08-22 14:25:03 -03:00
personality.c
pkey_get.c Linux: Implement interfaces for memory protection keys 2017-12-05 15:20:35 +01:00
pkey_mprotect.c Linux: Implement interfaces for memory protection keys 2017-12-05 15:20:35 +01:00
pkey_set.c Linux: Implement interfaces for memory protection keys 2017-12-05 15:20:35 +01:00
poll.c
posix_fadvise.c
posix_fadvise64.c Hide internal fadvise64/fallocate64 functions [BZ #18822] 2017-10-01 18:06:04 -07:00
posix_fallocate.c
posix_fallocate64.c Hide internal fadvise64/fallocate64 functions [BZ #18822] 2017-10-01 18:06:04 -07:00
posix_madvise.c
ppoll.c
pread.c
pread64.c
preadv.c posix: Remove internal_function attribute 2017-08-31 18:52:00 +02:00
preadv2.c posix: Set p{read,write}v2 to return ENOTSUP (BZ#21780) 2017-08-08 09:59:46 -03:00
preadv64.c posix: Remove internal_function attribute 2017-08-31 18:52:00 +02:00
preadv64v2.c posix: Set p{read,write}v2 to return ENOTSUP (BZ#21780) 2017-08-08 09:59:46 -03:00
prlimit.c
prof-freq.c
profil.c
pselect.c
pt-raise.c
pthread-pids.h
pthread_getaffinity.c
pthread_getcpuclockid.c
pthread_getname.c Consolidate non cancellable close call 2017-08-18 18:38:55 -03:00
pthread_kill.c
pthread_setaffinity.c
pthread_setname.c Consolidate non cancellable close call 2017-08-18 18:38:55 -03:00
pthread_sigmask.c
pthread_sigqueue.c
ptrace.c
ptsname.c Remove check for NULL buffer passed to `ptsname_r' 2017-06-07 17:37:59 +02:00
pwrite.c
pwrite64.c posix: Implement preadv2 and pwritev2 2017-05-31 17:35:46 -03:00
pwritev.c posix: Remove internal_function attribute 2017-08-31 18:52:00 +02:00
pwritev2.c posix: Set p{read,write}v2 to return ENOTSUP (BZ#21780) 2017-08-08 09:59:46 -03:00
pwritev64.c posix: Remove internal_function attribute 2017-08-31 18:52:00 +02:00
pwritev64v2.c posix: Set p{read,write}v2 to return ENOTSUP (BZ#21780) 2017-08-08 09:59:46 -03:00
raise.c
read.c Consolidate non cancellable read call 2017-08-18 10:31:16 -03:00
readahead.c
readdir64.c Mark internal dirent functions with attribute_hidden [BZ #18822] 2017-10-01 15:51:11 -07:00
readdir64_r.c
readonly-area.c
readv.c Hide __readv and __writev [BZ #18822] 2017-10-01 15:54:10 -07:00
reboot.c
recv.c
recvfrom.c
recvmmsg.c
recvmsg.c
remove.c
rename.c
renameat.c
sa_len.c
safe-fatal.h
sched_getaffinity.c
sched_getcpu.c
sched_setaffinity.c Hide internal __sched_setaffinity_new function [BZ #18822] 2017-10-01 18:03:59 -07:00
segfault.c
select.c
semctl.c
semget.c
semop.c
semtimedop.c
send.c
sendmmsg.c
sendmsg.c
sendto.c
setegid.c
seteuid.c
setgid.c
setgroups.c
sethostid.c
setipv4sourcefilter.c
setregid.c
setresgid.c
setresuid.c
setreuid.c
setrlimit.c Hide internal __setrlimit function [BZ #18822] 2017-10-01 17:46:54 -07:00
setrlimit64.c Hide internal __setrlimit function [BZ #18822] 2017-10-01 17:46:54 -07:00
setsockopt.c
setsourcefilter.c Hide internal __get_sol function [BZ #18822] 2017-10-01 16:12:24 -07:00
setuid.c
shlib-versions
shm-directory.c
shmat.c
shmctl.c
shmdt.c
shmget.c
shutdown.c
sigaction.c
siglist.h
signal.c
signalfd.c
sigpending.c
sigprocmask.c Remove useless #ifdefs from Linux sig*.c syscalls 2017-10-31 17:49:18 -02:00
sigqueue.c Cleanup Linux sigqueue implementation 2017-11-06 17:37:57 -02:00
sigreturn.c
sigset-cvt-mask.h
sigsetops.h Remove __need macros from signal.h. 2017-05-20 19:04:43 -04:00
sigstack.c
sigsuspend.c posix: Consolidate Linux sigsuspend implementation 2017-05-18 18:06:47 -03:00
sigtimedwait.c Simplify Linux sig{timed}wait{info} implementations 2017-11-06 17:37:57 -02:00
sigwait.c sigwait: Do not fail with EINTR and return error code [BZ #22478] 2017-11-23 11:20:53 +01:00
sigwaitinfo.c Simplify Linux sig{timed}wait{info} implementations 2017-11-06 17:37:57 -02:00
sizes.h
socket.c
socketcall.h
socketpair.c
spawni.c posix: Do not use WNOHANG in waitpid call for Linux posix_spawn 2017-10-23 13:31:26 -02:00
speed.c
splice.c linux: Consolidate Linux splice syscall 2017-05-18 18:06:47 -03:00
statfs64.c
statvfs.c Mark __internal_statvfs[64] with attribute_hidden [BZ #18822] 2017-10-01 15:08:32 -07:00
statvfs64.c Mark __internal_statvfs[64] with attribute_hidden [BZ #18822] 2017-10-01 15:08:32 -07:00
sync_file_range.c
syscall-names.list Update kernel version in syscall-names.list to 4.14. 2017-11-16 17:51:54 +00:00
syscalls.list Linux: Implement interfaces for memory protection keys 2017-12-05 15:20:35 +01:00
sysconf.c Consolidate non cancellable close call 2017-08-18 18:38:55 -03:00
sysctl.c
sysctl.mk
sysdep-cancel.h Linux: Consolidate {RTLD_}SINGLE_THREAD_P definition 2017-10-11 14:27:24 -03:00
sysdep-vdso.h
sysdep.h
syslog.c
system.c
tcdrain.c
tcflow.c
tcflush.c
tcgetattr.c Hide internal __tcgetattr function [BZ #18822] 2017-10-01 17:48:24 -07:00
tcgetpgrp.c
tcsendbrk.c
tcsetattr.c Clean pthread functions namespaces for C11 threads 2017-06-23 17:38:17 -03:00
tcsetpgrp.c
tee.c linux: Consolidate Linux tee implementation 2017-05-18 18:06:47 -03:00
termio.h
test-errno-linux.c test-errno-linux: quotactl can fail with EPERM in containers 2017-11-02 13:55:51 +01:00
time.c
timer_create.c
timer_delete.c
timer_getoverr.c
timer_gettime.c
timer_routines.c
timer_settime.c
times.c
timespec_get.c
truncate.c
truncate64.c
tst-affinity-pid.c
tst-affinity.c
tst-align-clone.c
tst-clone.c
tst-clone2.c Use test-driver in sysdeps/unix/sysv/linux/tst-clone2.c 2017-06-07 14:05:42 +02:00
tst-clone3.c Call exit directly in clone (BZ #21512) 2017-06-26 17:52:20 -03:00
tst-fallocate-common.c
tst-fallocate.c
tst-fallocate64.c
tst-fanotify.c
tst-getpid1.c
tst-memfd_create.c Linux: Add memfd_create system call wrapper 2017-11-23 10:00:40 +01:00
tst-mlock2.c Implement the mlock2 function 2017-11-27 17:14:29 +01:00
tst-personality.c
tst-pkey.c Linux: Implement interfaces for memory protection keys 2017-12-05 15:20:35 +01:00
tst-quota.c
tst-setgetname.c
tst-signal-numbers.sh Factor out shared definitions from bits/signum.h. 2017-06-20 20:32:50 -04:00
tst-skeleton-affinity.c
tst-skeleton-thread-affinity.c
tst-sync_file_range.c
tst-syscall-list.sh <bits/syscall.h>: Use an arch-independent system call list on Linux 2017-08-28 11:58:52 +02:00
tst-sysconf-iov_max-uapi.c sysconf: Fix missing definition of UIO_MAXIOV on Linux [BZ #22321] 2017-10-20 04:10:15 +02:00
tst-sysconf-iov_max.c sysconf: Fix missing definition of UIO_MAXIOV on Linux [BZ #22321] 2017-10-20 04:10:15 +02:00
tst-thread-affinity-pthread.c
tst-thread-affinity-pthread2.c
tst-thread-affinity-sched.c
tst-ttyname.c tst-ttyname: Fix namespace setup for Fedora 2017-11-18 14:34:46 +01:00
ttyname.c linux ttyname{_r}: Don't bail prematurely [BZ #22145] 2017-11-15 20:47:12 +01:00
ttyname.h linux ttyname{_r}: Make tty checks consistent 2017-11-15 20:47:07 +01:00
ttyname_r.c linux ttyname{_r}: Don't bail prematurely [BZ #22145] 2017-11-15 20:47:12 +01:00
ualarm.c
umount.S
umount2.S
unlockpt.c
updwtmp.c
ustat.c
utimensat.c
utimes.c
utmp_file.c
vfork.c
vmsplice.c linux: Consolidate Linux vmsplice syscall 2017-05-18 18:06:47 -03:00
wait.c
wait3.c
waitid.c
waitpid.c Consolidate non cancellable waitpid call 2017-08-21 15:37:45 -03:00
write.c Consolidate non cancellable write call 2017-08-18 10:53:47 -03:00
writev.c Hide __readv and __writev [BZ #18822] 2017-10-01 15:54:10 -07:00
xmknod.c
xmknodat.c
xstat.c
xstat64.c
xstatconv.c
xstatconv.h