Est-getpwnam_r () rentrants une exigence?
Question
getpwnam_r () est réentrant selon un certain nombre de pages de manuel. Cependant, standard uniquement état
La fonction getpwnam_r () sont les valeurs de threads et retourne dans un tampon fourni par l'utilisateur au lieu d'utiliser éventuellement une zone de données statiques qui peuvent être remplacées par chaque appel.
Je suis confus. Doit ... fonction getpwnam_r () rentrante d'un module NSS? Ou tout simplement thread-safe est suffisant?
La solution
Eh bien, comme vous le notez la norme exige que la fonction doit être thread-safe. Cela ne l'empêche pas une mise en œuvre de fournir une garantie plus stricte.
OIEau, logiciel portable ne peut pas supposer que getpwnam_r est rentrante. Mais, si vous ne vous préoccupez une plate-forme spécifique qui garantit que c'est rentrante, on peut supposer que vous pouvez supposer que.