[Actualités]
La Xbox Helix finalement sans Steam
[Actualités]
Samsung prévoit une pénurie de stockage encore plus importante en 2027.
[Actualités]
Amazon permet de partager votre abonnement Prime gratuit avec quelqu'un d'autre.
[Actualités]
Gemini gère les commentaires sur Google Docs : résume, répond et suggère des...
[Actualités]
Intel Nova Lake pourrait intégrer un iGPU extrêmement puissant
[Actualités]
La Finlande va couper les liaisons de fibre optique russes vers l'Europe
[Actualités]
Test Assassin's Creed Black Flag Resynced (PS5) - Un remake du jeu de 2013
[Actualités]
La confusion autour de l'activation de Windows 11 est due à un malentendu. Nouv...
[Actualités]
L'Europe veut interdire les bannières de cookies
[Actualités]
Waymo : plus sûr que les conducteurs humains ? 68 % d'accidents graves en moins
[Articles]
Fool Night tome 11
[Articles]
Assassin's Creed Black Flag Resynced
[Articles]
Sakamoto Days tome 22
[Articles]
Red Titans
[Articles]
Gung Ho - Tanaka
[Articles]
Tiny Bookshop
[Articles]
Now That We Draw tome 2
[Articles]
Les Tortues Ninja - TMNT : Armageddon Game : Ouverture & Alliance
[Articles]
COSMOS tome 1
[Articles]
Escape the Backrooms
Se connecter
Se connecter
Inscription
Mot de passe perdu
Connexion
Actualités
Lettre d'information
Proposer une actualité
Archives
Actualités
Articles
Programmation
Press Release
Matériel
Logiciels
Livres
Interviews
Derniers commentaires
Jeux Vidéos
XBox One
XBox 360
Wii U
PSP
PS4
PS3
PC
DS
GameCube
3DS
Forum
Derniers messages
Informatique
Fun
Divers
Logithèque
Blogs
Divers
A Propos
Annonceurs
Contact
Recherche
RSS
Se connecter
Se connecter
Inscription
Mot de passe perdu
Connexion
Editer un article
Titre
Mots Clés
Texte
[size=18] [b]Nom[/b] [/size] getipnodebyname, getipnodebyaddr, freehostent - Obtenir les adresses réseau et noms d'hôte. [size=18] [b]Résumé[/b] [/size] .nf [b]#include
[/b] [b]#include
[/b] [b]#include
[/b] [b][i]struct hostent * getipnodebyname (const char * name ,[/i][/b] [b][i] int af , int flags ,[/i][/b] [b][i] int * error_num );[/i][/b] [b][i]struct hostent * igetipnodebyaddr (const void * addr ,[/i][/b] [b][i] size_t len , int af ,[/i][/b] [b][i] int flags , int * error_num );[/i][/b] [b][i]void freehostent (struct hostent * ip );[/i][/b] .fi [size=18] [b]Description[/b] [/size] Ces fonctions sont déconseillées. Utilisez [b]getaddrinfo (3)[/b] et [b]getnameinfo (2)[/b] à leur place. Les fonctions [b]getipnodebyname (3)[/b] et [b]getipnodebyaddr (3)[/b] renvoient le nom et l'adresse réseau d'un hôte. Ces fonctions renvoient un pointeur sur une structure définie comme suit : .nf [b]struct hostent {[/b] [b][i] char * h_name ;[/i][/b] [b][i] char ** h_aliases ;[/i][/b] [b][i] int h_addrtype ;[/i][/b] [b][i] int h_length ;[/i][/b] [b][i] char ** h_addr_list ;[/i][/b] [b][i]};[/i][/b] .fi Ces fonctions remplacent les fonctions [b]gethostbyname (3)[/b] et [b]gethostbyaddr (3)[/b] qui ne pouvaient qu'accéder aux adresses réseau de la famille IPv4. Les fonctions [b]getipnodebyname (3)[/b] et [b]getipnodebyaddr (3)[/b] peuvent fonctionner avec diverses familles d'adresses réseau. Contrairement aux fonctions du type [b]gethostby ,[/b] Ces routines renvoient des pointeurs sur des zones de mémoires allouées dynamiquement. La fonction [b]freehostent (3)[/b] sert à libérer la zone de mémoire allouée dynamiquement une fois que l'on n'a plus besoin des informations se trouvant dans la structure [b]hostent .[/b] [b]Arguments de getipnodebyname[/b] La fonction [b]getipnodebyname (3)[/b] recherche l'adresse réseau de l'hôte indiqué dans son argument [b]name .[/b] L'argument [i]af[/i] prend l'une des valeurs suivantes : [b]AF_INET[/b] [table][row][col] [/col][col]Le paramètre [i]name[/i] représente une adresse décimale pointée IPv4, ou le nom d'un hôte sur un réseau IPv4.[/col][/row][/table] [b]AF_INET6[/b] [table][row][col] [/col][col]Le paramètre [i]name[/i] représente une adresse hexadécimale IPv6, ou le nom d'un hôte sur un réseau IPv6.[/col][/row][/table] L'argument [i]flags[/i] indique des options supplémentaires. Plusieurs options peuvent être indiquées en les regroupant par un OU binaire. [i]flags[/i] doit être mis à 0 si aucune option n'est désirée. [b]AI_V4MAPPED[/b] [table][row][col] [/col][col]Cet attribut est utilisé avec [b]AF_INET6[/b] pour demander de rechercher une adresse IPv4 plutôt qu'une IPv6. L'adresse IPv4 devra toutefois être projetée dans l'espace IPv6.[/col][/row][/table] [b]AI_ALL[/b] [table][row][col] [/col][col]Cet attribut est utilisé avec [b]AI_V4MAPPED[/b] pour demander une recherche simultanée d'adresses IPv4 et IPv6. Toute adresse IPv4 trouvée sera projetée dans l'espace IPv6.[/col][/row][/table] [b]AI_ADDRCONFIG[/b] [table][row][col] [/col][col]Cet attribut est utilisé avec [b]AF_INET6[/b] pour indiquer que les requêtes ultérieures d'adresses IPv6 n'auront pas lieu à moins que le système n'ait au moins une adresse IPv6 affectée à une interface réseau. Symétriquement, les requêtes d'adresses IPv4 n'auront lieu que si le système dispose au mons d'une adresse IPv4 affectée à une interface réseau. Cet attribut peut être utilisé seul ou avec [b]AI_V4MAPPED .[/b][/col][/row][/table] [b]AI_ALL[/b] [table][row][col] [/col][col]Cet attribut est équivalent à [b](AI_ADDRCONFIG | AI_V4MAPPED) .[/b][/col][/row][/table] [b]Arguments de getipnodebyaddr[/b] La fonction [b]getipnodebyaddr (3)[/b] recherche le nom d'un hôte dont l'adresse réseau est indiquée par l'argument [b]addr .[/b] L'argument [i]af[/i] prend l'une des valeurs suivantes : [b]AF_INET[/b] [table][row][col] [/col][col]L'argument [i]addr[/i] pointe vers une structure [b]struct in_addr[/b] et [i]len[/i] doit valoir [b]sizeof(struct in_addr) .[/b][/col][/row][/table] [b]AF_INET6[/b] [table][row][col] [/col][col]L'argument [i]addr[/i] pointe vers une structure [b]struct in6_addr[/b] et [i]len[/i] doit valoir [b]sizeof(struct in6_addr) .[/b][/col][/row][/table] [size=18] [b]Valeur renvoyée[/b] [/size] En cas d'erreur, un pointeur NULL est renvoyé, et [i]error_num[/i] contiendra un code d'erreur parmi les suivants : [b]HOST_NOT_FOUND[/b] [table][row][col] [/col][col]Le nom d'hôte ou l'adresse réseau n'ont pas été trouvés.[/col][/row][/table] [b]NO_ADDRESS[/b] [table][row][col] [/col][col]Le serveur de noms reconnait l'adresse réseau ou le nom, mais n'a pas fourni de réponse. Ceci peut se produire si l'hôte n'a que des adresse IPv4, et qu'on a demandé uniquement des informations IPv6, ou l'inverse.[/col][/row][/table] [b]NO_RECOVERY[/b] [table][row][col] [/col][col]Le serveur de noms a renvoyé une erreur définitive.[/col][/row][/table] [b]TRY_AGAIN[/b] [table][row][col] [/col][col]Le serveur de noms a renvoyé une erreur temporaire. Réessayez plus tard.[/col][/row][/table] Une recherche couronnée de succès renvoie un pointeur sur une structure [b]hostent[/b] contenant les champs suivants : [b]h_name[/b] [table][row][col] [/col][col]Nom officiel de l'hôte.[/col][/row][/table] [b]h_aliases[/b] [table][row][col] [/col][col]Table de pointeurs vers des alias non-officiels du même hôte. La table est terminée par un pointeur NULL.[/col][/row][/table] [b]h_addrtype[/b] [table][row][col] [/col][col]Il s'agit d'une copie de l'argument [i]af[/i] de [b]getipnodebyname (3)[/b] ou [b]getipnodebyaddr (3).[/b] [i]h_addrtype[/i] sera toujours [b]AF_INET[/b] si l'argument [i]af[/i] était [b]AF_INET .[/b] [i]h_addrtype[/i] sera toujours [b]AF_INET6[/b] si l'argument [i]af[/i] était [b]AF_INET6 .[/b][/col][/row][/table] [b]h_length[/b] [table][row][col] [/col][col]Ce champ contiendra la longueur [b]sizeof(struct in_addr)[/b] si [i]h_addrtype[/i] est AF_INET, et [b]sizeof(struct in6_addr)[/b] si [i]h_addrtype[/i] vaut AF_INET6.[/col][/row][/table] [b]h_addr_list[/b] [table][row][col] [/col][col]Il s'agit d'une table de pointeurs vers les structures d'adresse de l'hôte. La table est terminée par un pointeur NULL.[/col][/row][/table] [size=18] [b]Notes[/b] [/size] Ces fonctions étaient présentes dans la GlibC 2.1.91-95, mais en ont été retirées. Plusieurs systèmes de type Unix les supportent, mais tous les considèrent comme déconseillées. [size=18] [b]Conformité[/b] [/size] RFC 2553 [size=18] [b]Voir aussi[/b] [/size] [b]getaddrinfo (3),[/b] [b]getnameinfo (3),[/b] [b]inet_ntop (3),[/b] [b]inet_pton (3)[/b] [size=18] [b]Traduction[/b] [/size] Christophe Blaess, 2000-2003.
Fichier
Newsletter
Recevez les dernières actualités tech directement dans votre boîte mail.
S'inscrire
Forum
-
Derniers messages
Réseaux et Télécom
Edpnet
Bavardages
Séries TV, vous regardez quoi?
Bavardages
Aujourd'hui, je rénove ou je construis ^^
Informations
Besoin d’avis sur l’UX de mon mini-projet web (et plus globalement sur ce qui vous rebute sur un site) ?
Software
problème sur windows 10
Réseaux et Télécom
Problème wifi (POE)
Software
Postfix - Need help
Bavardages
Oh râge oh désespoir !
Programmation
Enregistrement client et envoi mail
Software
SÉCURITÉ MACBOOK
Actualités
-
Archives
Consoles
30-07
La Xbox Helix finalement sans Steam
Matériel
30-07
Samsung prévoit une pénurie de stockage encore plus importante en 2027.
Vidéo
30-07
Amazon permet de partager votre abonnement Prime gratuit avec quelqu'un d'autre.
Google
30-07
Gemini gère les commentaires sur Google Docs : résume, répond et suggère des modifications.
Intel
30-07
Intel Nova Lake pourrait intégrer un iGPU extrêmement puissant
Ada
CSS
Cobol
CPP
HTML
Fortran
Java
JavaScript
Pascal
Perl
PHP
Python
SQL
VB
XML
Anon URL
DailyMotion
eBay
Flickr
FLV
Google Video
Google Maps
Metacafe
MP3
SeeqPod
Veoh
Yahoo Video
YouTube
6px
8px
10px
12px
14px
16px
18px
Informaticien.be
- © 2002-2026
Akretio
SRL - Generated via
Kelare
Haut de page