zion -  ether_aton


Nom

ether_aton, ether_ntoa, ether_ntohost, ether_hosttonn, ether_line, ether_ntoa_r, ether_aton_r - Routines de manipulation d'adresses Ethernet.

Résumé

.nf #include <netinet/ether.h> char * ether_ntoa(const struct ether_addr * addr ); struct ether_addr * ether_aton(const char * asc ); int ether_ntohost(char * hostname , const struct ether_addr * addr ); int ether_hostton(const char * hostname , struct ether_addr * addr ); int ether_line(const char * line , struct ether_addr * addr , char * hostname ); /* extensions GNU */ char * ether_ntoa_r(const struct ether_addr * addr , char * buf ); struct ether_addr * ether_aton_r(const char * asc , struct ether_addr * addr ); .fi

Description

ether_aton() convertit une adresse d'hôte Ethernet sur 48-bits asc de la notation standard hexadécimal et séparateurs deux-points en données binaire dans l'ordre des octets du réseau et renvoie un pointeur dans un buffer alloué de manière statique, que les appels ultérieurs écraseront. ether_aton renvoie NULL si l'adresse est invalide.

La fonction ether_ntoa() convertit l'adresse d'hôte Etherne binaire addr dans l'ordre des octets du réseau en une chaîne dans la notation standard hexadécimal et deux-points, en omettant les zéros en tête. La chaîne est renvoyée dans un buffer alloué de manière statique, que les appels ultérieurs écraseront.

La fonction ether_ntohost() met en correspondance une adresse Ethernet en un nom d'hôte trouvé dans /etc/ethers et renvoie une valeur non-nulle si elle ne trouve pas.

La fonction ether_ntohost() met en correspondance un nom d'hôte et une adresse Ethernet dans /etc/ethers et renvoie une valeur non-nulle si elle ne trouve pas.

La fonction ether_line() examine une ligne dans le format de /etc/ethers (adresse Ethernet suivi de blancs et d'un nom d'hôte ; '#' introduit un commentaire) et renvoie une paire adresse / nom d'hôte, ou une valeur non-nulle si elle ne trouve pas. Le buffer pointé par hostname doit être assez grand, par exemple avoir la même longueur que la ligne line .

Les fonctions ether_ntoa_r et ether_aton_r sont des versions réentrantes et sûres en multi-threads de ether_ntoa et ether_aton respectivement, et n'utilisent pas de buffers statiques.

La structure ether_addr est définie dans net/ethernet.h ainsi :
     .nf .ta 8n 16n struct ether_addr { u_int8_t ether_addr_octet[6]; } .ta .fi


Bugs

L'implémentation de ether_line() dans la GlibC 2.2.5 est erronée.

Conformité

BSD 4.3, SunOS

Voir aussi

ethers (5)

Traduction

Christophe Blaess, 2003.

Poster un commentaire
Utilisateur
Mot de passe
 
Informaticien.be - © 2002-2024 AkretioSPRL  - Generated via Kelare
The Akretio Network: Akretio - Freedelity - KelCommerce - Votre publicité sur informaticien.be ?