2009-08-14 12 views
1

Est-ce que getpwnam respecte /etc/nsswitch.conf?Est-ce que getpwnam respecte /etc/nsswitch.conf?

Le manpage pour getpwnam états

La fonction renvoie un pointeur sur une structure contenant les brisées-out champs de l'enregistrement dans la base de données de mot de passe getpwnam() (par exemple, le fichier de mot de passe local/etc/passwd, NIS et LDAP) qui correspond au nom de l'utilisateur .

Cela me conduit à croire qu'il doit respecter /etc/nsswitch.conf, itérer sur ce que les entrées sont inscrites à la ligne passwd (... mais j'ai un rapport de bogue indiquant qu'il se comporte pas de cette façon) .

Edit: J'ai trouvé un 3c manpage qui indique qu'il ne respecte, donc maintenant la question est sous quels systèmes d'exploitation est-il pris en charge

Répondre

1

Il respecte /etc/nsswitch.conf sous chaque système d'exploitation conforme à POSIX.

2

Bien qu'il respectera habituellement /etc/nsswitch.conf (ou quel que soit le mécanisme de sélection de la base de données passwd le système d'exploitation supporte), sur certains systèmes cela ne fonctionne pas si l'application était liée statiquement. Cela est dû au fait que la bibliothèque de base de données appropriée est chargée dynamiquement dans le programme.

+0

La liaison statique est un bon point, mais pas applicable dans ma situation. –