SETNETGRENT(3)

NOM
setnetgrent, endnetgrent, getnetgrent, getnetgrent_r, innetgr - Gérer les entrées du groupe réseau

SYNOPSIS
#include <netdb.h>
int setnetgrent(const char *netgroup);
void endnetgrent(void);
int getnetgrent(char **host, char **user, char **domain);
int getnetgrent_r(char **host, char **user,
                  char **domain, char *buf, int buflen);
int innetgr(const char *netgroup, const char *host,
            const char *user, const char *domain);

Exigences de macros de test de fonctionnalités pour la glibc (consultez feature_test_macros(7)) :

setnetgrent(), endnetgrent(), getnetgrent(), getnetgrent_r(), innetgr() : _BSD_SOURCE || _SVID_SOURCE

DESCRIPTION
Le groupe_réseau est une invention SunOS. Une base de données « groupe_réseau » est une liste de triplets de chaînes (nom_hôte, nom_utilisateur, nom_domaine) ou d'autres noms « groupe_réseau ». Chacun des éléments dans un triplet peut être vide, ce qui signifie que tout correspond. Les fonctions décrites ici permettent d'accéder aux bases de données « groupe_réseau ». Le fichier /etc/nsswitch.conf contient la base dans laquelle on effectue les recherches.

L'appel setnetgrent() définit le « groupe_réseau » dans lequel on cherchera par un appel getnetgrent() ultérieur. La fonction getnetgrent() trouve l'entrée « groupe_réseau » suivante et renvoie des pointeurs sur hôte, utilisateur, domaine. Un pointeur nul signifie que l'entrée correspondante ne concorde avec aucune chaîne. Les pointeurs sont valides tant qu'il n'y a pas d'appel à d'autres fonctions relatives au « groupe_réseau ». Pour éviter ce problème, vous pouvez utiliser la fonction GNU getnetgrent_r() qui enregistre les chaînes dans le tampon fourni. Pour libérer tous les tampons alloués, utilisez endnetgrent().

Dans la plupart des cas, vous voudrez seulement vérifier si le triplet (nom_hôte, nom_utilisateur, nom_domaine) est membre d'un groupe réseau. La fonction innetgr() peut être utilisée pour faire cela sans faire appel aux trois fonctions précédentes. De nouveau, un pointeur nul est un joker (Ndt : wildcard) et correspond à n'importe quelle chaîne. La fonction est sûre du point de vue des threads.

VALEUR RENVOYÉE
Ces fonctions renvoient 1 si elles réussissent et 0 si elles échouent.

FICHIERS
/etc/netgroup
/etc/nsswitch.conf

CONFORMITÉ
Ces fonctions ne sont pas dans POSIX.1-2001, mais setnetgrent(), endnetgrent(), getnetgrent() et innetgr() sont disponibles sur la plupart des systèmes UNIX. getnetgrent_r() n'est pas très répandu sur les autres systèmes.

NOTES
Dans l'implémentation BSD, setnetgrent() renvoie void.

VOIR AUSSI
sethostent(3), setprotoent(3), setservent(3)

COLOPHON
Cette page fait partie de la publication 3.40 du projet man-pages Linux. Une description du projet et des instructions pour signaler des anomalies peuvent être trouvées à l'adresse <URL:http://www.kernel.org/doc/man-pages/>.

TRADUCTION
Depuis 2010, cette traduction est maintenue à l'aide de l'outil po4a <URL:http://po4a.alioth.debian.org/> par l'équipe de traduction francophone au sein du projet perkamon <URL:http://perkamon.alioth.debian.org/>.

Alain Portal <URL:http://manpagesfr.free.fr/> (2006). Nicolas François et l'équipe francophone de traduction de Debian (2006-2009).

Veuillez signaler toute erreur de traduction en écrivant à <perkamon-fr@traduc.org>.

Vous pouvez toujours avoir accès à la version anglaise de ce document en utilisant la commande « LC_ALL=C man <section> <page_de_man> ».