diff options
author | Zeng Linggang <zenglg.jy@cn.fujitsu.com> | 2015-08-24 18:19:53 +0800 |
---|---|---|
committer | Michael Kerrisk <mtk.manpages@gmail.com> | 2015-09-11 12:06:23 +0200 |
commit | 557d7d9682f7a4dacc0847bfb1fc90db84e28ce2 (patch) | |
tree | 720dd774d290cffb4f6c971ce83a177a9bde6ead | |
parent | 1ec27c36ff06b4460e1fe83e60217ad7eb2f4f3d (diff) | |
download | man-pages-557d7d9682f7a4dacc0847bfb1fc90db84e28ce2.tar.gz |
getspnam.3: ATTRIBUTES: Note functions that are/aren't thread-safe
After research, We think
* getspnam(),
* getspent(),
* setspent(),
* endspent(),
* getspent_r(),
* fgetspent(),
* sgetspent(),
are not thread-safe. And
* putspent(),
* getspnam_r(),
* sgetspent_r(),
* lckpwdf(),
* ulckpwdf(),
* fgetspent_r(),
are thread-safe. But, there are not
markings of them in glibc document.
Signed-off-by: Zeng Linggang <zenglg.jy@cn.fujitsu.com>
Signed-off-by: Michael Kerrisk <mtk.manpages@gmail.com>
-rw-r--r-- | man3/getspnam.3 | 60 |
1 files changed, 60 insertions, 0 deletions
diff --git a/man3/getspnam.3 b/man3/getspnam.3 index 43ee61c3e7..9efd64370c 100644 --- a/man3/getspnam.3 +++ b/man3/getspnam.3 @@ -246,6 +246,66 @@ The include file defines the constant .B _PATH_SHADOW to the pathname of the shadow password file. +.SH ATTRIBUTES +For an explanation of the terms used in this section, see +.BR attributes (7). +.TS +allbox; +lbw25 lb lbw30 +l l l. +Interface Attribute Value +T{ +.BR getspnam () +T} Thread safety T{ +MT-Unsafe race:getspnam locale +T} +T{ +.BR getspent () +T} Thread safety T{ +MT-Unsafe race:getspent +.br +race:spentbuf locale +T} +T{ +.BR setspent (), +.BR endspent (), +.br +.BR getspent_r () +T} Thread safety T{ +MT-Unsafe race:getspent locale +T} +T{ +.BR fgetspent () +T} Thread safety MT-Unsafe race:fgetspent +T{ +.BR sgetspent () +T} Thread safety MT-Unsafe race:sgetspent +T{ +.BR putspent (), +.BR getspnam_r (), +.br +.BR sgetspent_r () +T} Thread safety MT-Safe locale +T{ +.BR lckpwdf (), +.BR ulckpwdf (), +.br +.BR fgetspent_r () +T} Thread safety MT-Safe +.TE + +In the above table, +.I getspent +in +.I race:getspent +signifies that if any of the functions +.BR setspent (3), +.BR getspent (3), +.BR getspent_r (3), +or +.BR endspent (3) +are used in parallel in different threads of a program, +then data races could occur. .SH CONFORMING TO The shadow password database and its associated API are not specified in POSIX.1. |