getgrnam.3: SYNOPSIS: Use 'restrict' in prototypes

POSIX does NOT specify these functions to use 'restrict'.
However, glibc uses 'restrict' in getgrnam_r(), getgrgid_r().
Users might be surprised by this!  Let's use it here too!

.../glibc$ grep_glibc_prototype getgrnam_r
grp/grp.h:148:
extern int getgrnam_r (const char *__restrict __name,
		       struct group *__restrict __resultbuf,
		       char *__restrict __buffer, size_t __buflen,
		       struct group **__restrict __result);
.../glibc$ grep_glibc_prototype getgrgid_r
grp/grp.h:140:
extern int getgrgid_r (__gid_t __gid, struct group *__restrict __resultbuf,
		       char *__restrict __buffer, size_t __buflen,
		       struct group **__restrict __result);
.../glibc$

Cc: glibc <libc-alpha@sourceware.org>
Cc: Ulrich Drepper <drepper@redhat.com>
Signed-off-by: Alejandro Colomar <alx.manpages@gmail.com>
Signed-off-by: Michael Kerrisk <mtk.manpages@gmail.com>
This commit is contained in:
Alejandro Colomar 2021-02-28 01:48:10 +01:00 committed by Michael Kerrisk
parent 61f75e878a
commit 2bebee6f60
1 changed files with 7 additions and 4 deletions

View File

@ -41,10 +41,13 @@ getgrnam, getgrnam_r, getgrgid, getgrgid_r \- get group file entry
.BI "struct group *getgrnam(const char *" name );
.BI "struct group *getgrgid(gid_t " gid );
.PP
.BI "int getgrnam_r(const char *" name ", struct group *" grp ,
.BI " char *" buf ", size_t " buflen ", struct group **" result );
.BI "int getgrgid_r(gid_t " gid ", struct group *" grp ,
.BI " char *" buf ", size_t " buflen ", struct group **" result );
.BI "int getgrnam_r(const char *restrict " name \
", struct group *restrict " grp ,
.BI " char *restrict " buf ", size_t " buflen ,
.BI " struct group **restrict " result );
.BI "int getgrgid_r(gid_t " gid ", struct group *restrict " grp ,
.BI " char *restrict " buf ", size_t " buflen ,
.BI " struct group **restrict " result );
.fi
.PP
.RS -4