Mercurial > hg > octave-lojdl > gnulib-hg
view doc/posix-functions/getpwuid_r.texi @ 17421:ce63398f847f
getgroups: document portability issues
Because I actually managed to hit deadlock in libvirt's child
process due to glibc's mutex use in user database lookup, I
figured it is worth documenting the issue for others to be
aware of when writing a privileged multithreaded parent app
that spawns child processes owned by non-privileged ids.
* doc/glibc-functions/initgroups.texi (initgroups): Mention
multithread safety.
* doc/posix-functions/getpwuid.texi (getpwuid): Likewise.
* doc/posix-functions/getpwuid_r.texi (getpwuid_r): Likewise.
* doc/glibc-functions/getgrouplist.texi (getgrouplist): Mention
getugroups.
* doc/posix-functions/getgroups.texi (getgroups): Mention
multithread safety and mgetgroups.
Signed-off-by: Eric Blake <eblake@redhat.com>
author | Eric Blake <eblake@redhat.com> |
---|---|
date | Wed, 22 May 2013 14:21:36 -0600 |
parents | da62858ef2f6 |
children |
line wrap: on
line source
@node getpwuid_r @section @code{getpwuid_r} @findex getpwuid_r POSIX specification:@* @url{http://www.opengroup.org/onlinepubs/9699919799/functions/getpwuid_r.html} Gnulib module: extensions Portability problems fixed by Gnulib: @itemize @item This function has an incompatible declaration on some platforms: Solaris 11 2011-11 (when @code{_POSIX_PTHREAD_SEMANTICS} is not defined). @end itemize Portability problems not fixed by Gnulib: @itemize @item This function is unsafe to call between @code{fork} and @code{exec} if the parent process is multi-threaded. Use it prior to forking. @item This function is missing on some platforms: OpenBSD 3.8, Minix 3.1.8, mingw, MSVC 9, BeOS. @end itemize