A mirror of Man pages
Go to file
Alejandro Colomar 71a25d4c79 execveat.2: Fix prototype
It's been 6 years since execveat(2) was added to the kernel,
and there's still no glibc wrapper.  Let's document the kernel
syscall prototype.

I reported a bug against glibc requesting a wrapper;
when glibc adds the wrapper, this commit should probably be
reverted.

......

.../linux$ grep_syscall execveat
fs/exec.c:2062:
SYSCALL_DEFINE5(execveat,
		int, fd, const char __user *, filename,
		const char __user *const __user *, argv,
		const char __user *const __user *, envp,
		int, flags)
fs/exec.c:2083:
COMPAT_SYSCALL_DEFINE5(execveat, int, fd,
		       const char __user *, filename,
		       const compat_uptr_t __user *, argv,
		       const compat_uptr_t __user *, envp,
		       int,  flags)
include/linux/compat.h:815:
asmlinkage long compat_sys_execveat(int dfd, const char __user *filename,
		     const compat_uptr_t __user *argv,
		     const compat_uptr_t __user *envp, int flags);
include/linux/syscalls.h:980:
asmlinkage long sys_execveat(int dfd, const char __user *filename,
			const char __user *const __user *argv,
			const char __user *const __user *envp, int flags);
.../linux$

function grep_syscall()
{
	if ! [ -v 1 ]; then
		>&2 echo "Usage: ${FUNCNAME[0]} <syscall>";
		return ${EX_USAGE};
	fi

	find * -type f \
	|grep '\.c$' \
	|sort -V \
	|xargs pcregrep -Mn "(?s)^\w*SYSCALL_DEFINE.\(${1},.*?\)" \
	|sed -E 's/^[^:]+:[0-9]+:/&\n/';

	find * -type f \
	|grep '\.[ch]$' \
	|sort -V \
	|xargs pcregrep -Mn "(?s)^asmlinkage\s+[\w\s]+\**sys_${1}\s*\(.*?\)" \
	|sed -E 's/^[^:]+:[0-9]+:/&\n/';
}

Glibc bug: <https://sourceware.org/bugzilla/show_bug.cgi?id=27364>
Signed-off-by: Alejandro Colomar <alx.manpages@gmail.com>
Signed-off-by: Michael Kerrisk <mtk.manpages@gmail.com>
2021-02-09 19:33:47 +01:00
man1 time.1: wfix: remove crufty sentence 2021-01-30 08:10:56 +01:00
man2 execveat.2: Fix prototype 2021-02-09 19:33:47 +01:00
man3 rpc.3: ffix 2021-02-09 19:16:43 +01:00
man4 Various pages: use real minus signs in pathnames 2021-01-21 10:29:14 +01:00
man5 Various pages: use "\-" to generate real minus in circumstances where appropriate 2021-01-21 10:53:59 +01:00
man6 intro.6: wfix 2017-08-25 21:41:03 +02:00
man7 environ.7: Minor tweaks to Bastien's patch 2021-01-30 14:34:54 +01:00
man8 Various pages: use "\-" to generate real minus in circumstances where appropriate 2021-01-21 10:53:59 +01:00
scripts Add script to get modified pages for commit messages 2020-11-16 21:26:15 +01:00
CONTRIBUTING CONTRIBUTING: New file with some starting tips on how to contribute 2019-09-13 15:59:08 +02:00
Changes Start of man-pages-5.11: updating Changes and Changes.old 2020-12-22 09:30:12 +01:00
Changes.old Changes.old: tfix 2020-12-31 10:07:18 +01:00
MAINTAINER_NOTES MAINTAINER_NOTES: tfix 2021-01-24 23:30:51 +01:00
Makefile Makefile: Fix lintian.debian.org URL in comment 2020-08-25 13:55:07 +02:00
README README: Remove "Man page overlap and duplication" section 2020-04-13 09:06:45 +02:00
man-pages-5.11.Announce Start of man-pages-5.11: updating .Announce and .lsm files 2020-12-22 09:30:12 +01:00
man-pages-5.11.lsm Start of man-pages-5.11: updating .Announce and .lsm files 2020-12-22 09:30:12 +01:00

README

This package contains Linux man pages for sections 1 through 8.  Some
more information is given in the 'man-pages-x.y.Announce' file.

Homepage
========
For information about the Linux man-pages project, see
http://www.kernel.org/doc/man-pages/index.html.

Bug reports and contributing
============================
If you have corrections and additions to suggest, see
http://www.kernel.org/doc/man-pages/contributing.html
(Although there is a mirror of this repository on GitHub,
please don't report issues via the GitHub issue tracker!)

For further information on contributing, see the CONTRIBUTING file.

Installing and uninstalling
===========================
"make install" will copy these man pages to /usr/share/man/man[1-8].

To install to a path different from /usr, use
"make install prefix=/install/path".

"make remove" or "make uninstall" will remove any man page in this
distribution from its destination.  Use with caution, and remember to
use "prefix" if desired, as with the "install" target.

"make" or "make all" will perform "make uninstall" followed by "make
install".

Copyrights
==========
See the 'man-pages-x.y.Announce' file.