diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000..c1b15f8 --- /dev/null +++ b/.gitignore @@ -0,0 +1,3 @@ +SOURCES/man-pages-4.15.tar.xz +SOURCES/man-pages-additional-20140218.tar.xz +SOURCES/man-pages-posix-2013-a.tar.xz diff --git a/.man-pages.metadata b/.man-pages.metadata new file mode 100644 index 0000000..eb6677c --- /dev/null +++ b/.man-pages.metadata @@ -0,0 +1,3 @@ +05ec29cc69586f276fbeaccd3b466f3456292010 SOURCES/man-pages-4.15.tar.xz +315c9144f71c0edf1af823fb3f7735e93f6f17c3 SOURCES/man-pages-additional-20140218.tar.xz +91b5b10a7a596615789782dad0adb477a8bf9f84 SOURCES/man-pages-posix-2013-a.tar.xz diff --git a/SOURCES/man-pages-3.42-close.patch b/SOURCES/man-pages-3.42-close.patch new file mode 100644 index 0000000..0f6105a --- /dev/null +++ b/SOURCES/man-pages-3.42-close.patch @@ -0,0 +1,17 @@ +diff -up man-pages-3.59/man2/close.2.orig man-pages-3.59/man2/close.2 +--- man-pages-3.59/man2/close.2.orig 2014-02-16 08:33:52.000000000 +0100 ++++ man-pages-3.59/man2/close.2 2014-02-18 13:49:27.685917162 +0100 +@@ -120,6 +120,13 @@ other threads in the same process. + Since a file descriptor may be reused, + there are some obscure race conditions + that may cause unintended side effects. ++.PP ++When dealing with sockets, you have to be sure that there is no ++.BR recv (2) ++still blocking on it on another thread, otherwise it might block forever, ++since no more messages will be send via the socket. Be sure to use ++.BR shutdown (2) ++to shut down all parts the connection before closing the socket. + .\" Date: Tue, 4 Sep 2007 13:57:35 +0200 + .\" From: Fredrik Noring + .\" One such race involves signals and ERESTARTSYS. If a file descriptor diff --git a/SOURCES/man-pages-4.15-aarch64-syscalls.patch b/SOURCES/man-pages-4.15-aarch64-syscalls.patch new file mode 100644 index 0000000..8081785 --- /dev/null +++ b/SOURCES/man-pages-4.15-aarch64-syscalls.patch @@ -0,0 +1,2498 @@ +From 1cb64d264cb92d55cfa2b6d3ea5ebc1adca7444f Mon Sep 17 00:00:00 2001 +From: =?UTF-8?q?Nikola=20Forr=C3=B3?= +Date: Fri, 27 Jul 2018 17:27:24 +0200 +Subject: [PATCH 5/5] remove syscalls deprecated on aarch64 + +--- + man2/_sysctl.2 | 1 - + man2/access.2 | 5 + + man2/alarm.2 | 105 -------------- + man2/bdflush.2 | 133 ----------------- + man2/chmod.2 | 5 + + man2/chown.2 | 7 + + man2/clone.2 | 21 +++ + man2/dup.2 | 7 + + man2/epoll_create.2 | 5 + + man2/epoll_wait.2 | 5 + + man2/eventfd.2 | 5 + + man2/fork.2 | 337 ------------------------------------------ + man2/futimesat.2 | 142 ------------------ + man2/getdents.2 | 7 + + man2/inotify_init.2 | 5 + + man2/link.2 | 5 + + man2/mkdir.2 | 5 + + man2/mknod.2 | 5 + + man2/open.2 | 7 + + man2/pause.2 | 72 --------- + man2/pipe.2 | 5 + + man2/poll.2 | 5 + + man2/readlink.2 | 5 + + man2/recv.2 | 7 + + man2/rename.2 | 5 + + man2/rmdir.2 | 150 ------------------- + man2/select.2 | 5 + + man2/send.2 | 7 + + man2/setpgid.2 | 5 + + man2/signalfd.2 | 5 + + man2/symlink.2 | 5 + + man2/sysctl.2 | 190 ------------------------ + man2/time.2 | 140 ------------------ + man2/umount.2 | 5 + + man2/unlink.2 | 5 + + man2/uselib.2 | 138 ------------------ + man2/ustat.2 | 127 ---------------- + man2/utime.2 | 9 +- + man2/vfork.2 | 346 -------------------------------------------- + man2/wait4.2 | 7 + + 40 files changed, 171 insertions(+), 1884 deletions(-) + delete mode 100644 man2/_sysctl.2 + delete mode 100644 man2/alarm.2 + delete mode 100644 man2/bdflush.2 + delete mode 100644 man2/fork.2 + delete mode 100644 man2/futimesat.2 + delete mode 100644 man2/pause.2 + delete mode 100644 man2/rmdir.2 + delete mode 100644 man2/sysctl.2 + delete mode 100644 man2/time.2 + delete mode 100644 man2/uselib.2 + delete mode 100644 man2/ustat.2 + delete mode 100644 man2/vfork.2 + +diff --git a/man2/_sysctl.2 b/man2/_sysctl.2 +deleted file mode 100644 +index 9e14d4b..0000000 +--- a/man2/_sysctl.2 ++++ /dev/null +@@ -1 +0,0 @@ +-.so man2/sysctl.2 +diff --git a/man2/access.2 b/man2/access.2 +index 2d194b5..9d8f444 100644 +--- a/man2/access.2 ++++ b/man2/access.2 +@@ -76,6 +76,11 @@ _ATFILE_SOURCE + .PD + .SH DESCRIPTION + .BR access () ++system call is DEPRECATED, use ++.BR faccessat () ++instead!!! ++.PP ++.BR access () + checks whether the calling process can access the file + .IR pathname . + If +diff --git a/man2/alarm.2 b/man2/alarm.2 +deleted file mode 100644 +index 43d7664..0000000 +--- a/man2/alarm.2 ++++ /dev/null +@@ -1,105 +0,0 @@ +-.\" This manpage is Copyright (C) 1992 Drew Eckhardt; +-.\" and Copyright (C) 1993 Michael Haardt, Ian Jackson. +-.\" +-.\" %%%LICENSE_START(VERBATIM) +-.\" Permission is granted to make and distribute verbatim copies of this +-.\" manual provided the copyright notice and this permission notice are +-.\" preserved on all copies. +-.\" +-.\" Permission is granted to copy and distribute modified versions of this +-.\" manual under the conditions for verbatim copying, provided that the +-.\" entire resulting derived work is distributed under the terms of a +-.\" permission notice identical to this one. +-.\" +-.\" Since the Linux kernel and libraries are constantly changing, this +-.\" manual page may be incorrect or out-of-date. The author(s) assume no +-.\" responsibility for errors or omissions, or for damages resulting from +-.\" the use of the information contained herein. The author(s) may not +-.\" have taken the same level of care in the production of this manual, +-.\" which is licensed free of charge, as they might when working +-.\" professionally. +-.\" +-.\" Formatted or processed versions of this manual, if unaccompanied by +-.\" the source, must acknowledge the copyright and authors of this work. +-.\" %%%LICENSE_END +-.\" +-.\" Modified Wed Jul 21 19:42:57 1993 by Rik Faith +-.\" Modified Sun Jul 21 21:25:26 1996 by Andries Brouwer +-.\" Modified Wed Nov 6 03:46:05 1996 by Eric S. Raymond +-.\" +-.TH ALARM 2 2017-05-03 "Linux" "Linux Programmer's Manual" +-.SH NAME +-alarm \- set an alarm clock for delivery of a signal +-.SH SYNOPSIS +-.nf +-.B #include +-.PP +-.BI "unsigned int alarm(unsigned int " seconds ); +-.fi +-.SH DESCRIPTION +-.BR alarm () +-arranges for a +-.B SIGALRM +-signal to be delivered to the calling process in +-.I seconds +-seconds. +-.PP +-If +-.I seconds +-is zero, any pending alarm is canceled. +-.PP +-In any event any previously set +-.BR alarm () +-is canceled. +-.SH RETURN VALUE +-.BR alarm () +-returns the number of seconds remaining until any previously scheduled +-alarm was due to be delivered, or zero if there was no previously +-scheduled alarm. +-.SH CONFORMING TO +-POSIX.1-2001, POSIX.1-2008, SVr4, 4.3BSD. +-.SH NOTES +-.BR alarm () +-and +-.BR setitimer (2) +-share the same timer; calls to one will interfere with use of the +-other. +-.PP +-Alarms created by +-.BR alarm () +-are preserved across +-.BR execve (2) +-and are not inherited by children created via +-.BR fork (2). +-.PP +-.BR sleep (3) +-may be implemented using +-.BR SIGALRM ; +-mixing calls to +-.BR alarm () +-and +-.BR sleep (3) +-is a bad idea. +-.PP +-Scheduling delays can, as ever, cause the execution of the process to +-be delayed by an arbitrary amount of time. +-.SH SEE ALSO +-.BR gettimeofday (2), +-.BR pause (2), +-.BR select (2), +-.BR setitimer (2), +-.BR sigaction (2), +-.BR signal (2), +-.BR timer_create (2), +-.BR timerfd_create (2), +-.BR sleep (3), +-.BR time (7) +-.SH COLOPHON +-This page is part of release 4.15 of the Linux +-.I man-pages +-project. +-A description of the project, +-information about reporting bugs, +-and the latest version of this page, +-can be found at +-\%https://www.kernel.org/doc/man\-pages/. +diff --git a/man2/bdflush.2 b/man2/bdflush.2 +deleted file mode 100644 +index ac0df3e..0000000 +--- a/man2/bdflush.2 ++++ /dev/null +@@ -1,133 +0,0 @@ +-.\" Copyright (c) 1995 Michael Chastain (mec@shell.portal.com), 15 April 1995. +-.\" +-.\" %%%LICENSE_START(GPLv2+_DOC_FULL) +-.\" This is free documentation; you can redistribute it and/or +-.\" modify it under the terms of the GNU General Public License as +-.\" published by the Free Software Foundation; either version 2 of +-.\" the License, or (at your option) any later version. +-.\" +-.\" The GNU General Public License's references to "object code" +-.\" and "executables" are to be interpreted as the output of any +-.\" document formatting or typesetting system, including +-.\" intermediate and printed output. +-.\" +-.\" This manual is distributed in the hope that it will be useful, +-.\" but WITHOUT ANY WARRANTY; without even the implied warranty of +-.\" MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +-.\" GNU General Public License for more details. +-.\" +-.\" You should have received a copy of the GNU General Public +-.\" License along with this manual; if not, see +-.\" . +-.\" %%%LICENSE_END +-.\" +-.\" Modified 1997-01-31 by Eric S. Raymond +-.\" Modified 2004-06-17 by Michael Kerrisk +-.\" +-.TH BDFLUSH 2 2016-10-08 "Linux" "Linux Programmer's Manual" +-.SH NAME +-bdflush \- start, flush, or tune buffer-dirty-flush daemon +-.SH SYNOPSIS +-.nf +-.B #include +-.PP +-.BI "int bdflush(int " func ", long *" address ); +-.BI "int bdflush(int " func ", long " data ); +-.fi +-.SH DESCRIPTION +-.IR Note : +-Since Linux 2.6, +-.\" As noted in a changes in the 2.5.12 source +-this system call is deprecated and does nothing. +-It is likely to disappear altogether in a future kernel release. +-Nowadays, the task performed by +-.BR bdflush () +-is handled by the kernel +-.I pdflush +-thread. +-.PP +-.BR bdflush () +-starts, flushes, or tunes the buffer-dirty-flush daemon. +-Only a privileged process (one with the +-.B CAP_SYS_ADMIN +-capability) may call +-.BR bdflush (). +-.PP +-If +-.I func +-is negative or 0, and no daemon has been started, then +-.BR bdflush () +-enters the daemon code and never returns. +-.PP +-If +-.I func +-is 1, +-some dirty buffers are written to disk. +-.PP +-If +-.I func +-is 2 or more and is even (low bit is 0), then +-.I address +-is the address of a long word, +-and the tuning parameter numbered +-.RI "(" "func" "\-2)/2" +-is returned to the caller in that address. +-.PP +-If +-.I func +-is 3 or more and is odd (low bit is 1), then +-.I data +-is a long word, +-and the kernel sets tuning parameter numbered +-.RI "(" "func" "\-3)/2" +-to that value. +-.PP +-The set of parameters, their values, and their valid ranges +-are defined in the Linux kernel source file +-.IR fs/buffer.c . +-.SH RETURN VALUE +-If +-.I func +-is negative or 0 and the daemon successfully starts, +-.BR bdflush () +-never returns. +-Otherwise, the return value is 0 on success and \-1 on failure, with +-.I errno +-set to indicate the error. +-.SH ERRORS +-.TP +-.B EBUSY +-An attempt was made to enter the daemon code after +-another process has already entered. +-.TP +-.B EFAULT +-.I address +-points outside your accessible address space. +-.TP +-.B EINVAL +-An attempt was made to read or write an invalid parameter number, +-or to write an invalid value to a parameter. +-.TP +-.B EPERM +-Caller does not have the +-.B CAP_SYS_ADMIN +-capability. +-.SH VERSIONS +-Since version 2.23, glibc no longer supports this obsolete system call. +-.SH CONFORMING TO +-.BR bdflush () +-is Linux-specific and should not be used in programs +-intended to be portable. +-.SH SEE ALSO +-.BR sync (1), +-.BR fsync (2), +-.BR sync (2) +-.SH COLOPHON +-This page is part of release 4.15 of the Linux +-.I man-pages +-project. +-A description of the project, +-information about reporting bugs, +-and the latest version of this page, +-can be found at +-\%https://www.kernel.org/doc/man\-pages/. +diff --git a/man2/chmod.2 b/man2/chmod.2 +index 5c55553..9637954 100644 +--- a/man2/chmod.2 ++++ b/man2/chmod.2 +@@ -91,6 +91,11 @@ _ATFILE_SOURCE + .PD + .ad + .SH DESCRIPTION ++.BR chmod () ++system call is DEPRECATED, use ++.BR fchmodat () ++instead!!! ++.PP + The + .BR chmod () + and +diff --git a/man2/chown.2 b/man2/chown.2 +index ef358e0..b917e5c 100644 +--- a/man2/chown.2 ++++ b/man2/chown.2 +@@ -83,6 +83,13 @@ _ATFILE_SOURCE + .ad + .PD + .SH DESCRIPTION ++.BR chown () ++and ++.BR lchown () ++system calls are DEPRECATED, use ++.BR fchownat () ++instead!!! ++.PP + These system calls change the owner and group of a file. + The + .BR chown (), +diff --git a/man2/clone.2 b/man2/clone.2 +index 20ead6d..62bb4e6 100644 +--- a/man2/clone.2 ++++ b/man2/clone.2 +@@ -1206,6 +1206,27 @@ On i386, + .BR clone () + should not be called through vsyscall, but directly through + .IR "int $0x80" . ++ ++.BR clone() ++replaces ++.BR fork (2) ++and ++.BR vfork (2) ++system calls. ++A call to ++.BR fork (2) ++is equivalent to a call to ++.BR clone () ++specifying ++.I flags ++as just SIGCHLD. ++A call to ++.BR vfork (2) ++is equivalent to calling ++.BR clone () ++with ++.I flags ++specified as: CLONE_VM | CLONE_VFORK | SIGCHLD. + .SH BUGS + GNU C library versions 2.3.4 up to and including 2.24 + contained a wrapper function for +diff --git a/man2/dup.2 b/man2/dup.2 +index 1829b5e..6782677 100644 +--- a/man2/dup.2 ++++ b/man2/dup.2 +@@ -51,6 +51,13 @@ dup, dup2, dup3 \- duplicate a file descriptor + .BI "int dup3(int " oldfd ", int " newfd ", int " flags ); + .fi + .SH DESCRIPTION ++.BR dup2 () ++system call is DEPRECATED, use ++.BR dup3 () ++with ++.I flags ++set to 0 instead!!! ++.PP + The + .BR dup () + system call creates a copy of the file descriptor +diff --git a/man2/epoll_create.2 b/man2/epoll_create.2 +index 2bc253d..64143d6 100644 +--- a/man2/epoll_create.2 ++++ b/man2/epoll_create.2 +@@ -33,6 +33,11 @@ epoll_create, epoll_create1 \- open an epoll file descriptor + .fi + .SH DESCRIPTION + .BR epoll_create () ++system call is DEPRECATED, use ++.BR epoll_create1 () ++instead!!! ++.PP ++.BR epoll_create () + creates a new + .BR epoll (7) + instance. +diff --git a/man2/epoll_wait.2 b/man2/epoll_wait.2 +index 5edf20e..c3793ef 100644 +--- a/man2/epoll_wait.2 ++++ b/man2/epoll_wait.2 +@@ -33,6 +33,11 @@ epoll_wait, epoll_pwait \- wait for an I/O event on an epoll file descriptor + .BI " const sigset_t *" sigmask ); + .fi + .SH DESCRIPTION ++.BR epoll_wait () ++system call is DEPRECATED, use ++.BR epoll_pwait () ++instead!!! ++.PP + The + .BR epoll_wait () + system call waits for events on the +diff --git a/man2/eventfd.2 b/man2/eventfd.2 +index de2461f..0d06430 100644 +--- a/man2/eventfd.2 ++++ b/man2/eventfd.2 +@@ -28,6 +28,11 @@ eventfd \- create a file descriptor for event notification + .BI "int eventfd(unsigned int " initval ", int " flags ); + .SH DESCRIPTION + .BR eventfd () ++system call is DEPRECATED, use ++.BR eventfd2 () ++instead!!! ++.PP ++.BR eventfd () + creates an "eventfd object" that can be used as + an event wait/notify mechanism by user-space applications, + and by the kernel to notify user-space applications of events. +diff --git a/man2/fork.2 b/man2/fork.2 +deleted file mode 100644 +index c217a3a..0000000 +--- a/man2/fork.2 ++++ /dev/null +@@ -1,337 +0,0 @@ +-.\" Copyright (C) 2006 Michael Kerrisk +-.\" A few fragments remain from an earlier (1992) page by +-.\" Drew Eckhardt (drew@cs.colorado.edu), +-.\" +-.\" %%%LICENSE_START(VERBATIM) +-.\" Permission is granted to make and distribute verbatim copies of this +-.\" manual provided the copyright notice and this permission notice are +-.\" preserved on all copies. +-.\" +-.\" Permission is granted to copy and distribute modified versions of this +-.\" manual under the conditions for verbatim copying, provided that the +-.\" entire resulting derived work is distributed under the terms of a +-.\" permission notice identical to this one. +-.\" +-.\" Since the Linux kernel and libraries are constantly changing, this +-.\" manual page may be incorrect or out-of-date. The author(s) assume no +-.\" responsibility for errors or omissions, or for damages resulting from +-.\" the use of the information contained herein. The author(s) may not +-.\" have taken the same level of care in the production of this manual, +-.\" which is licensed free of charge, as they might when working +-.\" professionally. +-.\" +-.\" Formatted or processed versions of this manual, if unaccompanied by +-.\" the source, must acknowledge the copyright and authors of this work. +-.\" %%%LICENSE_END +-.\" +-.\" Modified by Michael Haardt (michael@moria.de) +-.\" Modified Sat Jul 24 13:22:07 1993 by Rik Faith (faith@cs.unc.edu) +-.\" Modified 21 Aug 1994 by Michael Chastain (mec@shell.portal.com): +-.\" Referenced 'clone(2)'. +-.\" Modified 1995-06-10, 1996-04-18, 1999-11-01, 2000-12-24 +-.\" by Andries Brouwer (aeb@cwi.nl) +-.\" Modified, 27 May 2004, Michael Kerrisk +-.\" Added notes on capability requirements +-.\" 2006-09-04, Michael Kerrisk +-.\" Greatly expanded, to describe all attributes that differ +-.\" parent and child. +-.\" +-.TH FORK 2 2017-09-15 "Linux" "Linux Programmer's Manual" +-.SH NAME +-fork \- create a child process +-.SH SYNOPSIS +-.B #include +-.br +-.B #include +-.PP +-.B pid_t fork(void); +-.SH DESCRIPTION +-.BR fork () +-creates a new process by duplicating the calling process. +-The new process is referred to as the +-.I child +-process. +-The calling process is referred to as the +-.I parent +-process. +-.PP +-The child process and the parent process run in separate memory spaces. +-At the time of +-.BR fork () +-both memory spaces have the same content. +-Memory writes, file mappings +-.RB ( mmap (2)), +-and unmappings +-.RB ( munmap (2)) +-performed by one of the processes do not affect the other. +-.PP +-The child process is an exact duplicate of the parent +-process except for the following points: +-.IP * 3 +-The child has its own unique process ID, +-and this PID does not match the ID of any existing process group +-.RB ( setpgid (2)) +-or session. +-.IP * +-The child's parent process ID is the same as the parent's process ID. +-.IP * +-The child does not inherit its parent's memory locks +-.RB ( mlock (2), +-.BR mlockall (2)). +-.IP * +-Process resource utilizations +-.RB ( getrusage (2)) +-and CPU time counters +-.RB ( times (2)) +-are reset to zero in the child. +-.IP * +-The child's set of pending signals is initially empty +-.RB ( sigpending (2)). +-.IP * +-The child does not inherit semaphore adjustments from its parent +-.RB ( semop (2)). +-.IP * +-The child does not inherit process-associated record locks from its parent +-.RB ( fcntl (2)). +-(On the other hand, it does inherit +-.BR fcntl (2) +-open file description locks and +-.BR flock (2) +-locks from its parent.) +-.IP * +-The child does not inherit timers from its parent +-.RB ( setitimer (2), +-.BR alarm (2), +-.BR timer_create (2)). +-.IP * +-The child does not inherit outstanding asynchronous I/O operations +-from its parent +-.RB ( aio_read (3), +-.BR aio_write (3)), +-nor does it inherit any asynchronous I/O contexts from its parent (see +-.BR io_setup (2)). +-.PP +-The process attributes in the preceding list are all specified +-in POSIX.1. +-The parent and child also differ with respect to the following +-Linux-specific process attributes: +-.IP * 3 +-The child does not inherit directory change notifications (dnotify) +-from its parent +-(see the description of +-.B F_NOTIFY +-in +-.BR fcntl (2)). +-.IP * +-The +-.BR prctl (2) +-.B PR_SET_PDEATHSIG +-setting is reset so that the child does not receive a signal +-when its parent terminates. +-.IP * +-The default timer slack value is set to the parent's +-current timer slack value. +-See the description of +-.BR PR_SET_TIMERSLACK +-in +-.BR prctl (2). +-.IP * +-Memory mappings that have been marked with the +-.BR madvise (2) +-.B MADV_DONTFORK +-flag are not inherited across a +-.BR fork (). +-.IP * +-Memory in address ranges that have been marked with the +-.BR madvise (2) +-.B MADV_WIPEONFORK +-flag is zeroed in the child after a +-.BR fork (). +-(The +-.B MADV_WIPEONFORK +-setting remains in place for those address ranges in the child.) +-.IP * +-The termination signal of the child is always +-.B SIGCHLD +-(see +-.BR clone (2)). +-.IP * +-The port access permission bits set by +-.BR ioperm (2) +-are not inherited by the child; +-the child must turn on any bits that it requires using +-.BR ioperm (2). +-.PP +-Note the following further points: +-.IP * 3 +-The child process is created with a single thread\(emthe +-one that called +-.BR fork (). +-The entire virtual address space of the parent is replicated in the child, +-including the states of mutexes, condition variables, +-and other pthreads objects; the use of +-.BR pthread_atfork (3) +-may be helpful for dealing with problems that this can cause. +-.IP * +-After a +-.BR fork () +-in a multithreaded program, +-the child can safely call only async-signal-safe functions (see +-.BR signal-safety (7)) +-until such time as it calls +-.BR execve (2). +-.IP * +-The child inherits copies of the parent's set of open file descriptors. +-Each file descriptor in the child refers to the same +-open file description (see +-.BR open (2)) +-as the corresponding file descriptor in the parent. +-This means that the two file descriptors share open file status flags, +-file offset, +-and signal-driven I/O attributes (see the description of +-.B F_SETOWN +-and +-.B F_SETSIG +-in +-.BR fcntl (2)). +-.IP * +-The child inherits copies of the parent's set of open message +-queue descriptors (see +-.BR mq_overview (7)). +-Each file descriptor in the child refers to the same +-open message queue description +-as the corresponding file descriptor in the parent. +-This means that the two file descriptors share the same flags +-.RI ( mq_flags ). +-.IP * +-The child inherits copies of the parent's set of open directory streams (see +-.BR opendir (3)). +-POSIX.1 says that the corresponding directory streams +-in the parent and child +-.I may +-share the directory stream positioning; +-on Linux/glibc they do not. +-.SH RETURN VALUE +-On success, the PID of the child process is returned in the parent, +-and 0 is returned in the child. +-On failure, \-1 is returned in the parent, +-no child process is created, and +-.I errno +-is set appropriately. +-.SH ERRORS +-.TP +-.B EAGAIN +-.\" NOTE! The following should match the description in pthread_create(3) +-A system-imposed limit on the number of threads was encountered. +-There are a number of limits that may trigger this error: +-.RS +-.IP * 3 +-the +-.BR RLIMIT_NPROC +-soft resource limit (set via +-.BR setrlimit (2)), +-which limits the number of processes and threads for a real user ID, +-was reached; +-.IP * +-the kernel's system-wide limit on the number of processes and threads, +-.IR /proc/sys/kernel/threads-max , +-was reached (see +-.BR proc (5)); +-.IP * +-the maximum number of PIDs, +-.IR /proc/sys/kernel/pid_max , +-was reached (see +-.BR proc (5)); +-or +-.IP * +-the PID limit +-.RI ( pids.max ) +-imposed by the cgroup "process number" (PIDs) controller was reached. +-.RE +-.TP +-.B EAGAIN +-The caller is operating under the +-.BR SCHED_DEADLINE +-scheduling policy and does not have the reset-on-fork flag set. +-See +-.BR sched (7). +-.TP +-.B ENOMEM +-.BR fork () +-failed to allocate the necessary kernel structures because memory is tight. +-.TP +-.B ENOMEM +-An attempt was made to create a child process in a PID namespace +-whose "init" process has terminated. +-See +-.BR pid_namespaces (7). +-.TP +-.B ENOSYS +-.BR fork () +-is not supported on this platform (for example, +-.\" e.g., arm (optionally), blackfin, c6x, frv, h8300, microblaze, xtensa +-hardware without a Memory-Management Unit). +-.TP +-.BR ERESTARTNOINTR " (since Linux 2.6.17)" +-.\" commit 4a2c7a7837da1b91468e50426066d988050e4d56 +-System call was interrupted by a signal and will be restarted. +-(This can be seen only during a trace.) +-.SH CONFORMING TO +-POSIX.1-2001, POSIX.1-2008, SVr4, 4.3BSD. +-.SH NOTES +-.PP +-Under Linux, +-.BR fork () +-is implemented using copy-on-write pages, so the only penalty that it incurs +-is the time and memory required to duplicate the parent's page tables, +-and to create a unique task structure for the child. +-.SS C library/kernel differences +-Since version 2.3.3, +-.\" nptl/sysdeps/unix/sysv/linux/fork.c +-rather than invoking the kernel's +-.BR fork () +-system call, +-the glibc +-.BR fork () +-wrapper that is provided as part of the +-NPTL threading implementation invokes +-.BR clone (2) +-with flags that provide the same effect as the traditional system call. +-(A call to +-.BR fork () +-is equivalent to a call to +-.BR clone (2) +-specifying +-.I flags +-as just +-.BR SIGCHLD .) +-The glibc wrapper invokes any fork handlers that have been +-established using +-.BR pthread_atfork (3). +-.\" and does some magic to ensure that getpid(2) returns the right value. +-.SH EXAMPLE +-See +-.BR pipe (2) +-and +-.BR wait (2). +-.SH SEE ALSO +-.BR clone (2), +-.BR execve (2), +-.BR exit (2), +-.BR setrlimit (2), +-.BR unshare (2), +-.BR vfork (2), +-.BR wait (2), +-.BR daemon (3), +-.BR pthread_atfork (3), +-.BR capabilities (7), +-.BR credentials (7) +-.SH COLOPHON +-This page is part of release 4.15 of the Linux +-.I man-pages +-project. +-A description of the project, +-information about reporting bugs, +-and the latest version of this page, +-can be found at +-\%https://www.kernel.org/doc/man\-pages/. +diff --git a/man2/futimesat.2 b/man2/futimesat.2 +deleted file mode 100644 +index 8991c98..0000000 +--- a/man2/futimesat.2 ++++ /dev/null +@@ -1,142 +0,0 @@ +-.\" This manpage is Copyright (C) 2006, Michael Kerrisk +-.\" +-.\" %%%LICENSE_START(VERBATIM) +-.\" Permission is granted to make and distribute verbatim copies of this +-.\" manual provided the copyright notice and this permission notice are +-.\" preserved on all copies. +-.\" +-.\" Permission is granted to copy and distribute modified versions of this +-.\" manual under the conditions for verbatim copying, provided that the +-.\" entire resulting derived work is distributed under the terms of a +-.\" permission notice identical to this one. +-.\" +-.\" Since the Linux kernel and libraries are constantly changing, this +-.\" manual page may be incorrect or out-of-date. The author(s) assume no +-.\" responsibility for errors or omissions, or for damages resulting from +-.\" the use of the information contained herein. The author(s) may not +-.\" have taken the same level of care in the production of this manual, +-.\" which is licensed free of charge, as they might when working +-.\" professionally. +-.\" +-.\" Formatted or processed versions of this manual, if unaccompanied by +-.\" the source, must acknowledge the copyright and authors of this work. +-.\" %%%LICENSE_END +-.\" +-.TH FUTIMESAT 2 2017-09-15 "Linux" "Linux Programmer's Manual" +-.SH NAME +-futimesat \- change timestamps of a file relative to a \ +-directory file descriptor +-.SH SYNOPSIS +-.nf +-.B #include /* Definition of AT_* constants */ +-.B #include +-.PP +-.BI "int futimesat(int " dirfd ", const char *" pathname , +-.BI " const struct timeval " times [2]); +-.fi +-.PP +-.in -4n +-Feature Test Macro Requirements for glibc (see +-.BR feature_test_macros (7)): +-.in +-.PP +-.BR futimesat (): +-_GNU_SOURCE +-.SH DESCRIPTION +-This system call is obsolete. +-Use +-.BR utimensat (2) +-instead. +-.PP +-The +-.BR futimesat () +-system call operates in exactly the same way as +-.BR utimes (2), +-except for the differences described in this manual page. +-.PP +-If the pathname given in +-.I pathname +-is relative, then it is interpreted relative to the directory +-referred to by the file descriptor +-.I dirfd +-(rather than relative to the current working directory of +-the calling process, as is done by +-.BR utimes (2) +-for a relative pathname). +-.PP +-If +-.I pathname +-is relative and +-.I dirfd +-is the special value +-.BR AT_FDCWD , +-then +-.I pathname +-is interpreted relative to the current working +-directory of the calling process (like +-.BR utimes (2)). +-.PP +-If +-.I pathname +-is absolute, then +-.I dirfd +-is ignored. +-.SH RETURN VALUE +-On success, +-.BR futimesat () +-returns a 0. +-On error, \-1 is returned and +-.I errno +-is set to indicate the error. +-.SH ERRORS +-The same errors that occur for +-.BR utimes (2) +-can also occur for +-.BR futimesat (). +-The following additional errors can occur for +-.BR futimesat (): +-.TP +-.B EBADF +-.I dirfd +-is not a valid file descriptor. +-.TP +-.B ENOTDIR +-.I pathname +-is relative and +-.I dirfd +-is a file descriptor referring to a file other than a directory. +-.SH VERSIONS +-.BR futimesat () +-was added to Linux in kernel 2.6.16; +-library support was added to glibc in version 2.4. +-.SH CONFORMING TO +-This system call is nonstandard. +-It was implemented from a specification that was proposed for POSIX.1, +-but that specification was replaced by the one for +-.BR utimensat (2). +-.PP +-A similar system call exists on Solaris. +-.SH NOTES +-.SS Glibc notes +-If +-.I pathname +-is NULL, then the glibc +-.BR futimesat () +-wrapper function updates the times for the file referred to by +-.IR dirfd . +-.\" The Solaris futimesat() also has this strangeness. +-.SH SEE ALSO +-.BR stat (2), +-.BR utimensat (2), +-.BR utimes (2), +-.BR futimes (3), +-.BR path_resolution (7) +-.SH COLOPHON +-This page is part of release 4.15 of the Linux +-.I man-pages +-project. +-A description of the project, +-information about reporting bugs, +-and the latest version of this page, +-can be found at +-\%https://www.kernel.org/doc/man\-pages/. +diff --git a/man2/getdents.2 b/man2/getdents.2 +index 73d57cc..0a650fe 100644 +--- a/man2/getdents.2 ++++ b/man2/getdents.2 +@@ -42,6 +42,13 @@ getdents, getdents64 \- get directory entries + .IR Note : + There are no glibc wrappers for these system calls; see NOTES. + .SH DESCRIPTION ++.BR getdents () ++system call is DEPRECATED, use ++.BR getdents64 () ++or ++.BR readdir (3) ++instead!!! ++.PP + These are not the interfaces you are interested in. + Look at + .BR readdir (3) +diff --git a/man2/inotify_init.2 b/man2/inotify_init.2 +index cf95d03..b55979e 100644 +--- a/man2/inotify_init.2 ++++ b/man2/inotify_init.2 +@@ -41,6 +41,11 @@ For an overview of the inotify API, see + .BR inotify (7). + .PP + .BR inotify_init () ++system call is DEPRECATED, use ++.BR inotify_init1 () ++instead!!! ++.PP ++.BR inotify_init () + initializes a new inotify instance and returns a file descriptor associated + with a new inotify event queue. + .PP +diff --git a/man2/link.2 b/man2/link.2 +index 0742aed..442115c 100644 +--- a/man2/link.2 ++++ b/man2/link.2 +@@ -65,6 +65,11 @@ _ATFILE_SOURCE + .PD + .SH DESCRIPTION + .BR link () ++system call is DEPRECATED, use ++.BR linkat () ++instead!!! ++.PP ++.BR link () + creates a new link (also known as a hard link) to an existing file. + .PP + If +diff --git a/man2/mkdir.2 b/man2/mkdir.2 +index 28839bd..9a2f151 100644 +--- a/man2/mkdir.2 ++++ b/man2/mkdir.2 +@@ -45,6 +45,11 @@ _ATFILE_SOURCE + .PD + .SH DESCRIPTION + .BR mkdir () ++system call is DEPRECATED, use ++.BR mkdirat () ++instead!!! ++.PP ++.BR mkdir () + attempts to create a directory named + .IR pathname . + .PP +diff --git a/man2/mknod.2 b/man2/mknod.2 +index 82134da..49ef104 100644 +--- a/man2/mknod.2 ++++ b/man2/mknod.2 +@@ -46,6 +46,11 @@ _XOPEN_SOURCE\ >=\ 500 + .RE + .ad + .SH DESCRIPTION ++.BR mknod () ++system call is DEPRECATED, use ++.BR mknodat () ++instead!!! ++.PP + The system call + .BR mknod () + creates a filesystem node (file, device special file, or +diff --git a/man2/open.2 b/man2/open.2 +index 0f9a9e7..2eec9c6 100644 +--- a/man2/open.2 ++++ b/man2/open.2 +@@ -86,6 +86,13 @@ _ATFILE_SOURCE + .ad + .PD + .SH DESCRIPTION ++.BR open () ++and ++.BR creat () ++system calls are DEPRECATED, use ++.BR openat () ++instead!!! ++.PP + The + .BR open () + system call opens the file specified by +diff --git a/man2/pause.2 b/man2/pause.2 +deleted file mode 100644 +index 1a3aa54..0000000 +--- a/man2/pause.2 ++++ /dev/null +@@ -1,72 +0,0 @@ +-.\" Copyright (c) 1992 Drew Eckhardt (drew@cs.colorado.edu), March 28, 1992 +-.\" +-.\" %%%LICENSE_START(VERBATIM) +-.\" Permission is granted to make and distribute verbatim copies of this +-.\" manual provided the copyright notice and this permission notice are +-.\" preserved on all copies. +-.\" +-.\" Permission is granted to copy and distribute modified versions of this +-.\" manual under the conditions for verbatim copying, provided that the +-.\" entire resulting derived work is distributed under the terms of a +-.\" permission notice identical to this one. +-.\" +-.\" Since the Linux kernel and libraries are constantly changing, this +-.\" manual page may be incorrect or out-of-date. The author(s) assume no +-.\" responsibility for errors or omissions, or for damages resulting from +-.\" the use of the information contained herein. The author(s) may not +-.\" have taken the same level of care in the production of this manual, +-.\" which is licensed free of charge, as they might when working +-.\" professionally. +-.\" +-.\" Formatted or processed versions of this manual, if unaccompanied by +-.\" the source, must acknowledge the copyright and authors of this work. +-.\" %%%LICENSE_END +-.\" +-.\" Modified by Michael Haardt (michael@moria.de) +-.\" Modified Sat Jul 24 14:48:00 1993 by Rik Faith (faith@cs.unc.edu) +-.\" Modified 1995 by Mike Battersby (mib@deakin.edu.au) +-.\" Modified 2000 by aeb, following Michael Kerrisk +-.\" +-.TH PAUSE 2 2015-08-08 "Linux" "Linux Programmer's Manual" +-.SH NAME +-pause \- wait for signal +-.SH SYNOPSIS +-.B #include +-.PP +-.B int pause(void); +-.SH DESCRIPTION +-.BR pause () +-causes the calling process (or thread) to sleep +-until a signal is delivered that either terminates the process or causes +-the invocation of a signal-catching function. +-.SH RETURN VALUE +-.BR pause () +-returns only when a signal was caught and the +-signal-catching function returned. +-In this case, +-.BR pause () +-returns \-1, and +-.I errno +-is set to +-.\" .BR ERESTARTNOHAND . +-.BR EINTR . +-.SH ERRORS +-.TP +-.B EINTR +-a signal was caught and the signal-catching function returned. +-.SH CONFORMING TO +-POSIX.1-2001, POSIX.1-2008, SVr4, 4.3BSD. +-.SH SEE ALSO +-.BR kill (2), +-.BR select (2), +-.BR signal (2), +-.BR sigsuspend (2) +-.SH COLOPHON +-This page is part of release 4.15 of the Linux +-.I man-pages +-project. +-A description of the project, +-information about reporting bugs, +-and the latest version of this page, +-can be found at +-\%https://www.kernel.org/doc/man\-pages/. +diff --git a/man2/pipe.2 b/man2/pipe.2 +index 1f2e565..baffbee 100644 +--- a/man2/pipe.2 ++++ b/man2/pipe.2 +@@ -50,6 +50,11 @@ pipe, pipe2 \- create pipe + .fi + .SH DESCRIPTION + .BR pipe () ++system call is DEPRECATED, use ++.BR pipe2 () ++instead!!! ++.PP ++.BR pipe () + creates a pipe, a unidirectional data channel that + can be used for interprocess communication. + The array +diff --git a/man2/poll.2 b/man2/poll.2 +index ea4fed9..8c7fb37 100644 +--- a/man2/poll.2 ++++ b/man2/poll.2 +@@ -46,6 +46,11 @@ poll, ppoll \- wait for some event on a file descriptor + .fi + .SH DESCRIPTION + .BR poll () ++system call is DEPRECATED, use ++.BR ppoll () ++instead!!! ++.PP ++.BR poll () + performs a similar task to + .BR select (2): + it waits for one of a set of file descriptors to become ready +diff --git a/man2/readlink.2 b/man2/readlink.2 +index 8a72a37..9b00999 100644 +--- a/man2/readlink.2 ++++ b/man2/readlink.2 +@@ -86,6 +86,11 @@ _ATFILE_SOURCE + .PD + .SH DESCRIPTION + .BR readlink () ++system call is DEPRECATED, use ++.BR readlinkat () ++instead!!! ++.PP ++.BR readlink () + places the contents of the symbolic link + .I pathname + in the buffer +diff --git a/man2/recv.2 b/man2/recv.2 +index c6d4c86..3400ea7 100644 +--- a/man2/recv.2 ++++ b/man2/recv.2 +@@ -57,6 +57,13 @@ recv, recvfrom, recvmsg \- receive a message from a socket + .BI "ssize_t recvmsg(int " sockfd ", struct msghdr *" msg ", int " flags ); + .fi + .SH DESCRIPTION ++.BR recv () ++system call is DEPRECATED, use ++.BR recvfrom () ++with a NULL ++.I src_addr ++argument! ++.PP + The + .BR recv (), + .BR recvfrom (), +diff --git a/man2/rename.2 b/man2/rename.2 +index f8b4991..457e081 100644 +--- a/man2/rename.2 ++++ b/man2/rename.2 +@@ -76,6 +76,11 @@ _ATFILE_SOURCE + .PD + .SH DESCRIPTION + .BR rename () ++system call is DEPRECATED, use ++.BR renameat () ++instead!!! ++.PP ++.BR rename () + renames a file, moving it between directories if required. + Any other hard links to the file (as created using + .BR link (2)) +diff --git a/man2/rmdir.2 b/man2/rmdir.2 +deleted file mode 100644 +index 1eff7cd..0000000 +--- a/man2/rmdir.2 ++++ /dev/null +@@ -1,150 +0,0 @@ +-.\" This manpage is Copyright (C) 1992 Drew Eckhardt; +-.\" and Copyright (C) 1993 Michael Haardt, Ian Jackson. +-.\" +-.\" %%%LICENSE_START(VERBATIM) +-.\" Permission is granted to make and distribute verbatim copies of this +-.\" manual provided the copyright notice and this permission notice are +-.\" preserved on all copies. +-.\" +-.\" Permission is granted to copy and distribute modified versions of this +-.\" manual under the conditions for verbatim copying, provided that the +-.\" entire resulting derived work is distributed under the terms of a +-.\" permission notice identical to this one. +-.\" +-.\" Since the Linux kernel and libraries are constantly changing, this +-.\" manual page may be incorrect or out-of-date. The author(s) assume no +-.\" responsibility for errors or omissions, or for damages resulting from +-.\" the use of the information contained herein. The author(s) may not +-.\" have taken the same level of care in the production of this manual, +-.\" which is licensed free of charge, as they might when working +-.\" professionally. +-.\" +-.\" Formatted or processed versions of this manual, if unaccompanied by +-.\" the source, must acknowledge the copyright and authors of this work. +-.\" %%%LICENSE_END +-.\" +-.\" Modified 1993-07-24 by Rik Faith +-.\" Modified 1997-01-31 by Eric S. Raymond +-.\" Modified 2004-06-23 by Michael Kerrisk +-.\" +-.TH RMDIR 2 2015-08-08 "Linux" "Linux Programmer's Manual" +-.SH NAME +-rmdir \- delete a directory +-.SH SYNOPSIS +-.B #include +-.PP +-.BI "int rmdir(const char *" pathname ); +-.SH DESCRIPTION +-.BR rmdir () +-deletes a directory, which must be empty. +-.SH RETURN VALUE +-On success, zero is returned. +-On error, \-1 is returned, and +-.I errno +-is set appropriately. +-.SH ERRORS +-.TP +-.B EACCES +-Write access to the directory containing +-.I pathname +-was not allowed, or one of the directories in the path prefix of +-.I pathname +-did not allow search permission. +-(See also +-.BR path_resolution (7). +-.TP +-.B EBUSY +-.I pathname +-is currently in use by the system or some process that prevents its +-removal. +-On Linux, this means +-.I pathname +-is currently used as a mount point +-or is the root directory of the calling process. +-.TP +-.B EFAULT +-.IR pathname " points outside your accessible address space." +-.TP +-.B EINVAL +-.I pathname +-has +-.I . +-as last component. +-.TP +-.B ELOOP +-Too many symbolic links were encountered in resolving +-.IR pathname . +-.TP +-.B ENAMETOOLONG +-.IR pathname " was too long." +-.TP +-.B ENOENT +-A directory component in +-.I pathname +-does not exist or is a dangling symbolic link. +-.TP +-.B ENOMEM +-Insufficient kernel memory was available. +-.TP +-.B ENOTDIR +-.IR pathname , +-or a component used as a directory in +-.IR pathname , +-is not, in fact, a directory. +-.TP +-.B ENOTEMPTY +-.I pathname +-contains entries other than +-.IR . " and " .. " ;" +-or, +-.I pathname +-has +-.I .. +-as its final component. +-POSIX.1 also allows +-.\" POSIX.1-2001, POSIX.1-2008 +-.B EEXIST +-for this condition. +-.TP +-.B EPERM +-The directory containing +-.I pathname +-has the sticky bit +-.RB ( S_ISVTX ) +-set and the process's effective user ID is neither the user ID +-of the file to be deleted nor that of the directory containing it, +-and the process is not privileged (Linux: does not have the +-.B CAP_FOWNER +-capability). +-.TP +-.B EPERM +-The filesystem containing +-.I pathname +-does not support the removal of directories. +-.TP +-.B EROFS +-.I pathname +-refers to a directory on a read-only filesystem. +-.SH CONFORMING TO +-POSIX.1-2001, POSIX.1-2008, SVr4, 4.3BSD. +-.SH BUGS +-Infelicities in the protocol underlying NFS can cause the unexpected +-disappearance of directories which are still being used. +-.SH SEE ALSO +-.BR rm (1), +-.BR rmdir (1), +-.BR chdir (2), +-.BR chmod (2), +-.BR mkdir (2), +-.BR rename (2), +-.BR unlink (2), +-.BR unlinkat (2) +-.SH COLOPHON +-This page is part of release 4.15 of the Linux +-.I man-pages +-project. +-A description of the project, +-information about reporting bugs, +-and the latest version of this page, +-can be found at +-\%https://www.kernel.org/doc/man\-pages/. +diff --git a/man2/select.2 b/man2/select.2 +index c0a3a47..9fce598 100644 +--- a/man2/select.2 ++++ b/man2/select.2 +@@ -73,6 +73,11 @@ Feature Test Macro Requirements for glibc (see + _POSIX_C_SOURCE\ >=\ 200112L + .SH DESCRIPTION + .BR select () ++system call is DEPRECATED, use ++.BR pselect () ++instead!!! ++.PP ++.BR select () + and + .BR pselect () + allow a program to monitor multiple file descriptors, +diff --git a/man2/send.2 b/man2/send.2 +index e0bea6d..e5b4082 100644 +--- a/man2/send.2 ++++ b/man2/send.2 +@@ -56,6 +56,13 @@ send, sendto, sendmsg \- send a message on a socket + ", int " flags ); + .fi + .SH DESCRIPTION ++.BR send () ++system call is DEPRECATED, use ++.BR sendto () ++with a NULL ++.I dest_addr ++instead!!! ++.PP + The system calls + .BR send (), + .BR sendto (), +diff --git a/man2/setpgid.2 b/man2/setpgid.2 +index 6f6b337..3574aed 100644 +--- a/man2/setpgid.2 ++++ b/man2/setpgid.2 +@@ -99,6 +99,11 @@ _XOPEN_SOURCE\ >=\ 500 + .fi + .ad + .SH DESCRIPTION ++.BR getpgrp () ++system call is DEPRECATED, use ++.BR getpgid () ++instead!!! ++.PP + All of these interfaces are available on Linux, + and are used for getting and setting the + process group ID (PGID) of a process. +diff --git a/man2/signalfd.2 b/man2/signalfd.2 +index 90e81ef..10ac204 100644 +--- a/man2/signalfd.2 ++++ b/man2/signalfd.2 +@@ -26,6 +26,11 @@ signalfd \- create a file descriptor for accepting signals + .BI "int signalfd(int " fd ", const sigset_t *" mask ", int " flags ); + .SH DESCRIPTION + .BR signalfd () ++system call is DEPRECATED, use ++.BR signalfd4 () ++instead!!! ++.PP ++.BR signalfd () + creates a file descriptor that can be used to accept signals + targeted at the caller. + This provides an alternative to the use of a signal handler or +diff --git a/man2/symlink.2 b/man2/symlink.2 +index ce0cbe7..78ad595 100644 +--- a/man2/symlink.2 ++++ b/man2/symlink.2 +@@ -74,6 +74,11 @@ _ATFILE_SOURCE + .PD + .SH DESCRIPTION + .BR symlink () ++system call is DEPRECATED, use ++.BR symlinkat () ++instead!!! ++.PP ++.BR symlink () + creates a symbolic link named + .I linkpath + which contains the string +diff --git a/man2/sysctl.2 b/man2/sysctl.2 +deleted file mode 100644 +index 849f1b5..0000000 +--- a/man2/sysctl.2 ++++ /dev/null +@@ -1,190 +0,0 @@ +-.\" Copyright (C) 1996 Andries Brouwer (aeb@cwi.nl) +-.\" +-.\" %%%LICENSE_START(VERBATIM) +-.\" Permission is granted to make and distribute verbatim copies of this +-.\" manual provided the copyright notice and this permission notice are +-.\" preserved on all copies. +-.\" +-.\" Permission is granted to copy and distribute modified versions of this +-.\" manual under the conditions for verbatim copying, provided that the +-.\" entire resulting derived work is distributed under the terms of a +-.\" permission notice identical to this one. +-.\" +-.\" Since the Linux kernel and libraries are constantly changing, this +-.\" manual page may be incorrect or out-of-date. The author(s) assume no +-.\" responsibility for errors or omissions, or for damages resulting from +-.\" the use of the information contained herein. The author(s) may not +-.\" have taken the same level of care in the production of this manual, +-.\" which is licensed free of charge, as they might when working +-.\" professionally. +-.\" +-.\" Formatted or processed versions of this manual, if unaccompanied by +-.\" the source, must acknowledge the copyright and authors of this work. +-.\" %%%LICENSE_END +-.\" +-.\" Written 11 April 1996 by Andries Brouwer +-.\" 960412: Added comments from Stephen Tweedie +-.\" Modified Tue Oct 22 22:28:41 1996 by Eric S. Raymond +-.\" Modified Mon Jan 5 20:31:04 1998 by aeb. +-.\" +-.TH SYSCTL 2 2017-09-15 "Linux" "Linux Programmer's Manual" +-.SH NAME +-sysctl \- read/write system parameters +-.SH SYNOPSIS +-.nf +-.B #include +-.B #include +-.PP +-.BI "int _sysctl(struct __sysctl_args *" args ); +-.fi +-.PP +-.IR Note : +-There is no glibc wrapper for this system call; see NOTES. +-.SH DESCRIPTION +-.B Do not use this system call! +-See NOTES. +-.PP +-The +-.BR _sysctl () +-call reads and/or writes kernel parameters. +-For example, the hostname, +-or the maximum number of open files. +-The argument has the form +-.PP +-.in +4n +-.EX +-struct __sysctl_args { +- int *name; /* integer vector describing variable */ +- int nlen; /* length of this vector */ +- void *oldval; /* 0 or address where to store old value */ +- size_t *oldlenp; /* available room for old value, +- overwritten by actual size of old value */ +- void *newval; /* 0 or address of new value */ +- size_t newlen; /* size of new value */ +-}; +-.EE +-.in +-.PP +-This call does a search in a tree structure, possibly resembling +-a directory tree under +-.IR /proc/sys , +-and if the requested item is found calls some appropriate routine +-to read or modify the value. +-.SH RETURN VALUE +-Upon successful completion, +-.BR _sysctl () +-returns 0. +-Otherwise, a value of \-1 is returned and +-.I errno +-is set to indicate the error. +-.SH ERRORS +-.TP +-.BR EACCES ", " EPERM +-No search permission for one of the encountered "directories", +-or no read permission where +-.I oldval +-was nonzero, or no write permission where +-.I newval +-was nonzero. +-.TP +-.B EFAULT +-The invocation asked for the previous value by setting +-.I oldval +-non-NULL, but allowed zero room in +-.IR oldlenp . +-.TP +-.B ENOTDIR +-.I name +-was not found. +-.SH CONFORMING TO +-This call is Linux-specific, and should not be used in programs +-intended to be portable. +-A +-.BR sysctl () +-call has been present in Linux since version 1.3.57. +-It originated in +-4.4BSD. +-Only Linux has the +-.I /proc/sys +-mirror, and the object naming schemes differ between Linux and 4.4BSD, +-but the declaration of the +-.BR sysctl () +-function is the same in both. +-.SH NOTES +-Glibc does not provide a wrapper for this system call; call it using +-.BR syscall (2). +-Or rather... +-.I don't +-call it: +-use of this system call has long been discouraged, +-and it is so unloved that +-\fBit is likely to disappear in a future kernel version\fP. +-.\" See http://lwn.net/Articles/247243/ +-Since Linux 2.6.24, +-uses of this system call result in warnings in the kernel log. +-.\" Though comments in suggest that it is needed by old glibc binaries, +-.\" so maybe it's not going away. +-Remove it from your programs now; use the +-.I /proc/sys +-interface instead. +-.PP +-This system call is available only if the kernel was configured with the +-.B CONFIG_SYSCTL_SYSCALL +-option. +-.SH BUGS +-The object names vary between kernel versions, +-making this system call worthless for applications. +-.PP +-Not all available objects are properly documented. +-.PP +-It is not yet possible to change operating system by writing to +-.IR /proc/sys/kernel/ostype . +-.SH EXAMPLE +-.EX +-#define _GNU_SOURCE +-#include +-#include +-#include +-#include +-#include +-#include +- +-int _sysctl(struct __sysctl_args *args ); +- +-#define OSNAMESZ 100 +- +-int +-main(void) +-{ +- struct __sysctl_args args; +- char osname[OSNAMESZ]; +- size_t osnamelth; +- int name[] = { CTL_KERN, KERN_OSTYPE }; +- +- memset(&args, 0, sizeof(struct __sysctl_args)); +- args.name = name; +- args.nlen = sizeof(name)/sizeof(name[0]); +- args.oldval = osname; +- args.oldlenp = &osnamelth; +- +- osnamelth = sizeof(osname); +- +- if (syscall(SYS__sysctl, &args) == \-1) { +- perror("_sysctl"); +- exit(EXIT_FAILURE); +- } +- printf("This machine is running %*s\\n", osnamelth, osname); +- exit(EXIT_SUCCESS); +-} +-.EE +-.SH SEE ALSO +-.BR proc (5) +-.SH COLOPHON +-This page is part of release 4.15 of the Linux +-.I man-pages +-project. +-A description of the project, +-information about reporting bugs, +-and the latest version of this page, +-can be found at +-\%https://www.kernel.org/doc/man\-pages/. +diff --git a/man2/time.2 b/man2/time.2 +deleted file mode 100644 +index 00a9b4d..0000000 +--- a/man2/time.2 ++++ /dev/null +@@ -1,140 +0,0 @@ +-.\" Copyright (c) 1992 Drew Eckhardt (drew@cs.colorado.edu), March 28, 1992 +-.\" +-.\" %%%LICENSE_START(VERBATIM) +-.\" Permission is granted to make and distribute verbatim copies of this +-.\" manual provided the copyright notice and this permission notice are +-.\" preserved on all copies. +-.\" +-.\" Permission is granted to copy and distribute modified versions of this +-.\" manual under the conditions for verbatim copying, provided that the +-.\" entire resulting derived work is distributed under the terms of a +-.\" permission notice identical to this one. +-.\" +-.\" Since the Linux kernel and libraries are constantly changing, this +-.\" manual page may be incorrect or out-of-date. The author(s) assume no +-.\" responsibility for errors or omissions, or for damages resulting from +-.\" the use of the information contained herein. The author(s) may not +-.\" have taken the same level of care in the production of this manual, +-.\" which is licensed free of charge, as they might when working +-.\" professionally. +-.\" +-.\" Formatted or processed versions of this manual, if unaccompanied by +-.\" the source, must acknowledge the copyright and authors of this work. +-.\" %%%LICENSE_END +-.\" +-.\" Modified by Michael Haardt +-.\" Modified Sat Jul 24 14:13:40 1993 by Rik Faith +-.\" Additions by Joseph S. Myers , 970909 +-.\" +-.TH TIME 2 2017-09-15 "Linux" "Linux Programmer's Manual" +-.SH NAME +-time \- get time in seconds +-.SH SYNOPSIS +-.B #include +-.PP +-.BI "time_t time(time_t *" tloc ); +-.SH DESCRIPTION +-.BR time () +-returns the time as the number of seconds since the +-Epoch, 1970-01-01 00:00:00 +0000 (UTC). +-.PP +-If +-.I tloc +-is non-NULL, +-the return value is also stored in the memory pointed to by +-.IR tloc . +-.SH RETURN VALUE +-On success, the value of time in seconds since the Epoch is returned. +-On error, \fI((time_t)\ \-1)\fP is returned, and \fIerrno\fP is set +-appropriately. +-.SH ERRORS +-.TP +-.B EFAULT +-.I tloc +-points outside your accessible address space (but see BUGS). +-.IP +-On systems where the C library +-.BR time () +-wrapper function invokes an implementation provided by the +-.BR vdso (7) +-(so that there is no trap into the kernel), +-an invalid address may instead trigger a +-.B SIGSEGV +-signal. +-.SH CONFORMING TO +-SVr4, 4.3BSD, C89, C99, POSIX.1-2001. +-.\" Under 4.3BSD, this call is obsoleted by +-.\" .BR gettimeofday (2). +-POSIX does not specify any error conditions. +-.SH NOTES +-POSIX.1 defines +-.I seconds since the Epoch +-using a formula that approximates the number of seconds between a +-specified time and the Epoch. +-This formula takes account of the facts that +-all years that are evenly divisible by 4 are leap years, +-but years that are evenly divisible by 100 are not leap years +-unless they are also evenly divisible by 400, +-in which case they are leap years. +-This value is not the same as the actual number of seconds between the time +-and the Epoch, because of leap seconds and because system clocks are not +-required to be synchronized to a standard reference. +-The intention is that the interpretation of seconds since the Epoch values be +-consistent; see POSIX.1-2008 Rationale A.4.15 for further rationale. +-.PP +-On Linux, a call to +-.BR time () +-with +-.I tloc +-specified as NULL cannot fail with the error +-.BR EOVERFLOW , +-even on ABIs where +-.I time_t +-is a signed 32-bit integer and the clock ticks past the time 2**31 +-(2038-01-19 03:14:08 UTC, ignoring leap seconds). +-(POSIX.1 permits, but does not require, the +-.B EOVERFLOW +-error in the case where the seconds since the Epoch will not fit in +-.IR time_t .) +-Instead, the behavior on Linux is undefined when the system time is out of the +-.I time_t +-range. +-Applications intended to run after 2038 should use ABIs with +-.I time_t +-wider than 32 bits. +-.SH BUGS +-Error returns from this system call are indistinguishable from +-successful reports that the time is a few seconds +-.I before +-the Epoch, so the C library wrapper function never sets +-.I errno +-as a result of this call. +-.PP +-The +-.I tloc +-argument is obsolescent and should always be NULL in new code. +-When +-.I tloc +-is NULL, the call cannot fail. +-.\" +-.SS C library/kernel differences +-On some architectures, an implementation of +-.BR time () +-is provided in the +-.BR vdso (7). +-.SH SEE ALSO +-.BR date (1), +-.BR gettimeofday (2), +-.BR ctime (3), +-.BR ftime (3), +-.BR time (7), +-.BR vdso (7) +-.SH COLOPHON +-This page is part of release 4.15 of the Linux +-.I man-pages +-project. +-A description of the project, +-information about reporting bugs, +-and the latest version of this page, +-can be found at +-\%https://www.kernel.org/doc/man\-pages/. +diff --git a/man2/umount.2 b/man2/umount.2 +index 292076c..b43443a 100644 +--- a/man2/umount.2 ++++ b/man2/umount.2 +@@ -40,6 +40,11 @@ umount, umount2 \- unmount filesystem + .fi + .SH DESCRIPTION + .BR umount () ++system call is DEPRECATED, use ++.BR umount2 () ++instead!!! ++.PP ++.BR umount () + and + .BR umount2 () + remove the attachment of the (topmost) filesystem mounted on +diff --git a/man2/unlink.2 b/man2/unlink.2 +index b25b153..93bdb63 100644 +--- a/man2/unlink.2 ++++ b/man2/unlink.2 +@@ -65,6 +65,11 @@ _ATFILE_SOURCE + .PD + .SH DESCRIPTION + .BR unlink () ++system call is DEPRECATED, use ++.BR unlinkat () ++instead!!! ++.PP ++.BR unlink () + deletes a name from the filesystem. + If that name was the + last link to a file and no processes have the file open, the file is +diff --git a/man2/uselib.2 b/man2/uselib.2 +deleted file mode 100644 +index df7bad5..0000000 +--- a/man2/uselib.2 ++++ /dev/null +@@ -1,138 +0,0 @@ +-.\" Copyright (c) 1992 Drew Eckhardt (drew@cs.colorado.edu), March 28, 1992 +-.\" +-.\" %%%LICENSE_START(VERBATIM) +-.\" Permission is granted to make and distribute verbatim copies of this +-.\" manual provided the copyright notice and this permission notice are +-.\" preserved on all copies. +-.\" +-.\" Permission is granted to copy and distribute modified versions of this +-.\" manual under the conditions for verbatim copying, provided that the +-.\" entire resulting derived work is distributed under the terms of a +-.\" permission notice identical to this one. +-.\" +-.\" Since the Linux kernel and libraries are constantly changing, this +-.\" manual page may be incorrect or out-of-date. The author(s) assume no +-.\" responsibility for errors or omissions, or for damages resulting from +-.\" the use of the information contained herein. The author(s) may not +-.\" have taken the same level of care in the production of this manual, +-.\" which is licensed free of charge, as they might when working +-.\" professionally. +-.\" +-.\" Formatted or processed versions of this manual, if unaccompanied by +-.\" the source, must acknowledge the copyright and authors of this work. +-.\" %%%LICENSE_END +-.\" +-.\" Modified by Michael Haardt +-.\" Modified 1993-07-24 by Rik Faith +-.\" Modified 1996-10-22 by Eric S. Raymond +-.\" Modified 2004-06-23 by Michael Kerrisk +-.\" Modified 2005-01-09 by aeb +-.\" +-.TH USELIB 2 2017-09-15 "Linux" "Linux Programmer's Manual" +-.SH NAME +-uselib \- load shared library +-.SH SYNOPSIS +-.B #include +-.PP +-.BI "int uselib(const char *" library ); +-.PP +-.IR Note : +-No declaration of this system call is provided in glibc headers; see NOTES. +-.SH DESCRIPTION +-The system call +-.BR uselib () +-serves to load +-a shared library to be used by the calling process. +-It is given a pathname. +-The address where to load is found +-in the library itself. +-The library can have any recognized +-binary format. +-.SH RETURN VALUE +-On success, zero is returned. +-On error, \-1 is returned, and +-.I errno +-is set appropriately. +-.SH ERRORS +-In addition to all of the error codes returned by +-.BR open (2) +-and +-.BR mmap (2), +-the following may also be returned: +-.TP +-.B EACCES +-The library specified by +-.I library +-does not have read or execute permission, or the caller does not have +-search permission for one of the directories in the path prefix. +-(See also +-.BR path_resolution (7).) +-.TP +-.B ENFILE +-The system-wide limit on the total number of open files has been reached. +-.TP +-.B ENOEXEC +-The file specified by +-.I library +-is not an executable of a known type; +-for example, it does not have the correct magic numbers. +-.SH CONFORMING TO +-.BR uselib () +-is Linux-specific, and should not be used in programs +-intended to be portable. +-.SH NOTES +-This obsolete system call is not supported by glibc. +-No declaration is provided in glibc headers, but, through a quirk of history, +-glibc versions before 2.23 did export an ABI for this system call. +-Therefore, in order to employ this system call, +-it was sufficient to manually declare the interface in your code; +-alternatively, you could invoke the system call using +-.BR syscall (2). +-.PP +-In ancient libc versions, +-.BR uselib () +-was used to load +-the shared libraries with names found in an array of names +-in the binary. +-.PP +-.\" libc 4.3.1f - changelog 1993-03-02 +-Since libc 4.3.2, startup code tries to prefix these names +-with "/usr/lib", "/lib" and "" before giving up. +-.\" libc 4.3.4 - changelog 1993-04-21 +-In libc 4.3.4 and later these names are looked for in the directories +-found in +-.BR LD_LIBRARY_PATH , +-and if not found there, +-prefixes "/usr/lib", "/lib" and "/" are tried. +-.PP +-From libc 4.4.4 on only the library "/lib/ld.so" is loaded, +-so that this dynamic library can load the remaining libraries needed +-(again using this call). +-This is also the state of affairs in libc5. +-.PP +-glibc2 does not use this call. +-.PP +-Since Linux 3.15, +-.\" commit 69369a7003735d0d8ef22097e27a55a8bad9557a +-this system call is available only when the kernel is configured with the +-.B CONFIG_USELIB +-option. +-.SH SEE ALSO +-.BR ar (1), +-.BR gcc (1), +-.BR ld (1), +-.BR ldd (1), +-.BR mmap (2), +-.BR open (2), +-.BR dlopen (3), +-.BR capabilities (7), +-.BR ld.so (8) +-.SH COLOPHON +-This page is part of release 4.15 of the Linux +-.I man-pages +-project. +-A description of the project, +-information about reporting bugs, +-and the latest version of this page, +-can be found at +-\%https://www.kernel.org/doc/man\-pages/. +diff --git a/man2/ustat.2 b/man2/ustat.2 +deleted file mode 100644 +index 41e9a88..0000000 +--- a/man2/ustat.2 ++++ /dev/null +@@ -1,127 +0,0 @@ +-.\" Copyright (C) 1995, Thomas K. Dyas +-.\" +-.\" %%%LICENSE_START(VERBATIM) +-.\" Permission is granted to make and distribute verbatim copies of this +-.\" manual provided the copyright notice and this permission notice are +-.\" preserved on all copies. +-.\" +-.\" Permission is granted to copy and distribute modified versions of this +-.\" manual under the conditions for verbatim copying, provided that the +-.\" entire resulting derived work is distributed under the terms of a +-.\" permission notice identical to this one. +-.\" +-.\" Since the Linux kernel and libraries are constantly changing, this +-.\" manual page may be incorrect or out-of-date. The author(s) assume no +-.\" responsibility for errors or omissions, or for damages resulting from +-.\" the use of the information contained herein. The author(s) may not +-.\" have taken the same level of care in the production of this manual, +-.\" which is licensed free of charge, as they might when working +-.\" professionally. +-.\" +-.\" Formatted or processed versions of this manual, if unaccompanied by +-.\" the source, must acknowledge the copyright and authors of this work. +-.\" %%%LICENSE_END +-.\" +-.\" Created 1995-08-09 Thomas K. Dyas +-.\" Modified 1997-01-31 by Eric S. Raymond +-.\" Modified 2001-03-22 by aeb +-.\" Modified 2003-08-04 by aeb +-.\" +-.TH USTAT 2 2017-09-15 "Linux" "Linux Programmer's Manual" +-.SH NAME +-ustat \- get filesystem statistics +-.SH SYNOPSIS +-.nf +-.B #include +-.BR "#include " " /* libc[45] */" +-.BR "#include " " /* glibc2 */" +-.PP +-.BI "int ustat(dev_t " dev ", struct ustat *" ubuf ); +-.fi +-.SH DESCRIPTION +-.BR ustat () +-returns information about a mounted filesystem. +-.I dev +-is a device number identifying a device containing +-a mounted filesystem. +-.I ubuf +-is a pointer to a +-.I ustat +-structure that contains the following +-members: +-.PP +-.in +4n +-.EX +-daddr_t f_tfree; /* Total free blocks */ +-ino_t f_tinode; /* Number of free inodes */ +-char f_fname[6]; /* Filsys name */ +-char f_fpack[6]; /* Filsys pack name */ +-.EE +-.in +-.PP +-The last two fields, +-.I f_fname +-and +-.IR f_fpack , +-are not implemented and will +-always be filled with null bytes (\(aq\\0\(aq). +-.SH RETURN VALUE +-On success, zero is returned and the +-.I ustat +-structure pointed to by +-.I ubuf +-will be filled in. +-On error, \-1 is returned, and +-.I errno +-is set appropriately. +-.SH ERRORS +-.TP +-.B EFAULT +-.I ubuf +-points outside of your accessible address space. +-.TP +-.B EINVAL +-.I dev +-does not refer to a device containing a mounted filesystem. +-.TP +-.B ENOSYS +-The mounted filesystem referenced by +-.I dev +-does not support this operation, or any version of Linux before +-1.3.16. +-.SH CONFORMING TO +-SVr4. +-.\" SVr4 documents additional error conditions ENOLINK, ECOMM, and EINTR +-.\" but has no ENOSYS condition. +-.SH NOTES +-.BR ustat () +-is deprecated and has been provided only for compatibility. +-All new programs should use +-.BR statfs (2) +-instead. +-.SS HP-UX notes +-The HP-UX version of the +-.I ustat +-structure has an additional field, +-.IR f_blksize , +-that is unknown elsewhere. +-HP-UX warns: +-For some filesystems, the number of free inodes does not change. +-Such filesystems will return \-1 in the field +-.IR f_tinode . +-.\" Some software tries to use this in order to test whether the +-.\" underlying filesystem is NFS. +-For some filesystems, inodes are dynamically allocated. +-Such filesystems will return the current number of free inodes. +-.SH SEE ALSO +-.BR stat (2), +-.BR statfs (2) +-.SH COLOPHON +-This page is part of release 4.15 of the Linux +-.I man-pages +-project. +-A description of the project, +-information about reporting bugs, +-and the latest version of this page, +-can be found at +-\%https://www.kernel.org/doc/man\-pages/. +diff --git a/man2/utime.2 b/man2/utime.2 +index 6c848e8..6393289 100644 +--- a/man2/utime.2 ++++ b/man2/utime.2 +@@ -43,9 +43,12 @@ utime, utimes \- change file last access and modification times + .BI "int utimes(const char *" filename ", const struct timeval " times [2]); + .fi + .SH DESCRIPTION +-.B Note: +-modern applications may prefer to use the interfaces described in +-.BR utimensat (2). ++.BR utime () ++and ++.BR utimes () ++system calls are DEPRECATED, use ++.BR utimensat (2) ++instead!!! + .PP + The + .BR utime () +diff --git a/man2/vfork.2 b/man2/vfork.2 +deleted file mode 100644 +index 32d6042..0000000 +--- a/man2/vfork.2 ++++ /dev/null +@@ -1,346 +0,0 @@ +-.\" Copyright (c) 1999 Andries Brouwer (aeb@cwi.nl), 1 Nov 1999 +-.\" and Copyright 2006, 2012, 2017 Michael Kerrisk +-.\" +-.\" %%%LICENSE_START(VERBATIM) +-.\" Permission is granted to make and distribute verbatim copies of this +-.\" manual provided the copyright notice and this permission notice are +-.\" preserved on all copies. +-.\" +-.\" Permission is granted to copy and distribute modified versions of this +-.\" manual under the conditions for verbatim copying, provided that the +-.\" entire resulting derived work is distributed under the terms of a +-.\" permission notice identical to this one. +-.\" +-.\" Since the Linux kernel and libraries are constantly changing, this +-.\" manual page may be incorrect or out-of-date. The author(s) assume no +-.\" responsibility for errors or omissions, or for damages resulting from +-.\" the use of the information contained herein. The author(s) may not +-.\" have taken the same level of care in the production of this manual, +-.\" which is licensed free of charge, as they might when working +-.\" professionally. +-.\" +-.\" Formatted or processed versions of this manual, if unaccompanied by +-.\" the source, must acknowledge the copyright and authors of this work. +-.\" %%%LICENSE_END +-.\" +-.\" 1999-11-10: Merged text taken from the page contributed by +-.\" Reed H. Petty (rhp@draper.net) +-.\" +-.TH VFORK 2 2017-09-15 "Linux" "Linux Programmer's Manual" +-.SH NAME +-vfork \- create a child process and block parent +-.SH SYNOPSIS +-.B #include +-.br +-.B #include +-.PP +-.B pid_t vfork(void); +-.PP +-.in -4n +-Feature Test Macro Requirements for glibc (see +-.BR feature_test_macros (7)): +-.in +-.PP +-.BR vfork (): +-.ad l +-.RS 4 +-.PD 0 +-.TP 4 +-Since glibc 2.12: +-.nf +-(_XOPEN_SOURCE\ >=\ 500) && ! (_POSIX_C_SOURCE\ >=\ 200809L) +- || /* Since glibc 2.19: */ _DEFAULT_SOURCE +- || /* Glibc versions <= 2.19: */ _BSD_SOURCE +-.TP 4 +-.fi +-Before glibc 2.12: +-_BSD_SOURCE || _XOPEN_SOURCE\ >=\ 500 +-.\" || _XOPEN_SOURCE\ &&\ _XOPEN_SOURCE_EXTENDED +-.PD +-.RE +-.ad b +-.SH DESCRIPTION +-.SS Standard description +-(From POSIX.1) +-The +-.BR vfork () +-function has the same effect as +-.BR fork (2), +-except that the behavior is undefined if the process created by +-.BR vfork () +-either modifies any data other than a variable of type +-.I pid_t +-used to store the return value from +-.BR vfork (), +-or returns from the function in which +-.BR vfork () +-was called, or calls any other function before successfully calling +-.BR _exit (2) +-or one of the +-.BR exec (3) +-family of functions. +-.SS Linux description +-.BR vfork (), +-just like +-.BR fork (2), +-creates a child process of the calling process. +-For details and return value and errors, see +-.BR fork (2). +-.PP +-.BR vfork () +-is a special case of +-.BR clone (2). +-It is used to create new processes without copying the page tables of +-the parent process. +-It may be useful in performance-sensitive applications +-where a child is created which then immediately issues an +-.BR execve (2). +-.PP +-.BR vfork () +-differs from +-.BR fork (2) +-in that the calling thread is suspended until the child terminates +-(either normally, +-by calling +-.BR _exit (2), +-or abnormally, after delivery of a fatal signal), +-or it makes a call to +-.BR execve (2). +-Until that point, the child shares all memory with its parent, +-including the stack. +-The child must not return from the current function or call +-.BR exit (3) +-(which would have the effect of calling exit handlers +-established by the parent process and flushing the parent's +-.BR stdio (3) +-buffers), but may call +-.BR _exit (2). +-.PP +-As with +-.BR fork (2), +-the child process created by +-.BR vfork () +-inherits copies of various of the caller's process attributes +-(e.g., file descriptors, signal dispositions, and current working directory); +-the +-.BR vfork () +-call differs only in the treatment of the virtual address space, +-as described above. +-.PP +-Signals sent to the parent +-arrive after the child releases the parent's memory +-(i.e., after the child terminates +-or calls +-.BR execve (2)). +-.SS Historic description +-Under Linux, +-.BR fork (2) +-is implemented using copy-on-write pages, so the only penalty incurred by +-.BR fork (2) +-is the time and memory required to duplicate the parent's page tables, +-and to create a unique task structure for the child. +-However, in the bad old days a +-.BR fork (2) +-would require making a complete copy of the caller's data space, +-often needlessly, since usually immediately afterward an +-.BR exec (3) +-is done. +-Thus, for greater efficiency, BSD introduced the +-.BR vfork () +-system call, which did not fully copy the address space of +-the parent process, but borrowed the parent's memory and thread +-of control until a call to +-.BR execve (2) +-or an exit occurred. +-The parent process was suspended while the +-child was using its resources. +-The use of +-.BR vfork () +-was tricky: for example, not modifying data +-in the parent process depended on knowing which variables were +-held in a register. +-.SH CONFORMING TO +-4.3BSD; POSIX.1-2001 (but marked OBSOLETE). +-POSIX.1-2008 removes the specification of +-.BR vfork (). +-.PP +-The requirements put on +-.BR vfork () +-by the standards are weaker than those put on +-.BR fork (2), +-so an implementation where the two are synonymous is compliant. +-In particular, the programmer cannot rely on the parent +-remaining blocked until the child either terminates or calls +-.BR execve (2), +-and cannot rely on any specific behavior with respect to shared memory. +-.\" In AIXv3.1 vfork is equivalent to fork. +-.SH NOTES +-.PP +-Some consider the semantics of +-.BR vfork () +-to be an architectural blemish, and the 4.2BSD man page stated: +-"This system call will be eliminated when proper system sharing mechanisms +-are implemented. +-Users should not depend on the memory sharing semantics of +-.BR vfork () +-as it will, in that case, be made synonymous to +-.BR fork (2).\c +-" +-However, even though modern memory management hardware +-has decreased the performance difference between +-.BR fork (2) +-and +-.BR vfork (), +-there are various reasons why Linux and other systems have retained +-.BR vfork (): +-.IP * 3 +-Some performance-critical applications require the small performance +-advantage conferred by +-.BR vfork (). +-.IP * +-.BR vfork () +-can be implemented on systems that lack a memory-management unit (MMU), but +-.BR fork (2) +-can't be implemented on such systems. +-(POSIX.1-2008 removed +-.BR vfork () +-from the standard; the POSIX rationale for the +-.BR posix_spawn (3) +-function notes that that function, +-which provides functionality equivalent to +-.BR fork (2)+ exec (3), +-is designed to be implementable on systems that lack an MMU.) +-.\" http://stackoverflow.com/questions/4259629/what-is-the-difference-between-fork-and-vfork +-.\" http://developers.sun.com/solaris/articles/subprocess/subprocess.html +-.\" http://mailman.uclinux.org/pipermail/uclinux-dev/2009-April/000684.html +-.\" +-.IP * +-On systems where memory is constrained, +-.BR vfork () +-avoids the need to temporarily commit memory (see the description of +-.IR /proc/sys/vm/overcommit_memory +-in +-.BR proc (5)) +-in order to execute a new program. +-(This can be especially beneficial where a large parent process wishes +-to execute a small helper program in a child process.) +-By contrast, using +-.BR fork (2) +-in this scenario requires either committing an amount of memory equal +-to the size of the parent process (if strict overcommitting is in force) +-or overcommitting memory with the risk that a process is terminated +-by the out-of-memory (OOM) killer. +-.\" +-.SS Caveats +-The child process should take care not to modify the memory in unintended ways, +-since such changes will be seen by the parent process once +-the child terminates or executes another program. +-In this regard, signal handlers can be especially problematic: +-if a signal handler that is invoked in the child of +-.BR vfork () +-changes memory, those changes may result in an inconsistent process state +-from the perspective of the parent process +-(e.g., memory changes would be visible in the parent, +-but changes to the state of open file descriptors would not be visible). +-.PP +-When +-.BR vfork () +-is called in a multithreaded process, +-only the calling thread is suspended until the child terminates +-or executes a new program. +-This means that the child is sharing an address space with other running code. +-This can be dangerous if another thread in the parent process +-changes credentials (using +-.BR setuid (2) +-or similar), +-since there are now two processes with different privilege levels +-running in the same address space. +-As an example of the dangers, +-suppose that a multithreaded program running as root creates a child using +-.BR vfork (). +-After the +-.BR vfork (), +-a thread in the parent process drops the process to an unprivileged user +-in order to run some untrusted code +-(e.g., perhaps via plug-in opened with +-.BR dlopen (3)). +-In this case, attacks are possible where the parent process uses +-.BR mmap (2) +-to map in code that will be executed by the privileged child process. +-.\" +-.SS Linux notes +-Fork handlers established using +-.BR pthread_atfork (3) +-are not called when a multithreaded program employing +-the NPTL threading library calls +-.BR vfork (). +-Fork handlers are called in this case in a program using the +-LinuxThreads threading library. +-(See +-.BR pthreads (7) +-for a description of Linux threading libraries.) +-.PP +-A call to +-.BR vfork () +-is equivalent to calling +-.BR clone (2) +-with +-.I flags +-specified as: +-.PP +- CLONE_VM | CLONE_VFORK | SIGCHLD +-.SS History +-The +-.BR vfork () +-system call appeared in 3.0BSD. +-.\" In the release notes for 4.2BSD Sam Leffler wrote: `vfork: Is still +-.\" present, but definitely on its way out'. +-In 4.4BSD it was made synonymous to +-.BR fork (2) +-but NetBSD introduced it again; +-see +-.UR http://www.netbsd.org\:/Documentation\:/kernel\:/vfork.html +-.UE . +-In Linux, it has been equivalent to +-.BR fork (2) +-until 2.2.0-pre6 or so. +-Since 2.2.0-pre9 (on i386, somewhat later on +-other architectures) it is an independent system call. +-Support was added in glibc 2.0.112. +-.SH BUGS +-.PP +-Details of the signal handling are obscure and differ between systems. +-The BSD man page states: +-"To avoid a possible deadlock situation, processes that are children +-in the middle of a +-.BR vfork () +-are never sent +-.B SIGTTOU +-or +-.B SIGTTIN +-signals; rather, output or +-.IR ioctl s +-are allowed and input attempts result in an end-of-file indication." +-.\" +-.\" As far as I can tell, the following is not true in 2.6.19: +-.\" Currently (Linux 2.3.25), +-.\" .BR strace (1) +-.\" cannot follow +-.\" .BR vfork () +-.\" and requires a kernel patch. +-.SH SEE ALSO +-.BR clone (2), +-.BR execve (2), +-.BR _exit (2), +-.BR fork (2), +-.BR unshare (2), +-.BR wait (2) +-.SH COLOPHON +-This page is part of release 4.15 of the Linux +-.I man-pages +-project. +-A description of the project, +-information about reporting bugs, +-and the latest version of this page, +-can be found at +-\%https://www.kernel.org/doc/man\-pages/. +diff --git a/man2/wait4.2 b/man2/wait4.2 +index be31213..4fe7214 100644 +--- a/man2/wait4.2 ++++ b/man2/wait4.2 +@@ -67,6 +67,13 @@ Feature Test Macro Requirements for glibc (see + _BSD_SOURCE + .ad + .SH DESCRIPTION ++.BR wait4 () ++system call is DEPRECATED, use ++.BR waitpid (2) ++or ++.BR waitid (2) ++instead!!! ++.PP + These functions are obsolete; use + .BR waitpid (2) + or +-- +2.17.1 + diff --git a/SOURCES/man-pages-4.15-host.conf.5-multi.patch b/SOURCES/man-pages-4.15-host.conf.5-multi.patch new file mode 100644 index 0000000..95fb074 --- /dev/null +++ b/SOURCES/man-pages-4.15-host.conf.5-multi.patch @@ -0,0 +1,29 @@ +From b5f194248f0c38d0e254b71f98e1b9e9783198dd Mon Sep 17 00:00:00 2001 +From: =?UTF-8?q?Nikola=20Forr=C3=B3?= +Date: Fri, 27 Jul 2018 17:15:47 +0200 +Subject: [PATCH 2/5] host.conf.5: fix default value of multi option + +--- + man5/host.conf.5 | 6 +++--- + 1 file changed, 3 insertions(+), 3 deletions(-) + +diff --git a/man5/host.conf.5 b/man5/host.conf.5 +index 1f65840..15e9aa7 100644 +--- a/man5/host.conf.5 ++++ b/man5/host.conf.5 +@@ -65,9 +65,9 @@ appears in the + file, + instead of only the first. + This is +-.I off +-by default, as it may cause a substantial performance loss at sites +-with large hosts files. ++.I on ++by default. ++On systems with DNS, hosts files are much smaller and the performance loss of multiple search is negligible. On sites with large hosts files, turning it on may cause a substantial performance loss. + .TP + .I reorder + Valid values are +-- +2.17.1 + diff --git a/SOURCES/man-pages-4.15-host.conf.5-spoof-options.patch b/SOURCES/man-pages-4.15-host.conf.5-spoof-options.patch new file mode 100644 index 0000000..fc94349 --- /dev/null +++ b/SOURCES/man-pages-4.15-host.conf.5-spoof-options.patch @@ -0,0 +1,37 @@ +From 41b7763e490bddbc3308dfd32924bd19972c0604 Mon Sep 17 00:00:00 2001 +From: =?UTF-8?q?Nikola=20Forr=C3=B3?= +Date: Tue, 15 May 2018 13:29:24 +0200 +Subject: [PATCH] host.conf.5: Clarify glibc versions in which spoof options + were removed +MIME-Version: 1.0 +Content-Type: text/plain; charset=UTF-8 +Content-Transfer-Encoding: 8bit + +The nospoof, spoofalert and spoof options as well as the +RESOLV_SPOOF_CHECK environment variable were all removed +from glibc in version 2.25 (with commit +7d68cdaa4f748e87ee921f587ee2d483db624b3d). + +Signed-off-by: Nikola Forró +Signed-off-by: Michael Kerrisk +--- + man5/host.conf.5 | 3 ++- + 1 file changed, 2 insertions(+), 1 deletion(-) + +diff --git a/man5/host.conf.5 b/man5/host.conf.5 +index 15e9aa7..66e6fb4 100644 +--- a/man5/host.conf.5 ++++ b/man5/host.conf.5 +@@ -150,7 +150,8 @@ Overrides the + .I order + command. + .PP +-Since glibc 2.0.7, the following keywords and environment variable have ++.\" commit 7d68cdaa4f748e87ee921f587ee2d483db624b3d ++Since glibc 2.0.7, and up through glibc 2.24, the following keywords and environment variable have + been recognized but never implemented: + .TP + .I nospoof +-- +2.17.1 + diff --git a/SOURCES/man-pages-4.15-nl_langinfo.3-charsets.7-codesets.patch b/SOURCES/man-pages-4.15-nl_langinfo.3-charsets.7-codesets.patch new file mode 100644 index 0000000..3f002d0 --- /dev/null +++ b/SOURCES/man-pages-4.15-nl_langinfo.3-charsets.7-codesets.patch @@ -0,0 +1,45 @@ +From 260d71520ec0c96ef20670eca17d7b08cc9601ad Mon Sep 17 00:00:00 2001 +From: =?UTF-8?q?Nikola=20Forr=C3=B3?= +Date: Fri, 27 Jul 2018 17:10:43 +0200 +Subject: [PATCH 1/5] nl_langinfo.3: note that Latin-1 is the default codeset + for en_US locale charsets.7: note that UTF-8 is the recommended encoding for + all locales + +--- + man3/nl_langinfo.3 | 6 ++++++ + man7/charsets.7 | 2 ++ + 2 files changed, 8 insertions(+) + +diff --git a/man3/nl_langinfo.3 b/man3/nl_langinfo.3 +index e37f07b..63de5c2 100644 +--- a/man3/nl_langinfo.3 ++++ b/man3/nl_langinfo.3 +@@ -167,6 +167,12 @@ or + .PP + POSIX specifies that the application may not modify + the string returned by these functions. ++.PP ++Codeset for en_US defaults to ISO-8859-1 (Latin-1). ++The Latin-1 default has historical reasons, ++since all Unix systems originally used only 8-bit character encoding. ++For more information about ISO-8859-1 see ++.BR charsets (7). + .SH ATTRIBUTES + For an explanation of the terms used in this section, see + .BR attributes (7). +diff --git a/man7/charsets.7 b/man7/charsets.7 +index 5f91784..9de88fe 100644 +--- a/man7/charsets.7 ++++ b/man7/charsets.7 +@@ -29,6 +29,8 @@ ASCII, GB 2312, ISO 8859, JIS, KOI8-R, KS, and Unicode. + The primary emphasis is on character sets that were actually used by + locale character sets, not the myriad others that could be found in data + from other systems. ++.LP ++The recommended encoding in all settings and locales is UTF-8. + .SS ASCII + ASCII (American Standard Code For Information Interchange) is the original + 7-bit character set, originally designed for American English. +-- +2.17.1 + diff --git a/SOURCES/man-pages-4.15-nsswitch.conf.5-sss.patch b/SOURCES/man-pages-4.15-nsswitch.conf.5-sss.patch new file mode 100644 index 0000000..c30209b --- /dev/null +++ b/SOURCES/man-pages-4.15-nsswitch.conf.5-sss.patch @@ -0,0 +1,43 @@ +From ca56d826dbaa05403454d8971b59fabe8b5642d5 Mon Sep 17 00:00:00 2001 +From: =?UTF-8?q?Nikola=20Forr=C3=B3?= +Date: Fri, 27 Jul 2018 17:23:26 +0200 +Subject: [PATCH 3/5] nsswitch.conf.5: add information about sss service + +--- + man5/nsswitch.conf.5 | 13 +++++++++++++ + 1 file changed, 13 insertions(+) + +diff --git a/man5/nsswitch.conf.5 b/man5/nsswitch.conf.5 +index 38ef64e..dcf09e6 100644 +--- a/man5/nsswitch.conf.5 ++++ b/man5/nsswitch.conf.5 +@@ -165,6 +165,16 @@ may be 1 for glibc 2.0, or 2 for glibc 2.1 and later. + On systems with additional libraries installed, you may have access to + further services such as "hesiod", "ldap", "winbind" and "wins". + .PP ++If System Security Services Daemon (SSSD) ++is installed on your system, you can use ++this service with the "sss" keyword. ++SSSD supports the following databases: ++.BR passwd , ++.BR group , ++.BR services ++and ++.BR netgroup . ++.PP + An action may also be specified following a service specification. + The action modifies the behavior following a result obtained + from the preceding data source. +@@ -329,6 +339,9 @@ as the source for the pseudo-databases + .BR group_compat , + and + .BR shadow_compat . ++.PP ++If SSSD is installed on your system, you can use "sss" as the source ++for these pseudo-databases. + .SH FILES + A service named + .I SERVICE +-- +2.17.1 + diff --git a/SOURCES/man-pages-4.15-proc.5-Speculation_Store_Bypass.patch b/SOURCES/man-pages-4.15-proc.5-Speculation_Store_Bypass.patch new file mode 100644 index 0000000..90e3464 --- /dev/null +++ b/SOURCES/man-pages-4.15-proc.5-Speculation_Store_Bypass.patch @@ -0,0 +1,43 @@ +From 2d5049d33ee608c48efd0c02e48d135ddb766fa2 Mon Sep 17 00:00:00 2001 +From: =?UTF-8?q?Nikola=20Forr=C3=B3?= +Date: Mon, 23 Jul 2018 14:02:18 +0200 +Subject: [PATCH 2/2] proc.5: Document /proc/[pid]/status + Speculation_Store_Bypass field +MIME-Version: 1.0 +Content-Type: text/plain; charset=UTF-8 +Content-Transfer-Encoding: 8bit + +Signed-off-by: Nikola Forró +Signed-off-by: Michael Kerrisk +--- + man5/proc.5 | 7 +++++++ + 1 file changed, 7 insertions(+) + +diff --git a/man5/proc.5 b/man5/proc.5 +index 9ae9e02..dc83c22 100644 +--- a/man5/proc.5 ++++ b/man5/proc.5 +@@ -2262,6 +2262,7 @@ CapBnd: ffffffffffffffff + CapAmb: 0000000000000000 + NoNewPrivs: 0 + Seccomp: 0 ++Speculation_Store_Bypass: vulnerable + Cpus_allowed: 00000001 + Cpus_allowed_list: 0 + Mems_allowed: 1 +@@ -2485,6 +2486,12 @@ This field is provided only if the kernel was built with the + .BR CONFIG_SECCOMP + kernel configuration option enabled. + .IP * ++.IR Speculation_Store_Bypass : ++.\" commit fae1fa0fc6cca8beee3ab8ed71d54f9a78fa3f64 ++Speculation flaw mitigation state ++(since Linux 4.17, see ++.BR prctl (2)). ++.IP * + .IR Cpus_allowed : + Mask of CPUs on which this process may run + (since Linux 2.6.24, see +-- +2.17.1 + diff --git a/SOURCES/man-pages-4.15-resolv.conf.5-no-reload.patch b/SOURCES/man-pages-4.15-resolv.conf.5-no-reload.patch new file mode 100644 index 0000000..ad34d74 --- /dev/null +++ b/SOURCES/man-pages-4.15-resolv.conf.5-no-reload.patch @@ -0,0 +1,36 @@ +From 7285d6b10356c43c94a252c63ffcd332c4e54b4b Mon Sep 17 00:00:00 2001 +From: =?UTF-8?q?Nikola=20Forr=C3=B3?= +Date: Wed, 11 Jul 2018 10:58:38 +0200 +Subject: [PATCH 1/2] resolv.conf.5: Document no-reload (RES_NPRELOAD) option +MIME-Version: 1.0 +Content-Type: text/plain; charset=UTF-8 +Content-Transfer-Encoding: 8bit + +Signed-off-by: Nikola Forró +Signed-off-by: Michael Kerrisk +--- + man5/resolv.conf.5 | 8 ++++++++ + 1 file changed, 8 insertions(+) + +diff --git a/man5/resolv.conf.5 b/man5/resolv.conf.5 +index bc42004..93c6b47 100644 +--- a/man5/resolv.conf.5 ++++ b/man5/resolv.conf.5 +@@ -302,6 +302,14 @@ Sets + in + .IR _res.options . + This option forces the use of TCP for DNS resolutions. ++.\" aef16cc8a4c670036d45590877d411a97f01e0cd ++.TP ++.BR no\-reload " (since glibc 2.26)" ++Sets ++.BR RES_NORELOAD ++in ++.IR _res.options . ++This option disables automatic reloading of a changed configuration file. + .RE + .PP + The \fIdomain\fP and \fIsearch\fP keywords are mutually exclusive. +-- +2.17.1 + diff --git a/SOURCES/man-pages-posix-2013-a-pthread_once.patch b/SOURCES/man-pages-posix-2013-a-pthread_once.patch new file mode 100644 index 0000000..91e9a1b --- /dev/null +++ b/SOURCES/man-pages-posix-2013-a-pthread_once.patch @@ -0,0 +1,35 @@ +From 0409c3370ddd08cec10586f6f52fe1fbe3c717ef Mon Sep 17 00:00:00 2001 +From: =?UTF-8?q?Nikola=20Forr=C3=B3?= +Date: Tue, 24 Jan 2017 16:35:02 +0100 +Subject: [PATCH] pthread_once.3p: fix return type of initialize_random() + function + +--- + man-pages-posix-2013-a/man3p/pthread_once.3p | 4 ++-- + 1 file changed, 2 insertions(+), 2 deletions(-) + +diff --git a/man-pages-posix-2013-a/man3p/pthread_once.3p b/man-pages-posix-2013-a/man3p/pthread_once.3p +index 316b1e9..db83d63 100644 +--- a/man-pages-posix-2013-a/man3p/pthread_once.3p ++++ b/man-pages-posix-2013-a/man3p/pthread_once.3p +@@ -86,7 +86,7 @@ on entry to a routine, as follows: + .nf + \fB + static int random_is_initialized = 0; +-extern int initialize_random(); ++extern void initialize_random(); + .P + int random_function() + { +@@ -125,7 +125,7 @@ becomes: + \fB + #include + static pthread_once_t random_is_initialized = PTHREAD_ONCE_INIT; +-extern int initialize_random(); ++extern void initialize_random(); + .P + int random_function() + { +-- +2.7.4 + diff --git a/SPECS/man-pages.spec b/SPECS/man-pages.spec new file mode 100644 index 0000000..57504ff --- /dev/null +++ b/SPECS/man-pages.spec @@ -0,0 +1,676 @@ +%global posix_version 2013 +%global posix_release a +%global posix_name man-pages-posix-%{posix_version}-%{posix_release} +%global additional_version 20140218 +%global additional_name man-pages-additional-%{additional_version} + +%global debug_package %{nil} + +Summary: Linux kernel and C library user-space interface documentation +Name: man-pages +Version: 4.15 +Release: 6%{?dist} +License: GPL+ and GPLv2+ and BSD and MIT and Copyright only and IEEE +Group: Documentation +URL: http://www.kernel.org/doc/man-pages/ +Source: http://www.kernel.org/pub/linux/docs/man-pages/man-pages-%{version}.tar.xz +# POSIX man pages +Source1: http://www.kernel.org/pub/linux/docs/man-pages/man-pages-posix/%{posix_name}.tar.xz +# additional man-pages, the source tarball is fedora/rhel only +Source2: %{additional_name}.tar.xz + +# attr.5 man page was moved from attr to man-pages in attr-2.4.47-11 +Conflicts: attr < 2.4.47-11 + +# keyrings.7, persistent-keyring.7, process-keyring.7, session-keyring.7, +# thread-keyring.7, user-keyring.7 and user-session-keyring.7 man pages +# were moved from keyutils-libs to man-pages in keyutils-libs-1.5.10 +Conflicts: keyutils-libs < 1.5.10 + +Autoreq: false + +## Patches ## + +# POSIX man pages +# resolves: #1415757 +Patch0: man-pages-posix-2013-a-pthread_once.patch + +# Regular man pages +# resolves: #650985 +# https://bugzilla.kernel.org/show_bug.cgi?id=53781 +Patch21: man-pages-3.42-close.patch + +# patches from MPO +Patch22: man-pages-4.15-nl_langinfo.3-charsets.7-codesets.patch +Patch23: man-pages-4.15-host.conf.5-multi.patch +Patch24: man-pages-4.15-nsswitch.conf.5-sss.patch +Patch25: man-pages-4.15-host.conf.5-spoof-options.patch +# aarch64 specific patch +Patch26: man-pages-4.15-aarch64-syscalls.patch +Patch27: man-pages-4.15-resolv.conf.5-no-reload.patch +Patch28: man-pages-4.15-proc.5-Speculation_Store_Bypass.patch + +%description +A large collection of manual pages from the Linux Documentation Project (LDP). + +%prep +%setup -q -a 1 -a 2 + +%patch0 -p1 +%patch21 -p1 +%patch22 -p1 +%patch23 -p1 +%patch24 -p1 +%patch25 -p1 + +%ifarch aarch64 +%patch26 -p1 +%endif + +%patch27 -p1 +%patch28 -p1 + +# rename posix README so we don't have conflict +%{__mv} %{posix_name}/README %{posix_name}/%{posix_name}.README + +## Remove man pages we are not going to use ## + +# deprecated +%{__rm} man2/pciconfig_{write,read,iobase}.2 + +# problem with db x db4 (#198597) - man pages are obsolete +%{__rm} man3/{db,btree,dbopen,hash,mpool,recno}.3 + +# we are not using SystemV anymore +%{__rm} man7/boot.7 + +# we do not have sccs (#203302) +%{__rm} %{posix_name}/man1p/{admin,delta,get,prs,rmdel,sact,sccs,unget,val,what}.1p + +# remove man pages deprecated by libxcrypt +%{__rm} man3/crypt{,_r}.3 + +%build +# nothing to build + +%install +make install DESTDIR=$RPM_BUILD_ROOT +pushd %{posix_name} +make install DESTDIR=$RPM_BUILD_ROOT +popd +pushd %{additional_name} +make install DESTDIR=$RPM_BUILD_ROOT +popd + +%files +%doc README man-pages-%{version}.Announce Changes +%doc %{posix_name}/POSIX-COPYRIGHT %{posix_name}/%{posix_name}.{README,Announce} +%{_mandir}/man*/* + +%changelog +* Thu Aug 30 2018 Nikola Forró - 4.15-6 +- proc.5: document /proc/[pid]/status Speculation_Store_Bypass field + resolves: #1623808 + +* Thu Aug 30 2018 Nikola Forró - 4.15-5 +- resolv.conf.5: document no-reload option + resolves: #1623806 + +* Mon Aug 13 2018 Nikola Forró - 4.15-4 +- host.conf.5: clarify glibc versions in which spoof options were removed + resolves: #1615294 + +* Fri Aug 03 2018 Nikola Forró - 4.15-3 +- remove man pages deprecated by libxcrypt + +* Tue Jul 31 2018 Nikola Forró - 4.15-2 +- add patches from MPO +- remove/adjust pages for syscalls deprecated on aarch64 + +* Sun Feb 04 2018 Nikola Forró - 4.15-1 +- update to 4.15 + resolves #1541376 + +* Wed Nov 29 2017 Nikola Forró - 4.14-1 +- update to 4.14 + +* Mon Sep 18 2017 Nikola Forró - 4.13-1 +- update to 4.13 + resolves #1492258 + +* Tue Aug 01 2017 Nikola Forró - 4.12-1 +- update to 4.12 + resolves #1473875 + +* Wed Jul 26 2017 Fedora Release Engineering - 4.11-2 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_27_Mass_Rebuild + +* Thu May 04 2017 Nikola Forró - 4.11-1 +- update to 4.11 + resolves #1447816 + +* Wed Mar 15 2017 Nikola Forró - 4.10-2 +- add conflict with keyutils-libs versions containing conflicting man pages + resolves #1432546 + +* Wed Mar 15 2017 Nikola Forró - 4.10-1 +- update to 4.10 + resolves #1432268 + +* Fri Feb 10 2017 Fedora Release Engineering - 4.09-3 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_26_Mass_Rebuild + +* Tue Jan 24 2017 Nikola Forró - 4.09-2 +- pthread_once.3p: fix return type of initialize_random() function + resolves #1415757 + +* Tue Dec 13 2016 Nikola Forró - 4.09-1 +- update to 4.09 + resolves #1403813 + +* Mon Oct 10 2016 Nikola Forró - 4.08-1 +- update to 4.08 + resolves #1382985 + +* Thu Oct 06 2016 Richard W.M. Jones - 4.07-2 +- Bump release version and rebuild. + +* Thu Jul 28 2016 Nikola Forró - 4.07-1 +- update to 4.07 + resolves #1358060 + +* Mon Jun 13 2016 Tom Callaway - 4.06-2 +- remove non-free man-pages (bz#1334279) + +* Tue May 10 2016 Nikola Forró - 4.06-1 +- update to 4.06 + resolves #1334727 + +* Tue May 10 2016 Nikola Forró - 4.05-3 +- popen.3: RETURN VALUE: describe successful case + resolves #1331312 + +* Tue May 10 2016 Nikola Forró - 4.05-2 +- clone.2, fork.2: document ERESTARTNOINTR error code + resolves #1330663 + +* Wed Mar 16 2016 Nikola Forró - 4.05-1 +- update to 4.05 + resolves #1317877 + +* Thu Feb 04 2016 Fedora Release Engineering - 4.04-2 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_24_Mass_Rebuild + +* Mon Jan 04 2016 Nikola Forró - 4.04-1 +- updated to 4.04 + resolves #1294723 + +* Mon Dec 07 2015 Nikola Forró - 4.03-1 +- updated to 4.03 + resolves #1288782 + +* Thu Oct 22 2015 Nikola Forró - 4.02-2 +- added conflict with attr versions containing attr.5 man page + resolves #1273702 + +* Mon Aug 10 2015 Nikola Forró - 4.02-1 +- updated to 4.02 + resolves #1251780 + resolves #1249444 + +* Fri Jul 24 2015 Nikola Forró - 4.01-1 +- updated to 4.01 + resolves #1246298 + +* Wed Jun 17 2015 Fedora Release Engineering - 4.00-3 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_23_Mass_Rebuild + +* Fri May 22 2015 jchaloup - 4.00-2 +- rtld-audit.7: use the correct format character + resolves: #1222719 + +* Thu May 07 2015 jchaloup - 4.00-1 +- updated to 4.00 + resolves: #1219478 + +* Mon Apr 20 2015 jchaloup - 3.83-1 +- updated to 3.83 + resolves: #1213147 + +* Tue Mar 31 2015 jchaloup - 3.82-1 +- updated to 3.82 + resolves: #1207665 + +* Tue Mar 03 2015 jchaloup - 3.81-1 +- updated to 3.81 + resolves: #1197926 + +* Sun Feb 22 2015 jchaloup - 3.80-1 +- updated to 3.80 + resolves: #1194974 + +* Mon Feb 02 2015 jchaloup - 3.79-1 +- updated to 3.79 + resolves: #1188036 + +* Fri Jan 23 2015 jchaloup - 3.78-1 +- updated to 3.78 + resolves: #1185309 + +* Thu Jan 15 2015 jchaloup - 3.77-1 +- updated to 3.77 + resolves: #1181496 + +* Mon Jan 05 2015 jchaloup - 3.76-1 +- updated to 3.76 + resolves: #1178355 + +* Sat Oct 18 2014 jchaloup - 3.75-1 +- updated to 3.75 + resolves: #1154261 + +* Wed Oct 08 2014 jchaloup - 3.74-1 + updated to 3.74 +- resolves: #1150489 + +* Mon Sep 22 2014 jchaloup - 3.73-1 +- resolves: #1145003 + updated to 3.73 + +* Mon Sep 08 2014 jchaloup - 3.72-1 +- resolves: #1139140 + updated to 3.72 + +* Fri Aug 22 2014 jchaloup - 3.71-1 +- resolves: #1132845 + updated to 3.71 + +* Fri Jul 11 2014 jchaloup - 3.70-1 +- resolves: #1118632 + updated to 3.70 + +* Mon Jun 16 2014 jchaloup - 3.69-1 +- resolves: #1111836 + updated to 3.69 + +* Sat Jun 07 2014 Fedora Release Engineering - 3.68-2 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_21_Mass_Rebuild + +* Mon Jun 02 2014 jchaloup - 3.68-1 +- resolves: #1103158 + updated to 3.68 + +* Tue May 27 2014 jchaloup - 3.67-1 +- resolves: #1100444 + updated to 3.67 + +* Fri May 09 2014 Peter Schiffer - 3.66-1 +- resolves: #1095840 + updated to 3.66 + +* Wed Apr 23 2014 Peter Schiffer - 3.65-1 +- resolves: #1071305 + updated to 3.65 +- resolves: #1082566 + install *xattr.2 man pages + +* Tue Feb 18 2014 Peter Schiffer - 3.60-1 +- updated to 3.60 + +* Tue Feb 18 2014 Peter Schiffer - 3.59-1 +- resolves: #1066332 + updated to 3.59 +- cleaned .spec file + +* Tue Feb 11 2014 Peter Schiffer - 3.58-1 +- resolves: #1063754 + updated to 3.58 + +* Wed Feb 5 2014 Peter Schiffer - 3.57-2 +- removed invalid patch for man(1p) man page + +* Wed Jan 29 2014 Peter Schiffer - 3.57-1 +- resolves: #1058001 + updated to 3.57 +- resolves: #1056781 + updated to POSIX.1 2013 + +* Wed Jan 15 2014 Peter Schiffer - 3.56-1 +- resolves: #1051765 + updated to 3.56 + +* Mon Dec 16 2013 Peter Schiffer - 3.55-1 +- resolves: #1043074 + updated to 3.55 + +* Wed Dec 4 2013 Peter Schiffer - 3.54-2 +- resolves: #1031703 + removed pt_chown(5) man page + +* Wed Oct 9 2013 Peter Schiffer - 3.54-1 +- resolves: #1009535 + updated to 3.54 + +* Wed Jul 31 2013 Peter Schiffer - 3.53-1 +- resolves: #990459 + updated to 3.53 + +* Mon Jul 22 2013 Peter Schiffer - 3.52-1 +- resolves: #981385 + updated to 3.52 +- fixed broken sentence on the futex(7) man page +- resolves: #885740 + documented O_PATH flag on the open(2) man page + +* Tue Apr 23 2013 Peter Schiffer - 3.51-1 +- resolves: #921911 + updated to 3.51 + +* Thu Mar 7 2013 Peter Schiffer - 3.48-1 +- resolves: #918417 + updated to 3.48 + +* Tue Feb 12 2013 Peter Schiffer - 3.47-1 +- resolves: #910268 + updated to 3.47 + +* Fri Feb 1 2013 Peter Schiffer - 3.46-2 +- related: #858703 + moved killpgrp(8) man page to the amanda-client package + +* Mon Jan 28 2013 Peter Schiffer - 3.46-1 +- resolves: #904950 + updated to 3.46 + +* Wed Jan 16 2013 Peter Schiffer - 3.45-2 +- dropped some outdated patches, few patches updated + +* Fri Dec 21 2012 Peter Schiffer - 3.45-1 +- resolves: #889446 + updated to 3.45 + +* Wed Nov 21 2012 Peter Schiffer - 3.44-1 +- resolves: #874650 + updated to 3.44 + +* Thu Oct 25 2012 Peter Schiffer - 3.43-1 +- resolves: #866874 + updated to 3.43 +- added description of the TCP_CONGESTION on the tcp(7) man page +- added description of the IP_MULTICAST_ALL on the ip(7) man page +- updated additional man pages + +* Wed Sep 19 2012 Peter Schiffer - 3.42-1 +- resolves: #847941 + update to 3.42 +- updated additional man pages +- cleaned patches +- cleaned .spec file, fixed minor encoding issue +- resolves: #837090 + updated example on inet(3) man page - use fprintf(stderr,..) instead of perror +- resolves: #751429 + included initgroups database in the nsswitch.conf(5) man page +- removed the sccs-related man pages (#203302) +- added description of single-request-reopen to the resolv.conf(5) man page (#717770) +- added missing EIDRM error code description to the shmop(2) man page (#800256) +- added documentation of several source-specific multicast socket options to the ip(7) man page (#804003) +- improved explanation about calling listen or connect on the ip(7) man page (#787567) +- added information about incorrect use of getdents(2) call to the man page (#809490) +- removed man-pages-3.22-sched_setaffinity.patch because the problem it describes was fixed in the kernel. see #533811 for more info +- documented why to use shutdown() before close() when dealing with sockets on close(2) man page (#650985) +- updated description of /proc/sys/fs/file-nr file in proc(5) man page (#497197) +- updated zdump(8) man page to match current zdump usage (#517309) +- fixed one incorrect error code on connect(2) man page (#392431) +- fixed typo in sysconf(3) man page (#202092) +- removed additional uuname(1) man page - was moved to the uucp package (#858642) +- removed obsolete additional userisdnctl(8) man page + +* Thu Jul 19 2012 Fedora Release Engineering - 3.41-2 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_18_Mass_Rebuild + +* Thu May 17 2012 Peter Schiffer - 3.41-1 +- resolves: #820901 + update to 3.41 + +* Fri Apr 27 2012 Peter Schiffer - 3.40-2 +- related: #797857 + fixed broken source file + +* Fri Apr 27 2012 Peter Schiffer - 3.40-1 +- resolves: #797857 + update to 3.40 + +* Fri Jan 13 2012 Fedora Release Engineering - 3.35-2 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_17_Mass_Rebuild + +* Fri Nov 11 2011 Peter Schiffer - 3.35-1 +- resolves: #751620 + update to 3.35 +- resolves: #723578 + typo in readlink(3p) + +* Fri May 27 2011 Ivana Hutarova Varekova - 3.32-14 +- resolves: #705888 + the man page for proc is missing an explanation for /proc/[pid]/cgroup + +* Fri Apr 22 2011 Ivana Hutarova Varekova - 3.32-13 +- resolves: #698149 + Remove documentation for "order" keyword in /etc/host.conf manpage + +* Fri Apr 22 2011 Ivana Hutarova Varekova - 3.32-12 +- resolves: #680214 + manpage for fallocate(2) is wrong + +* Fri Mar 25 2011 Ivana Hutarova Varekova - 3.32-11 +- resolves: #681781 + snprintf man page is wrong + +* Wed Mar 9 2011 Ivana Hutarova Varekova - 3.32-10 +- resolves: #675544 + perfmonctl(2) typo manpage fix + +* Thu Feb 24 2011 Ivana Hutarova Varekova - 3.32-9 +- resolves: #679899 + add scopev4 to gai.conf man page + +* Tue Feb 08 2011 Fedora Release Engineering - 3.32-8 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_15_Mass_Rebuild + +* Mon Jan 31 2011 Ivana Hutarova Varekova - 3.31-7 +- resolves: #673586 + fix the sed pages parsing + +* Thu Jan 27 2011 Ivana Hutarova Varekova - 3.31-6 +- resolves: #652869 + fix the necessary buffer limit in the man page for readdir_r + +* Thu Jan 27 2011 Ivana Hutarova Varekova - 3.31-5 +- resolves: #672348 + problems with the encoding of characters set man-pages + thanks Denis Barbier for a patch + +* Tue Jan 25 2011 Ivana Hutarova Varekova - 3.31-4 +- resolves: #672377 + fix man-pages-2.48-passwd.patch remove trailing dots + +* Tue Jan 25 2011 Ivana Hutarova Varekova - 3.31-3 +- resolves: #652870 + fix strtol man-page + +* Mon Jan 3 2011 Ivana Hutarova Varekova - 3.31-2 +- update to 3.32 + +* Wed Nov 24 2010 Ivana Hutarova Varekova - 3.31-2 +- resolves: #655961 + add the conflict tag + +* Fri Nov 19 2010 Ivana Hutarova Varekova - 3.31-1 +- update to 3.31 + +* Thu Nov 18 2010 Ivana Hutarova Varekova - 3.30-3 +- resolves: #647269 + PR_SET_SECCOMP and _exit, documentation bug + +* Thu Nov 11 2010 Ivana Hutarova Varekova - 3.30-2 +- Resolves: #650257 + fix open.2 O_EXCL description + +* Fri Nov 5 2010 Ivana Hutarova Varekova - 3.30-1 +- update to 3.30 + +* Mon Oct 25 2010 Ivana Hutarova Varekova - 3.29-1 +- update 3.29 + several bug fixes + +* Wed Oct 6 2010 Ivana Hutarova Varekova - 3.28-3 +- don't remove numa_maps, now the man page is not in numactl +- don't remove getipnodeby{name,addr}.3 and freehostent.3 + they are not more part of glibc-devel +- fix typo in gai_{error,suspend,cancel} pages + +* Wed Oct 6 2010 Ivana Hutarova Varekova - 3.28-2 +- add quotactl.2 to man-pages (the package was removed from quota - #640590) + +* Wed Oct 6 2010 Ivana Hutarova Varekova - 3.28-1 +- update to 3.28 +- move all additional man-pages to one source + (man-pages-additional-20101006.tar.bz2) +- remove additional man-pages without the info about license + +* Thu Sep 23 2010 Ivana Hutarova Varekova - 3.27-3 +- Resolves: #634626 + remove link to non-existing man page + +* Thu Sep 23 2010 Ivana Hutarova Varekova - 3.27-2 +- Resolves: #635869 + remove the link to removed man page + +* Thu Sep 23 2010 Ivana Hutarova Varekova - 3.27-1 +- Update to 3.27 +- remove obsolete patch + +* Wed Sep 8 2010 Ivana Hutarova Varekova - 3.26-1 +- Update to 3.26 +- Resolves: 624399 (rresvport man entry misleading) + +* Thu Jul 1 2010 Ivana Hutarova Varekova - 3.25-1 +- Update to 3.25 + +* Thu Jun 24 2010 Ivana Hutarova Varekova - 3.24-7 +- resolves: #606038 + filesystems.5 makes no mention of ext4 + +* Fri Jun 4 2010 Ivana Hutarova Varekova - 3.24-6 +- Resolves: #596666 + Man page for mmap64 is confusing + +* Mon May 31 2010 Ivana Hutarova Varekova - 3.24-5 +- Resolves: #597429 + remove the duplicate info about error output (recv(2) man page) + +* Mon May 10 2010 Ivana Hutarova Varekova - 3.24-4 +- Resolves: #588620 + Typo in sysconf(3) Manual page + +* Mon May 3 2010 Ivana Hutarova Varekova - 3.24-3 +- fix atanh man-page bug in glibc was fixed so removed the info about it + +* Fri Mar 19 2010 Ivana Hutarova Varekova - 3.24-2 +- Resolves: #570703 + fix getnameinfo prototype + +* Tue Mar 2 2010 Ivana Hutarova Varekova - 3.24-1 +- update to 3.24 + Resolves: #569451 + +* Mon Feb 22 2010 Ivana Hutarova Varekova - 3.23-7 +- Resolves: #564528 + Man page and "info" information on snprintf incomplete + +* Wed Jan 27 2010 Ivana Hutarova Varekova - 3.23-6 +- Resolves: #556199 + update iconv.1 man page + +* Tue Jan 26 2010 Ivana Hutarova Varekova - 3.23-5 +- Resolves: #557971 + remove unnecessary man-pages from man-pages_syscalls and man-pages_add + +* Thu Dec 3 2009 Ivana Hutarova Varekova - 3.23-4 +- fix typo in sched_setaffinity(2) patch + +* Wed Dec 2 2009 Ivana Hutarova Varekova - 3.23-3 +- fix sched_setaffinity(2) page - add an EXAMPLE and new NOTES + +* Wed Nov 18 2009 Ivana Varekova - 3.23-2 +- fix ld.so man-page (#532629) + +* Mon Oct 5 2009 Ivana Varekova - 3.23-1 +- update to 3.23 +- fix proc description + +* Wed Sep 16 2009 Ivana Varekova - 3.22-6 +- fix nsswitch.conf(5) man page + +* Mon Sep 14 2009 Ivana Varekova - 3.22-5 +- fix strcpy.3 man page +- remove statfc64 man page from syscalls tarball + +* Tue Aug 11 2009 Ivana Varekova - 3.22-4 +- fix gai.conf an page (#515347) + +* Mon Jul 27 2009 Ivana Varekova - 3.22-3 +- update to 3.22 + +* Sat Jul 25 2009 Fedora Release Engineering - 3.21-3 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_12_Mass_Rebuild + +* Fri Jul 17 2009 Ivana Varekova - 3.21-2 +- fix major.3 man page + +* Tue Apr 21 2009 Ivana Varekova - 3.21-1 +- update to 3.21 + +* Tue Mar 31 2009 Ivana Varekova - 3.20-1 +- update to 3.20 + +* Tue Mar 10 2009 Ivana Varekova - 3.19-1 +- update to 3.19 + +* Wed Feb 25 2009 Fedora Release Engineering - 3.16-2 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_11_Mass_Rebuild + +* Fri Jan 16 2009 Ivana Varekova - 3.16-1 +- update to 3.16 + +* Mon Dec 8 2008 Ivana Varekova - 3.15-1 +- update to 3.15 + +* Thu Nov 13 2008 Ivana Varekova - 3.13-2 +- fix relative path in proc.5 +- not build yet + +* Thu Nov 13 2008 Ivana Varekova - 3.13-1 +- update to 3.13 + +* Mon Sep 15 2008 Ivana Varekova - 3.09-2 +- remove numa_maps.5 man page (part of numactl) + +* Fri Sep 12 2008 Ivana Varekova - 3.09-1 +- update to 3.09 + +* Thu Aug 14 2008 Ivana Varekova - 3.07-1 +- update to 3.07 +- remove ncsa_auth.8 (#458498) + +* Thu Aug 7 2008 Tom "spot" Callaway - 3.04-2 +- fix license tag + +* Tue Jul 22 2008 Ivana Varekova - 3.04-1 +- update to 3.04 +- remove mmap, sched_setaffinity, crypt and prctl patches +- remove -f from rm commands +- remove unnecessary/bogus rm commands + +* Wed Jun 18 2008 Ivana Varekova - 3.00-1 +- update to 3.00 +- source files changes