Provided by:
manpages-fr-dev_3.27fr1.4-1_all 
NOM
getipnodebyname, getipnodebyaddr, freehostent - Obtenir les adresses
reseau et noms d'hote
SYNOPSIS
#include <sys/types.h>
#include <sys/socket.h>
#include <netdb.h>
struct hostent *getipnodebyname(const char *name, int af,
int flags, int *error_num);
struct hostent *getipnodebyaddr(const void *addr, size_t len,
int af, int *error_num);
void freehostent(struct hostent *ip);
DESCRIPTION
Ces fonctions sont deconseillees (et ne sont pas disponibles dans la
glibc). Utilisez getaddrinfo(3) et getnameinfo(3) a la place.
Les fonctions getipnodebyname() et getipnodebyaddr() renvoient le nom
et l'adresse reseau d'un hote. Ces fonctions renvoient un pointeur sur
une structure definie comme suit :
struct hostent {
char *h_name;
char **h_aliases;
int h_addrtype;
int h_length;
char **h_addr_list;
};
Ces fonctions remplacent les fonctions gethostbyname(3) et
gethostbyaddr(3) qui ne pouvaient qu'acceder aux adresses reseau de la
famille IPv4. Les fonctions getipnodebyname() et getipnodebyaddr()
peuvent fonctionner avec diverses familles d'adresses reseau.
Contrairement aux fonctions du type gethostby, ces routines renvoient
des pointeurs sur des zones de memoires allouees dynamiquement. La
fonction freehostent() sert a liberer la zone de memoire allouee
dynamiquement une fois que l'on n'a plus besoin des informations se
trouvant dans la structure hostent.
Param`etres de getipnodebyname()
La fonction getipnodebyname() recherche l'adresse reseau de l'hote
indique dans son argument name. Le parametre af prend l'une des valeurs
suivantes :
AF_INET
Le parametre name represente une adresse decimale pointee IPv4,
ou le nom d'un hote sur un reseau IPv4.
AF_INET6
Le parametre name represente une adresse hexadecimale IPv6, ou
le nom d'un hote sur un reseau IPv6.
Le parametre flags indique des options supplementaires. Plusieurs
options peuvent etre indiquees en les groupant avec un OU binaire.
flags doit etre mis a 0 si aucune option n'est souhaitee.
AI_V4MAPPED
Cet attribut est utilise avec AF_INET6 pour demander de
rechercher une adresse IPv4 plutot qu'une IPv6. L'adresse IPv4
devra toutefois etre projetee dans l'espace IPv6.
AI_ALL Cet attribut est utilise avec AI_V4MAPPED pour demander une
recherche simultanee d'adresses IPv4 et IPv6. Toute adresse IPv4
trouvee sera projetee dans l'espace IPv6.
AI_ADDRCONFIG
Cet attribut est utilise avec AF_INET6 pour indiquer que les
requetes ulterieures d'adresses IPv6 n'auront pas lieu a moins
que le systeme n'ait au moins une adresse IPv6 affectee a une
interface reseau. Symetriquement, les requetes d'adresses IPv4
n'auront lieu que si le systeme dispose au moins d'une adresse
IPv4 affectee a une interface reseau. Cet attribut peut etre
utilise seul ou avec AI_V4MAPPED.
AI_DEFAULT
Cet attribut est equivalent a (AI_ADDRCONFIG | AI_V4MAPPED).
Param`etres de getipnodebyaddr()
La fonction getipnodebyaddr() recherche le nom d'un hote dont l'adresse
reseau est indiquee par l'argument addr. Le parametre af prend l'une
des valeurs suivantes :
AF_INET
Le parametre addr pointe vers une structure struct in_addr et
len doit valoir sizeof(struct in_addr).
AF_INET6
Le parametre addr pointe vers une structure struct in6_addr et
len doit valoir sizeof(struct in6_addr).
VALEUR RENVOY'EE
En cas d'erreur, un pointeur NULL est renvoye, et error_num contiendra
un code d'erreur parmi les suivants :
HOST_NOT_FOUND
Le nom d'hote ou l'adresse reseau n'ont pas ete trouves.
NO_ADDRESS
Le serveur de noms reconnait l'adresse reseau ou le nom, mais
n'a pas fourni de reponse. Ceci peut se produire si l'hote n'a
que des adresses IPv4, et qu'on a demande uniquement des
informations IPv6, ou l'inverse.
NO_RECOVERY
Le serveur de noms a renvoye une erreur definitive.
TRY_AGAIN
Le serveur de noms a renvoye une erreur temporaire. Reessayez
plus tard.
Une recherche couronnee de succes renvoie un pointeur sur une structure
hostent contenant les champs suivants :
h_name Nom officiel de l'hote.
h_aliases
Table de pointeurs vers des alias non officiels du meme hote. La
table est terminee par un pointeur NULL.
h_addrtype
Il s'agit d'une copie du parametre af de getipnodebyname() ou
getipnodebyaddr(). h_addrtype sera toujours AF_INET si le
parametre af etait AF_INET. h_addrtype sera toujours AF_INET6 si
le parametre af etait AF_INET6.
h_length
Ce champ sera defini a sizeof(struct in_addr) si h_addrtype est
AF_INET, et sizeof(struct in6_addr) si h_addrtype vaut AF_INET6.
h_addr_list
Il s'agit d'une table de pointeurs vers les structures d'adresse
de l'hote. La table est terminee par un pointeur NULL.
CONFORMIT'E
RFC 2553
NOTES
Ces fonctions etaient presentes dans la glibc 2.1.91-95, mais en ont
ete retirees. Plusieurs systemes de type Unix les supportent, mais tous
les considerent comme deconseillees.
VOIR AUSSI
getaddrinfo(3), getnameinfo(3), inet_ntop(3), inet_pton(3)
COLOPHON
Cette page fait partie de la publication 3.27 du projet man-pages
Linux. Une description du projet et des instructions pour signaler des
anomalies peuvent etre trouvees a l'adresse
<URL:http://www.kernel.org/doc/man-pages/>.
TRADUCTION
Depuis 2010, cette traduction est maintenue a l'aide de l'outil po4a
<URL:http://po4a.alioth.debian.org/> par l'equipe de traduction
francophone au sein du projet perkamon
<URL:http://perkamon.alioth.debian.org/>.
Christophe Blaess <URL:http://www.blaess.fr/christophe/> (1996-2003),
Alain Portal <URL:http://manpagesfr.free.fr/> (2003-2006). Florentin
Duneau et l'equipe francophone de traduction de Debian (2006-2009).
Veuillez signaler toute erreur de traduction en ecrivant a
<debian-l10n-french@lists.debian.org> ou par un rapport de bogue sur le
paquet manpages-fr.
Vous pouvez toujours avoir acces a la version anglaise de ce document
en utilisant la commande << man -L C <section> <page_de_man> >>.