Linux |
CentOS 5.3 |
|
getnetgrent_r(3) |
setnetgrent, endnetgrent, getnetgrent, getnetgrent_r, innetgr − Gérer les entrées du groupe réseau |
#include <netdb.h> int setnetgrent(const char
*groupe_réseau); int getnetgrent_r(char **hôte, char **utilisateur, |
char **domaine, char *tampon, int longueur_tampon); |
int innetgr(const char *groupe_réseau, const char *hôte, |
const char *utilisateur, const char *domaine); |
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 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 enregistrent 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. |
/etc/netgroup |
Ces fonctions renvoient 1 si elles réussissent et 0 si elles échouent. |
Dans l’implémentation BSD, setnetgrent() renvoie void. |
sethostent(3), setservent(3), setprotoent(3) |
Ce document est une traduction réalisée par Alain Portal <aportal AT univ-montp2 DOT fr> le 12 mai 2006. L’équipe de traduction a fait le maximum pour réaliser une adaptation française de qualité. La version anglaise la plus à jour de ce document est toujours consultable via la commande : « LANG=en man 3 setnetgrent ». N’hésitez pas à signaler à l’auteur ou au traducteur, selon le cas, toute erreur dans cette page de manuel. |
getnetgrent_r(3) |